Administrative console and naming service authorization

WebSphere Application Server extends the Java 2 Platform, Enterprise Edition (J2EE) security role-based access control to protect the product administrative and naming subsystems.

Administrative console

Four administrative roles are defined to provide the degrees of authority that are needed to perform certain WebSphere Application Server administrative functions from either the administrative console or the system management scripting interface called wsadmin. The authorization policy is only enforced when global security is enabled. The following table describes the administrative roles:

Table 1. Administrative roles that are available through the administrative console and wsadmin
Role Description
Monitor An individual or group that uses the monitor role has the least amount of privileges. A monitor can complete the following tasks:
  • View the WebSphere Application Server configuration.
  • View the current state of the Application Server.
Configurator An individual or group that uses the configurator role has the monitor privilege plus the ability to change the WebSphere Application Server configuration. The configurator can perform all the day-to-day configuration tasks. For example, a configurator can complete the following tasks:
  • Create a resource.
  • Map an application server.
  • Install and uninstall an application.
  • Deploy an application.
  • Assign users and groups-to-role mapping for applications.
  • Set up Java 2 security permissions for applications.
  • Customize the Common Secure Interoperability Version 2 (CSIv2), Secure Authentication Service (SAS), and Secure Sockets Layer (SSL) configurations.
Operator An individual or group that uses the operator role has monitor privileges plus ability to change the runtime state. For example, an operator can complete the following tasks:
  • Stop and start the server.
  • Monitor the server status in the administrative console.
Administrator An individual or group that uses the administrator role has the operator and configurator privileges plus additional privileges that are granted solely to the administrator role. For example, an administrator can complete the following tasks:
  • Modify the server user ID and password.
  • Configure authentication and authorization mechanisms.
  • Enable or disable global security.
    Note: In previous releases of WebSphere Application Server, the Enable administrative security option is known as the Enable global security option.
  • Change the Lightweight Third Party Authentication (LTPA) password and generate keys.
Note: An administrator cannot map users and groups to the administrator roles.

When global security is enabled, the administrative subsystem role-based access control is enforced. The administrative subsystem includes the security server, the administrative console, the wsadmin scripting tool, and all the Java Management Extensions (JMX) MBeans. When administrative security is enabled, both the administrative console and the administrative scripting tool require users to provide the required authentication data. Moreover, the administrative console is designed so the control functions that display on the pages are adjusted, according to the security roles that a user has. For example, a user who has only the monitor role can see only the non-sensitive configuration data. A user with the operator role can change the system state.

When you are changing registries, make sure you remove the information that pertains to the previously configured registry for console users and console groups.

WebSphere Application Server for z/OS security customization dialogs prime the administrative subsystem to accept the MVS identities of all the started WebSphere Application Server system tasks (for example, controllers, servants, and so on) as WebSphere administrators and the configured administrator identity. If a federated repository, a standalone Lightweight Directory Access Protocol (LDAP) registry, or a standalone custom registry is specified, the configured server identities are used for work that is run by the system instead of for work that is run by the started task identities.

SAF authorization for administrative roles: The value of the com.ibm.security.SAF.authorization setting controls whether SAF EJBROLE profiles or the console settings are used to control access to administration profiles rather than the console users. When property, com.ibm.security.SAF.authorization, is set to true, SAF authorization is selected and SAF EJBROLE profiles are used to control access to administrative roles.
Note: With System Authorization Facility (SAF) authorization any values in the console users and console groups are ignored.
WebSphere authorization for administrative roles: If WebSphere Application Server authorization rather than SAF authorization is used to restrict access to Java 2 Platform, Enterprise Edition (J2EE) roles, WebSphere Application Server for z/OS automatically maps the server identity that is specified when enabling global security to the administrative role. When global security is enabled, WebSphere Application Servers on z/OS runs under the server identity that is defined under the active user registry configuration. Although it is not shown on the administrative console and in other tools, a special Server subject is mapped to the administrator role.
  • The WebSphere Application Server run-time code, which runs under the server identity, requires authorization for some run-time operations. You can either explicitly enter the server identity and password or the identity can be auto-generated. In the former case, the server identity is a valid user in the registry. In the latter case, use the internalServerId feature to generate a server identity automatically. The configuration panel for each user registry enables you to make this choice. For an internalServerId, enter the administrator ID or adminID in the Primary administrative user name field. This adminID is a valid user in the registry, and the password for this ID is not required and is not saved in the configuration. See "Internal server ID" in the section below.
  • If no explicit users or groups are assigned to administrative roles, you can log into the administrative console or to the wsadmin scripting tool using the server identity or adminID when using the internalServerId feature to perform administrative operations and to assign other users or groups to administrative roles. This is possible because the server identity (or the adminID) is assigned automatically to the adminsecuritymanager role. Only the users/groups associated with the adminsecuritymanager can manage the users/groups to all administrative roles. Once you login using the server identity (or adminID), the administrative security policy allows you to perform the operations such as:
    • Change server ID and server password
    • Enable or disable WebSphere Application Server global security
    • Enforce or disable Java 2 Security
    • Change the LTPA password or generate keys
  • When SAF authorization is not being used, a special configuration is not required to enable the server identity as specified when enabling global security for administrative use because the server identity is automatically mapped to the administrator role. You can add or remove users and groups to or from the administrative roles from the WebSphere Application Server administrative console. A best practice is to map a group, rather than specific users, to administrative roles because this approach is more flexible and easier to administer. By mapping a group to an administrative role, adding or removing users to or from the group occurs outside of WebSphere Application Server and does not require a server restart for the change to take effect.

