Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.ifs.adk.user
Class UserManager

    java.lang.Object

      |

      +--oracle.ifs.adk.user.UserManager

public final class UserManager
extends java.lang.Object

UserManager is an utility class to create and delete iFS users. Creating an iFS user involves creating a CredentialManager user, DirectoryUser, a home folder, a content quota, a primary user profile, an email profile, and associated objects. Values for the various options would be specified in a Hashtable. These Hashtable values would override the defaults found in the PropertyBundle, IFS.ADK.CreateUserDefinitions. If values are not specified, the defaults are used. Deleting an iFS user involves freeing the home folder, the CredentialManager user, DirectoryUser. There exists the option of freeing objects owned by the user or changing the ownership to a specified valid user. Values for the various options would be specifed in a Hashtable. Default values are specified in the javadoc below.

Field Summary
`static java.lang.String` | `ACL_BUNDLE_ALL_PUBLISHED` No default.
`static java.lang.String` | `ACL_BUNDLE_FOR_ADMIN` No default.
`static java.lang.String` | `ADMIN_ENABLED` Defaults to FALSE.
`static java.lang.String` | `CAN_CHANGE_PASSWORD` Defaults to TRUE.
`static java.lang.String` | `CHANGE_OWNER` Delete user option - defaults to FALSE.
`static java.lang.String` | `CONTENT_QUOTA_ACL` Defaults to Private.
`static java.lang.String` | `CONTENT_QUOTA_ALLOCATED_STORAGE` Defaults to 25000000 bytes.
`static java.lang.String` | `CONTENT_QUOTA_ENABLED` Defaults to FALSE.
`static java.lang.String` | `CONTENT_QUOTA_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `CONTENT_QUOTA_NAME_PREFIX` No default.
`static java.lang.String` | `CONTENT_QUOTA_NAME_SUFFIX` Defaults to ' Content Quota'.
`static java.lang.String` | `CREDENTIAL_MANAGER` Defaults to 'DEFAULT' for which credential manager to use for access to the authentication engine.
`static java.lang.String` | `DEFAULT_ACLS` Defaults to 'AclBundleAllPublished' for non-Admin and 'AclBundleForAdmin' for Admin users.
`static java.lang.String` | `DEFAULT_ACLS_BUNDLE_ACL` Defaults to Published.
`static java.lang.String` | `DEFAULT_ACLS_BUNDLE_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `DEFAULT_ACLS_BUNDLE_NAME_PREFIX` No default.
`static java.lang.String` | `DEFAULT_ACLS_BUNDLE_NAME_SUFFIX` Defaults to ' DefaultACLs'.
`static java.lang.String` | `DIRECTORY_USER_ACL` Defaults to Published.
`static java.lang.String` | `DISTINGUISHED_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `DISTINGUISHED_NAME_PREFIX` No default.
`static java.lang.String` | `DISTINGUISHED_NAME_SUFFIX` Defaults to installation value.
`static java.lang.String` | `EMAIL_ADDRESS` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `EMAIL_ADDRESS_PREFIX` No default.
`static java.lang.String` | `EMAIL_ADDRESS_SUFFIX` Defaults to installation value.
`static java.lang.String` | `EMAIL_SUBFOLDER_ACL` Defaults to Private.
`static java.lang.String` | `EMAIL_SUBFOLDER_NAME` Defaults to 'mail'.
`static java.lang.String` | `EMAIL_USER_PROFILE_ACL` Defaults to Private.
`static java.lang.String` | `EMAIL_USER_PROFILE_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `EMAIL_USER_PROFILE_NAME_PREFIX` No default.
`static java.lang.String` | `EMAIL_USER_PROFILE_NAME_SUFFIX` Defaults to ' Email Profile'.
`static java.lang.String` | `FREE_CREDENTIAL_MANAGER_USER` Delete user option - defaults to FALSE.
`static java.lang.String` | `FREE_HOME_FOLDER` Delete user option - defaults to FALSE.
`static java.lang.String` | `HAS_CONTENT_QUOTA` Defaults to TRUE.
`static java.lang.String` | `HAS_EMAIL` Defaults to TRUE.
`static java.lang.String` | `HAS_HOME_FOLDER` Defaults to TRUE.
`static java.lang.String` | `HAS_PRIMARY_USER_PROFILE` Defaults to TRUE.
`static java.lang.String` | `HOME_FOLDER_ACL` Defaults to Private.
`static java.lang.String` | `HOME_FOLDER_DESCRIPTION` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `HOME_FOLDER_DESCRIPTION_PREFIX` No default.
`static java.lang.String` | `HOME_FOLDER_DESCRIPTION_SUFFIX` Defaults to ''s home folder'.
`static java.lang.String` | `HOME_FOLDER_HAS_POLICY_BUNDLE` Defaults to TRUE.
`static java.lang.String` | `HOME_FOLDER_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `HOME_FOLDER_NAME_PREFIX` No default.
`static java.lang.String` | `HOME_FOLDER_NAME_SUFFIX` No default.
`static java.lang.String` | `HOME_FOLDER_POLICY_BUNDLE_ACL` Defaults to Published.
`static java.lang.String` | `HOME_FOLDER_POLICY_BUNDLE_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `HOME_FOLDER_POLICY_BUNDLE_NAME_PREFIX` No default.
`static java.lang.String` | `HOME_FOLDER_POLICY_BUNDLE_NAME_SUFFIX` Defaults to 'Policy Bundle for Homefolder and Inbox'.
`static java.lang.String` | `HOME_FOLDER_ROOT` Defaults to '/home'.
`static java.lang.String` | `INBOX_ACL` Defaults to Private.
`static java.lang.String` | `INBOX_NAME` Defaults to 'inbox'.
`static java.lang.String` | `NEW_OWNER_USER_NAME` Delete user option - no default.
`static java.lang.String` | `PASSWORD` Password is required to be defined.
`static java.lang.String` | `PRIMARY_USER_PROFILE_ACL` Defaults to Private.
`static java.lang.String` | `PRIMARY_USER_PROFILE_NAME` If none specified, name is constructed from prefix + username + suffix.
`static java.lang.String` | `PRIMARY_USER_PROFILE_NAME_PREFIX` No default.
`static java.lang.String` | `PRIMARY_USER_PROFILE_NAME_SUFFIX` Defaults to ' Primary Profile'.
`static java.lang.String` | `REPLACE_CREDENTIAL_MANAGER_PASSWORD` Defaults to FALSE.
`static java.lang.String` | `SHOULD_CREATE_CREDENTIAL_MANAGER_USER` Defaults to TRUE.
`static java.lang.String` | `USERNAME` UserName is required to be defined.

