Class RoleType

  • All Implemented Interfaces:
    Containerable, Freezable, com.evolveum.midpoint.prism.impl.binding.ContainerablePrismBinding, JaxbVisitable, Objectable, DebugDumpable, Serializable

    public class RoleType
    extends AbstractRoleType
    implements Objectable
    A role in the extended Role-Based Access Control (RBAC) sense. The roles specify privileges that the user (or other object) should have. The role may "grant" accounts on resources, attributes and entitlements for such accounts. The role can also assign organizational units, other roles or various IDM objects that can be assigned directly to user. From this point of view the role is in fact just a named set of assignments. The roles form the basic building block of midPoint's extended role-based access control (RBAC) mechanism. It defines what rights (e.g. accounts) should be given to user, how they should look like (attributes) and what groups or native roles to assign to them (entitlements). Roles can also specify user authorizations to access specific parts of midPoint. This is used to implement fine-grained authorization mechanism. When combined with organizational structure it forms a delegated administration mechanism. Roles can also be conditional, i.e. applicable only if a specific condition is true. Roles can be parametric, e.g. the expressions inside the role can use parameters that were specified at the time when the role was assigned (as opposed to parameters defined when the role was defined).
    See Also:
    Serialized Form