com.ibm.itim.dataservices.model.system

Class SystemUser

  • All Implemented Interfaces:
    ProtectedObject, com.ibm.itim.util.Sortable, com.ibm.itim.util.xml.objectstream.Importable, java.io.Serializable


    public class SystemUser
    extends Account
    Value Object class that holds the attribute information of a system (platform) user in the data model. Although this class name indicates it represents a user, it is really just a specialization of an account hosted on the provisioning platform.
    See Also:
    SystemUserEntity, Serialized Form
    • Field Detail

      • SYSTEM_ADMIN

        public static final java.lang.String SYSTEM_ADMIN
        Static string constant for the owner of the enrole manager account.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_DELEGATE

        public static final java.lang.String SYSTEM_USER_ATTR_DELEGATE
        String constant for the delegation flag attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_HOME_PAGE

        public static final java.lang.String SYSTEM_USER_ATTR_HOME_PAGE
        String constant for the homepage attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_DELEGATE_INFO

        public static final java.lang.String SYSTEM_USER_ATTR_DELEGATE_INFO
        String constant for the delegate attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_WORKFLOW

        public static final java.lang.String SYSTEM_USER_ATTR_WORKFLOW
        String constant for the workflow preferences attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_ROLES

        public static final java.lang.String SYSTEM_USER_ATTR_ROLES
        String constant for the roles (groups) attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_LAST_ACTION

        public static final java.lang.String SYSTEM_USER_LAST_ACTION
        String constant for the last action performed.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_PASSWORD_LAST_CHANGED

        public static final java.lang.String SYSTEM_USER_ATTR_PASSWORD_LAST_CHANGED
        Deprecated. use Account.ACCOUNT_ATTR_PASSWORD_LAST_CHANGED
        String constant for the last password changed date attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_NUM_LOGON_ATTEMPT

        public static final java.lang.String SYSTEM_USER_ATTR_NUM_LOGON_ATTEMPT
        String constant for the number of logon attempts attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_CHANGE_PASSWORD_REQUIRED

        public static final java.lang.String SYSTEM_USER_ATTR_CHANGE_PASSWORD_REQUIRED
        String constant for the change password required attribute name.
        See Also:
        Constant Field Values
      • SYSTEM_USER_ATTR_CHALLENGE_RESPONSE

        public static final java.lang.String SYSTEM_USER_ATTR_CHALLENGE_RESPONSE
        String constant for the challenge/response attribute name.
        See Also:
        Constant Field Values
      • FORGOT_PSWD_ACTION

        public static java.lang.String FORGOT_PSWD_ACTION
        String constant for the forgot password action.
      • PROFILE_NAME

        public static java.lang.String PROFILE_NAME
    • Constructor Detail

      • SystemUser

        public SystemUser()
        Default empty constructor
      • SystemUser

        public SystemUser(java.lang.String name,
                          AttributeValues attributes)
        Constructs object with name (user id) and attribute information. Warning: the purpose of this constructor is to provide clients with the ability to create value objects for creation in the data store. Do not use this constructor to create value objects that represent existing entities. See the SystemUserSearch object for achieving that.
        Parameters:
        name - Identifier representing the system user (user id).
        attributes - AttributeValues holding the attributes of the system user.
      • SystemUser

        public SystemUser(AttributeValues attributes)
        Constructs object with attribute information. It is assumed that the user id attribute (ACCOUNT_ATTR_USERID) is present in the list. Warning: the purpose of this constructor is to provide clients with the ability to create value objects for creation in the data store. Do not use this constructor to create value objects that represent existing entities. See the SystemUserSearch object for achieving that.
        Parameters:
        attributes - AttributeValues holding the attributes of the system user.
    • Method Detail

      • getName

        public java.lang.String getName()
        Returns the name of the system user (user id).
        Overrides:
        getName in class DirectoryObject
        Returns:
        name (user id) of the sytem user.
      • getRoles

        public java.util.Collection<DistinguishedName> getRoles()
        Returns the user's roles (groups).
        Returns:
        Collection of the DistinguishedNames of the user's roles (groups).
      • setRoles

        public void setRoles(java.util.Collection roles)
        Changes the user's role (group) membership.
        Parameters:
        roles - Collection of DistinguishedNames of user's roles (groups).
      • addRole

        public void addRole(DistinguishedName roleDN)
        Adds the given role to the user's role (group) membership.
        Parameters:
        roleDN - DisinguishedName of the role (group) to add.
      • removeRole

        public void removeRole(DistinguishedName roleDN)
        Removes the given role from the user's role (group) membership.
        Parameters:
        roleDN - DisinguishedName of the role (group) to remove.
      • getHomePage

        public java.lang.String getHomePage()
        Returns the user's current home page selection.
        Returns:
        Current home page selection for the user.
      • setHomePage

        public void setHomePage(java.lang.String homepage)
        Changes the current home page selection for the user.
        Parameters:
        homepage - New home page selection.
      • getDefaultWorkflowQuery

        public WorkflowQuery getDefaultWorkflowQuery()
        Returns the user's preferences for querying workflow status.
        Returns:
        WorkflowQuery holding user's preferences.
      • setDefaultWorkflowQuery

        public void setDefaultWorkflowQuery(WorkflowQuery query)
        Changes the user's preferences for querying workflow status.
        Parameters:
        query - WorkflowQuery holding new preferences.
      • setNumberOfLogonAttempts

        public void setNumberOfLogonAttempts(int logonAttempts)
        Changes the number of unsuccessful consecutive logon attempts this user has made.
        Parameters:
        logonAttempts - Number of logon attempts.
      • getNumberOfLogonAttempts

        public int getNumberOfLogonAttempts()
        Returns the number of consecutive unsuccessful logon attempts the user has made.
        Returns:
        Number of logon attempts.
      • getChallengesAndResponses

        public java.util.Collection<ChallengeAndResponse> getChallengesAndResponses()
        Returns password challenge question/response list for the user.
        Returns:
        Collection of ChallengeAndResponses representing the user's required challenge/response pairs.
      • setChallengesAndResponse

        public void setChallengesAndResponse(java.util.Collection responses)
        Changes the user's password challenge question/response list.
        Parameters:
        responses - Collection of ChallengeAndResponses representing the user's required challenge/response pairs.
      • isChangePasswordRequired

        public boolean isChangePasswordRequired()
        Returns whether the user is required to change their password at next logon.
        Returns:
        True if the user must change password on next logon, false if not.
      • setIsChangePasswordRequired

        public void setIsChangePasswordRequired(boolean toggle)
        Changes whether the user must change their password at next logon.
        Parameters:
        toggle - True if the user must change password, false if not.
      • isDelegated

        public boolean isDelegated()
        Returns whether the user is currently delegating their responsibilities to another user.
        Returns:
        True if the user's responsibilities are currently delegated to another, false if not.
      • getResponseLastChange

        public java.util.Date getResponseLastChange()
        Returns the last time the user's challenge/response list was updated.
        Returns:
        Date user's challenge/response list was last updated in a java.util.Date.
      • updateResponseLastChange

        public void updateResponseLastChange()
        Changes the last time the user's challenge/response list was updated to the current system time.