Constructor Summary
`UserManager(LibrarySession sess)` Construct UserManager object.

Method Summary
`DirectoryUser` | `createUser(java.lang.String username, java.lang.String password, java.util.Hashtable options)` Creates a new iFS user.
`void` | `deleteUser(java.lang.String username, java.util.Hashtable options)` Deletes an iFS user.
`java.util.Hashtable` | `normalizeOptionsHashtable(java.util.Hashtable oldTable)` Normalizes the options Hashtable so that the keys are all uppercase.

Field Detail

### USERNAME

    public static final java.lang.String USERNAME

  UserName is required to be defined.

### PASSWORD

    public static final java.lang.String PASSWORD

  Password is required to be defined.

### SHOULD_CREATE_CREDENTIAL_MANAGER_USER

    public static final java.lang.String SHOULD_CREATE_CREDENTIAL_MANAGER_USER

  Defaults to TRUE.

### REPLACE_CREDENTIAL_MANAGER_PASSWORD

    public static final java.lang.String REPLACE_CREDENTIAL_MANAGER_PASSWORD

  Defaults to FALSE. If using an existing credential manager user, set to TRUE to override the old password.

### CREDENTIAL_MANAGER

    public static final java.lang.String CREDENTIAL_MANAGER

  Defaults to 'DEFAULT' for which credential manager to use for access to the authentication engine.

### CAN_CHANGE_PASSWORD

    public static final java.lang.String CAN_CHANGE_PASSWORD

  Defaults to TRUE.

### HAS_EMAIL

    public static final java.lang.String HAS_EMAIL

  Defaults to TRUE.

### ADMIN_ENABLED

    public static final java.lang.String ADMIN_ENABLED

  Defaults to FALSE. Set to TRUE if user should have admin privileges.

### HAS_PRIMARY_USER_PROFILE

    public static final java.lang.String HAS_PRIMARY_USER_PROFILE

  Defaults to TRUE.

### HAS_HOME_FOLDER

    public static final java.lang.String HAS_HOME_FOLDER

  Defaults to TRUE.

### HOME_FOLDER_ROOT

    public static final java.lang.String HOME_FOLDER_ROOT

  Defaults to '/home'.

### HOME_FOLDER_HAS_POLICY_BUNDLE

    public static final java.lang.String HOME_FOLDER_HAS_POLICY_BUNDLE

  Defaults to TRUE. Admin privileges are required to free the home folder.

### HAS_CONTENT_QUOTA

    public static final java.lang.String HAS_CONTENT_QUOTA

  Defaults to TRUE.