When enabling security, you can assign one or more users and groups to naming roles. For more information, see Assigning users to naming roles. However, before assigning users to naming roles, configure the active user registry. User and group validation depends on the active user registry. For more information, see Configuring user registries.

Special subject

In addition to mapping users or groups, you can map a special-subject to the administrative roles. A special-subject is a generalization of a particular class of users. The AllAuthenticated special subject means that the access check of the administrative role ensures that the user making the request is at least authenticated. The Everyone special subject means that anyone, authenticated or not, can perform the action as if security is not enabled.

Naming service authorization

CosNaming security offers increased granularity of security control over CosNaming functions. CosNaming functions are available on CosNaming servers such as the WebSphere Application Server. These functions affect the content of the WebSphere Application Server name space. Generally, you have two ways in which client programs result in CosNaming calls. The first is through the Java Naming and Directory Interface (JNDI) call. The second is with common object request broker architecture (CORBA) clients invoking CosNaming methods directly.

Four security roles are introduced :
  • CosNamingRead
  • CosNamingWrite
  • CosNamingCreate
  • CosNamingDelete
The roles have authority levels from low to high:
CosNamingRead
You can query the WebSphere Application Server name space, using, for example, the JNDI lookup method. The special-subject, Everyone, is the default policy for this role.
CosNamingWrite
You can perform write operations such as JNDI bind, rebind, or unbind, and CosNamingRead operations. As a default policy, Subjects are not assigned this role.
CosNamingCreate
You can create new objects in the name space through such operations as JNDI createSubcontext and CosNamingWrite operations. As a default policy, Subjects are not assigned this role.
CosNamingDelete
You can destroy objects in the name space, for example using the JNDI destroySubcontext method and CosNamingCreate operations. As a default policy, Subjects are not assigned this role.

When you configure a local OS user registry with WebSphere Application Server for z/OS, factors require some additional considerations. Refer to Selecting a user registry and Configuring local operating system user registries for more information. If you specify an LDAP or a custom registry, you must remove local OS customization by deleting the preconfigured WebSphere Application Server configuration group and administrator identity from the console group and delete the console users.

A Server special-subject is assigned to all of the four CosNaming roles by default. The Server special-subject provides a WebSphere Application Server process, which runs under the server identity, to access all the CosNaming operations. The Server special-subject does not display and cannot be modified through the administrative console or other administrative tools.

Special configuration is not required to enable the server identity as specified when enabling global security for administrative use because the server identity is automatically mapped to the administrator role.

Configuration is not required to enable the server identity (as specified) when enablingglobal security for administrative use because the server identity is automatically mapped to the administrator role. Users, groups, or the special subjects AllAuthenticated and Everyone can be added or removed to or from the naming roles from the WebSphere Application Server administrative console at any time. However, a server restart is required for the changes to take effect. When SAF Authorization is chosen, a server restart is not needed to authorize additional users or groups.

A best practice is to map groups or one of the special-subjects, rather than specific users, to naming roles because it is more flexible and easier to administer in the long run. By mapping a group to a naming role, adding or removing users to or from the group occurs outside of WebSphere Application Server and does not require a server restart for the change to take effect.

The CosNaming authorization policy is only enforced when global security is enabled. When global security is enabled, attempts to do CosNaming operations without the proper role assignment result in an org.omg.CORBA.NO_PERMISSION exception from the CosNaming server.

Although the ability exists to greatly restrict access to the name space by changing the default policy, unexpected org.omg.CORBA.NO_PERMISSION exceptions can occur at runtime. Typically, J2EE applications access the name space and the identity they use is that of the user that authenticated to WebSphere Application Server when accessing the J2EE application. Unless the J2EE application provider clearly communicates the expected naming roles, use caution when changing the default naming authorization policy.




Related concepts
Authorization technology
Related tasks
Assigning users to naming roles
Selecting a user registry
Controlling access to console users when using a Local OS Registry
Concept topic    

Terms of Use | Feedback

Last updated: Sep 20, 2010 10:03:57 PM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=vela&product=was-nd-zos&topic=csecadminconsole
File name: csec_adminconsole.html