Roles
Roles provide permissions for user to perform specific operations on resources.For example, Editor is a role that lets users view, modify, and create resources. Roles are denoted as Role@Resource; for example, Editor@Portal Page.
Roles are organized in a hierarchy. Roles are organized in a hierarchy. Roles that are higher in the hierarchy generally include the permissions of roles that are lower in the role hierarchy.
For example, to install Web modules the Editor role on the virtual resource Web Modules, Editor@Web Modules, is the minimum role assignment for this operation. The Manager role is higher in the hierarchy than the Editor role. For this reason, the Manager role includes the permissions of the Editor role. Manager@Web Modules also allows users to install Web modules.
The following table describes the different allowed actions for roles:
Role Allowed Actions Administrator Unrestricted access on resources. This includes creating, configuring, and deleting resources. Administrators can also change the access control settings on resource; in other words grant other people access to those resources. Security Administrator Create and delete role assignments on resources. Being assigned Security Administrator role at some resource means that the user shall be allowed to act as a delegated administrator for that resource, in other words the Security Administrator on a resource is allowed to delegate a subset of their privileges on the resource to other people according to the Delegated Administration Policy topic. For example, a user who is assigned Security Administrator and Editor role on a resource can assign this Editor role to other people provided he has Delegator role on those people. Having the Security Administrator role on a resource alone does not give view or edit access to the resource.
Delegator Assigning the Delegator role to principals (users and groups) allows roles to be granted to them. Having the Delegator role on other resources, such as specific portlets, is not useful. The set of roles that can be granted to those principals is defined through the Security Administrator and Administrator roles. For example a user has a Delegator role on the SalesTeam user group but no Delegator role on the Managers user group, so this user can grant roles only to the SalesTeam or individual members of the SalesTeam user group but not to the Managers user group. Having the Delegator role on a resource does not give direct access to the resource. The purpose of the Delegator role is to allow the granting of roles to users or groups, so assigning Delegator role on resources or resource types that are not users or user groups will not grant those users additional privileges.
Can Run as User (user impersonation) After enabling the Impersonation feature, we can assign a user the Can Run as User role, which allows them to view pages, portlets, and other portal components as another user. Support specialists can use this role to troubleshoot. Manager Create new resources and configuring and deleting existing resources used by multiple users. Editor Create new resources and configuring existing resources used by multiple users. Markup Editor Change the HTML source for static portal pages. Contributor Viewing portal content and creating new resources. The Contributor role does not include the permission to edit resources. It only allows us to create new resources. For example, a user is granted the Contributor role on the Template Category Teamspaces. The user will not be able to modify the category itself but can create new templates in this category.
This role is only available for the following resources:
- Application Templates
- Application Template Categories
- Application Template Root
- Policies
- All IBM Web Content Manager related documents
Privileged user View portal content, customize portlets and pages, and create new private pages. User View portal content. For example, viewing a specific page.
No role assigned Cannot interact with resource.
Application Roles
There is a higher level concept of roles called application roles. Application roles are identified by a unique name and can contain an arbitrary set of other roles (an example is Editor@Market News page and Editor@Market News portlet). This makes it possible to use application roles to bundle cohesive allowed actions, simplifying access control administration. Application roles with the same name in different database domains are correlated, so it is possible to aggregate roles from different database domains within one application role.
Inheritance
Resources are part of a hierarchy. By default, each resource in the hierarchy inherits the role assignments of its parent resource. This inheritance reduces the administration overhead. When you assign a group to a role on a parent resource, the group automatically acquirethat same set of allowed actions for all child resources.For example, suppose that a user, Mary, is a member of the Sales group. We can give Mary Editor access to the Market News Page and all pages underneath this page by granting the Editor@Market News Page role to the Sales group. All members of the Sales group implicitly acquire the Editor@Market News Page role. All members of the Sales group will also inherit the Editor role on all pages that are beneath the Market News page in the resource hierarchy. So, members of the Sales group automatically inherit the role Editor@USA Market News Page.
Inheritance through the resource hierarchy can be blocked at any level to provide more granular access control.
Role Assignments
Roles are assigned to users and groups that are contained in the user registry. Roles can be assigned by someone with the necessary authorization, such as the portal administrator, in any of three ways:
- Explicitly assigned to an individual user
- Implicitly assigned through group membership. If a group has a role, all members of the group automatically acquire the role. Nested groups (groups that are members of another group) inherit role assignments from their parent groups.
- Inherited through a role assignment on a parent resource. By default, roles on a resource automatically apply to all children on that resource unless role blocks are used.
Users and groups can have multiple roles on the same resource.For example, a user might have both the Editor and Manager roles on a particular page. One of these roles might be inherited through the resource hierarchy and the other might be explicitly assigned. If two roles in the same hierarchy are assigned for a user for the same resource, the higher role takes precedence.
For example, if a user has both the Manager role and the Editor role on a specific resource, the Manager role takes precedence over the Editor role.
Assign roles to individual users only in exceptional cases. Assigning roles to user groups and managing effective user privileges by adding to or removing users from those groups reduces the number of role mappings and simplifies maintenance.
Ownership
Each resource can have a dedicated owner. The resource owner can be a single user or a single user group. When a user creates a new resource, such as a page, the user automatically becomes the initial owner on that resource. For non-private resources, which are resources accessible by those people having been granted access to the resource, ownership provides the same set of allowed actions as the Manager role. For private resources, which are resources accessible only by the owner of the resource, ownership provides the same set of allowed actions as the Privileged User role plus the allowance to delete the resource. So in the case of both non-private and private resources, these allowed actions include the ability to delete the resource.Private resources can only be owned by users, not by user groups. It is not possible to define roles on private resources, and resource ownership cannot be inherited.
We can use xmlaccess.sh or the Resource Permissions portlet to change the owner of a resource.
Private pages
A private page can be accessed only by its owner. Privileged Users (users assigned the Privileged User role) can explicitly create new private pages that are accessible only by themselves. Additionally, a Privileged User on a non-private page can personalize the page and create new private pages underneath it. Customizing a non-private page usually creates a private copy of the corresponding non-private page. Any changes that a Privileged User makes to a non-private page are not accessible by other users.
Private pages cannot be controlled by an external security manager. Access control for private pages is always internally controlled by WebSphere Portal.
Traversal support
Users with role assignments on the resources Page or URL Mapping do get the implicit permission to navigate to those resources. These users are guaranteed the ability to navigate through all parent resources of those resources. Users only see the title of those resources, while the corresponding resource content (for example the portlets on the page) remains inaccessible unless those users have further role assignments granting them normal access to those resources.
Parent: Resources, roles, access rights, and initial access control settings
Related reference:
Delegated Access Control Administration