### CONTENT_QUOTA_ENABLED

    public static final java.lang.String CONTENT_QUOTA_ENABLED

  Defaults to FALSE. Set to TRUE to enable the implemented content quota.

### CONTENT_QUOTA_ALLOCATED_STORAGE

    public static final java.lang.String CONTENT_QUOTA_ALLOCATED_STORAGE

  Defaults to 25000000 bytes.

### EMAIL_ADDRESS

    public static final java.lang.String EMAIL_ADDRESS

  If none specified, name is constructed from prefix + username + suffix.

### DISTINGUISHED_NAME

    public static final java.lang.String DISTINGUISHED_NAME

  If none specified, name is constructed from prefix + username + suffix.

### PRIMARY_USER_PROFILE_NAME

    public static final java.lang.String PRIMARY_USER_PROFILE_NAME

  If none specified, name is constructed from prefix + username + suffix.

### EMAIL_USER_PROFILE_NAME

    public static final java.lang.String EMAIL_USER_PROFILE_NAME

  If none specified, name is constructed from prefix + username + suffix.

### CONTENT_QUOTA_NAME

    public static final java.lang.String CONTENT_QUOTA_NAME

  If none specified, name is constructed from prefix + username + suffix.

### HOME_FOLDER_NAME

    public static final java.lang.String HOME_FOLDER_NAME

  If none specified, name is constructed from prefix + username + suffix.

### HOME_FOLDER_DESCRIPTION

    public static final java.lang.String HOME_FOLDER_DESCRIPTION

  If none specified, name is constructed from prefix + username + suffix.

### DEFAULT_ACLS_BUNDLE_NAME

    public static final java.lang.String DEFAULT_ACLS_BUNDLE_NAME

  If none specified, name is constructed from prefix + username + suffix.

### HOME_FOLDER_POLICY_BUNDLE_NAME

    public static final java.lang.String HOME_FOLDER_POLICY_BUNDLE_NAME

  If none specified, name is constructed from prefix + username + suffix.

### DISTINGUISHED_NAME_PREFIX

    public static final java.lang.String DISTINGUISHED_NAME_PREFIX

  No default.

### PRIMARY_USER_PROFILE_NAME_PREFIX

    public static final java.lang.String PRIMARY_USER_PROFILE_NAME_PREFIX

  No default.

### EMAIL_USER_PROFILE_NAME_PREFIX

    public static final java.lang.String EMAIL_USER_PROFILE_NAME_PREFIX

  No default.

### CONTENT_QUOTA_NAME_PREFIX

    public static final java.lang.String CONTENT_QUOTA_NAME_PREFIX

  No default.

### HOME_FOLDER_NAME_PREFIX

    public static final java.lang.String HOME_FOLDER_NAME_PREFIX

  No default.

### HOME_FOLDER_DESCRIPTION_PREFIX

    public static final java.lang.String HOME_FOLDER_DESCRIPTION_PREFIX

  No default.

### DEFAULT_ACLS_BUNDLE_NAME_PREFIX

    public static final java.lang.String DEFAULT_ACLS_BUNDLE_NAME_PREFIX

  No default.

### HOME_FOLDER_POLICY_BUNDLE_NAME_PREFIX

    public static final java.lang.String HOME_FOLDER_POLICY_BUNDLE_NAME_PREFIX

  No default.

### EMAIL_ADDRESS_PREFIX

    public static final java.lang.String EMAIL_ADDRESS_PREFIX

  No default.

### DISTINGUISHED_NAME_SUFFIX

    public static final java.lang.String DISTINGUISHED_NAME_SUFFIX

  Defaults to installation value.

### PRIMARY_USER_PROFILE_NAME_SUFFIX

    public static final java.lang.String PRIMARY_USER_PROFILE_NAME_SUFFIX

  Defaults to ' Primary Profile'.

### EMAIL_USER_PROFILE_NAME_SUFFIX

    public static final java.lang.String EMAIL_USER_PROFILE_NAME_SUFFIX

  Defaults to ' Email Profile'.

### CONTENT_QUOTA_NAME_SUFFIX

    public static final java.lang.String CONTENT_QUOTA_NAME_SUFFIX

  Defaults to ' Content Quota'.

### HOME_FOLDER_NAME_SUFFIX

    public static final java.lang.String HOME_FOLDER_NAME_SUFFIX

  No default.

### HOME_FOLDER_DESCRIPTION_SUFFIX

    public static final java.lang.String HOME_FOLDER_DESCRIPTION_SUFFIX

  Defaults to ''s home folder'.

### DEFAULT_ACLS_BUNDLE_NAME_SUFFIX

    public static final java.lang.String DEFAULT_ACLS_BUNDLE_NAME_SUFFIX

  Defaults to ' DefaultACLs'.

### HOME_FOLDER_POLICY_BUNDLE_NAME_SUFFIX

    public static final java.lang.String HOME_FOLDER_POLICY_BUNDLE_NAME_SUFFIX

  Defaults to 'Policy Bundle for Homefolder and Inbox'.

### EMAIL_ADDRESS_SUFFIX

    public static final java.lang.String EMAIL_ADDRESS_SUFFIX

  Defaults to installation value.

### EMAIL_SUBFOLDER_NAME

    public static final java.lang.String EMAIL_SUBFOLDER_NAME

  Defaults to 'mail'.

### INBOX_NAME

    public static final java.lang.String INBOX_NAME

  Defaults to 'inbox'.

### DIRECTORY_USER_ACL

    public static final java.lang.String DIRECTORY_USER_ACL

  Defaults to Published.

### HOME_FOLDER_POLICY_BUNDLE_ACL

    public static final java.lang.String HOME_FOLDER_POLICY_BUNDLE_ACL

  Defaults to Published.

### HOME_FOLDER_ACL

    public static final java.lang.String HOME_FOLDER_ACL

  Defaults to Private.

### DEFAULT_ACLS_BUNDLE_ACL

    public static final java.lang.String DEFAULT_ACLS_BUNDLE_ACL

  Defaults to Published.

### CONTENT_QUOTA_ACL

    public static final java.lang.String CONTENT_QUOTA_ACL

  Defaults to Private.

### PRIMARY_USER_PROFILE_ACL

    public static final java.lang.String PRIMARY_USER_PROFILE_ACL

  Defaults to Private.

### EMAIL_USER_PROFILE_ACL

    public static final java.lang.String EMAIL_USER_PROFILE_ACL

  Defaults to Private.

### EMAIL_SUBFOLDER_ACL

    public static final java.lang.String EMAIL_SUBFOLDER_ACL

  Defaults to Private.

### INBOX_ACL

    public static final java.lang.String INBOX_ACL

  Defaults to Private.

### DEFAULT_ACLS

    public static final java.lang.String DEFAULT_ACLS

  Defaults to 'AclBundleAllPublished' for non-Admin and 'AclBundleForAdmin' for Admin users.

### FREE_CREDENTIAL_MANAGER_USER

    public static final java.lang.String FREE_CREDENTIAL_MANAGER_USER

  Delete user option - defaults to FALSE.

### FREE_HOME_FOLDER

    public static final java.lang.String FREE_HOME_FOLDER

  Delete user option - defaults to FALSE.

### CHANGE_OWNER

    public static final java.lang.String CHANGE_OWNER

  Delete user option - defaults to FALSE.

### NEW_OWNER_USER_NAME

    public static final java.lang.String NEW_OWNER_USER_NAME

  Delete user option - no default.

### ACL_BUNDLE_ALL_PUBLISHED

    public static final java.lang.String ACL_BUNDLE_ALL_PUBLISHED

  No default.

### ACL_BUNDLE_FOR_ADMIN

    public static final java.lang.String ACL_BUNDLE_FOR_ADMIN

  No default.

Constructor Detail

### UserManager

    public UserManager(LibrarySession sess)
                throws IfsException

  Construct UserManager object.
  Parameters:
    `sess` - LibrarySession on which to manage users.

Method Detail

### createUser

    public DirectoryUser createUser(java.lang.String username,
                                    java.lang.String password,
                                    java.util.Hashtable options)
                             throws IfsException

  Creates a new iFS user.
  Parameters:
    `username` - user name; can also be specified in the Hashtable as option UserName
    `password` - password; can also be specified in the Hashtable as option Password
    `options` - Hashtable of options which override the options contained in the named PropertyBundle IFS.ADK.CreateUserDefinitions.
  Returns:
    The newly created user.
  Throws:
    `IfsException` - if the operation fails

### deleteUser

    public void deleteUser(java.lang.String username,
                           java.util.Hashtable options)
                    throws IfsException

  Deletes an iFS user.
  Parameters:
    `username` - user name; can also be specified in the Hashtable as option UserName
    `options` - Hashtable of options which override the options contianed in the named PropertyBundle IFS.ADK.CreateUserDefinitions.
  Throws:
    `if` - invalid args are specified

### normalizeOptionsHashtable

    public java.util.Hashtable normalizeOptionsHashtable(java.util.Hashtable oldTable)
                                                  throws IfsException

  Normalizes the options Hashtable so that the keys are all uppercase.
  Parameters:
    `oldTable` - original mixed-case keys Hashtable
  Returns:
    new Hashtable with keys in uppercase.
  Throws:
    `IfsException` - if the operation fails

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD