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

## jet.server.api.admin
Interface SecurityAdminService

    public interface SecurityAdminService

Interface `SecurityAdminService` provide methods to manage security resource in report server.

Since:
  5.0

Method Summary
`java.lang.String` | `addAcl(java.lang.String realmName, java.lang.String aclName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `addGroup(java.lang.String realmName, java.lang.String groupName, java.lang.String description, java.lang.String submitter)` Add a new group into the realm.
`java.lang.String` | `addGroupIntoRole(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName, java.lang.String roleName)` add a group to role as a memeber
`java.lang.String` | `addMemberIntoAcl(java.lang.String realmName, java.lang.String aclName, java.lang.String memberName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `addMemberIntoGroup(java.lang.String realmName, java.lang.String groupName, java.lang.String memberName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `addNewParentRolesToUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String roleName)` Add some new parent role to a user.
`java.lang.String` | `addPrivilegedGroups(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege, java.util.Vector groups)` add roles to have this privilege
`java.lang.String` | `addPrivilegedRoles(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege, java.util.Vector roles)` add roles to have this privilege
`void` | `addPrivilegedRoles(java.lang.String privilege, java.util.Vector roles)` Deprecated. Server V7.1 eplaced by `addPrivilegedRoles(String realmName, String submitter, String privilege, Vector groups) throws NoSuchGroupException, NoSuchRealmException, BadRealmException;`.
`java.lang.String` | `addPrivilegedUsers(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege, java.util.Vector users)` add users to have this privilege
`void` | `addPrivilegedUsers(java.lang.String privilege, java.util.Vector users)` Deprecated. Server V7.1 replaced by `addPrivilegedUsers(String realmName, String submitter, String privilege, Vector users) throws NoSuchUserException, NoSuchRealmException;`.
`java.lang.String` | `addProtection(java.lang.String realmName, java.lang.String resourcePath, java.lang.String aclName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `addRealm(java.lang.String realmName, java.lang.String submitter, int scheme)` Add a new realm specified by realmName.
`java.lang.String` | `addRole(java.lang.String realmName, java.lang.String roleName, java.lang.String description, java.lang.String submitter)` Add a new role into the realm.
`java.lang.String` | `addRole(java.lang.String realmName, java.lang.String roleName, java.lang.String description, java.lang.String parentRoleName, java.lang.String submitter)` Deprecated. This method is not effective since V7.0 .
`java.lang.String` | `addSubGroupIntoGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String subGroupName, java.lang.String groupName)` add a group into a group as sub group
`java.lang.String` | `addSubRoleToRole(java.lang.String realmName, java.lang.String submitter, java.lang.String subRoleName, java.lang.String roleName)` Add a sub role to a role
`java.lang.String` | `addSubUserToRole(java.lang.String realmName, java.lang.String submitter, java.lang.String subUserName, java.lang.String roleName)` Add a sub user to a role
`java.lang.String` | `addUser(java.lang.String realmName, java.lang.String userName, java.lang.String password, java.lang.String fullName, java.lang.String description, java.lang.String email, boolean passNeverExpire, int passExpireTime, boolean passPermitBlank, int passMinLength, boolean disabledAccount, java.lang.String submitter)` Deprecated. This method is not effective since V6.
`java.lang.String` | `addUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String password, java.lang.String fullName, java.lang.String description, java.lang.String email, boolean passNeverExpire, int passExpireTime, boolean passPermitBlank, int passMinLength, boolean disabledAccount)` Add a new user into the realm.
`java.lang.String` | `addUserIntoGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String groupName)` Add a user into a group as sub user
`java.lang.String` | `addUserIntoRole(java.lang.String realmName, java.lang.String roleName, java.lang.String userName, java.lang.String submitter)` Add a user into a role.
`java.lang.String` | `changePassword(java.lang.String realmName, java.lang.String userName, java.lang.String subPwd, java.lang.String newPwd, java.lang.String submitter)` Change user password.
`java.lang.String` | `editLDAPUser(java.lang.String realmName, java.lang.String userName, java.lang.String fullName, java.lang.String description, java.lang.String email, java.lang.String submitter)` Edit the specified user.
`java.lang.String` | `editProtection(java.lang.String realmName, java.lang.String resourcePath, java.lang.String aclName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `editUser(java.lang.String realmName, java.lang.String userName, java.lang.String fullName, java.lang.String description, java.lang.String email, boolean passNeverExpire, int passExpireTime, boolean passPermitBlank, int passMinLength, boolean disabledAccount, java.lang.String submitter)` Edit the specified user.
`java.security.acl.Acl` | `getAcl(java.lang.String realmName, java.lang.String aclName)` Deprecated. This method was not effective since V6.
`java.util.Enumeration` | `getAclNames(java.lang.String realmName)` Deprecated. This method was not effective since V6.
`java.util.Enumeration` | `getAcls(java.lang.String realmName)` Deprecated. This method was not effective since V6.
`java.lang.String` | `getActiveRealm()` Get the active Realm in JReport server.
`java.util.Enumeration` | `getAllGroupNames(java.lang.String realmName)` Get all group name list in the realm.
`java.util.Enumeration` | `getAllGroups(java.lang.String realmName)` Deprecated. This method was not effective since Server V6.0
`java.util.Vector` | `getAllGroups(java.lang.String realmName, java.lang.String submitter)` Deprecated. This method was not effective since Server V7.1. It was replaced by the method: getAllJGroups();
`JGroup[]` | `getAllJGroups(java.lang.String realmName, java.lang.String submitter)` A JGroup array that contain all group in server
`JRole[]` | `getAllJRoles(java.lang.String realmName, java.lang.String submitter)` Get all role set in the realm.
`JUser[]` | `getAllJUser(java.lang.String realmName, java.lang.String submitter)` Get all users set in the realm.
`java.util.Enumeration` | `getAllRealmNames()` Get all realm name list in report server.
`java.util.Vector` | `getAllRoleNames(java.lang.String realmName, java.lang.String submitter)` Get all role name list in the realm.
`java.util.Vector` | `getAllRoles(java.lang.String realmName, java.lang.String submitter)` Deprecated. This method was not effective since Server V8, replaced by the method getAllJRoles().
`java.util.Vector` | `getAllUser(java.lang.String realmName, java.lang.String submitter)` Deprecated. This method was not effective since Server V8, replace by the method getJUser().
`java.util.Enumeration` | `getAllUserNames(java.lang.String realmName)` Get all user name list in the realm.
`java.util.Enumeration` | `getAllUserNames(java.lang.String realmName, java.lang.String groupName)` Deprecated. This method was not effective since Server V6.0
`java.util.Enumeration` | `getAllUserNamesByRole(java.lang.String submitter, java.lang.String realmName, java.lang.String roleName)` Get all user name list in the role.
`java.lang.String` | `getCombinedAclName(java.lang.String realmName, java.lang.String resourcePath)` Deprecated. This method was not effective since V6.
`java.lang.String` | `getCurRealm()` Get the current edit Realm in JReport server.
`java.security.acl.Group` | `getGroup(java.lang.String realmName, java.lang.String groupName)` Deprecated. This method was not effective since Server V6.0
`Group` | `getGroupByName(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Deprecated. This method was not effective since Server V7.1
`int` | `getGroupMemberCount(java.lang.String realmName, java.lang.String groupName)` Get member count in a group.
`java.util.Vector` | `getGroupPrivileges(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` get user's privileges
`java.util.Vector` | `getGroupsByRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Deprecated. This method was not effective since Server V8, replace by the method getJGroupsByJRole().
`java.util.Vector` | `getGroupsByUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName)` Deprecated. This method was not effective since Server V8, replaced by the method getJGroupsByJUser().
`JGroup` | `getJGroupByName(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Get a group specified by group name
`JGroup[]` | `getJGroupsByJRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Get sub groups from the role
`JGroup[]` | `getJGroupsByJUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName)` Get the groups which specifie user has
`JRole` | `getJRole(java.lang.String submitter, java.lang.String realmName, java.lang.String roleName)` Get a role specified by roleName.
`JRole[]` | `getJRolesByJGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Get parent roles' object from the group
`JUser` | `getJUser(java.lang.String submitter, java.lang.String realmName, java.lang.String userName)` Get a user
`JUser[]` | `getJUsersByJGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Get sub user object array from the parent group
`JRole[]` | `getParentJRolesByJUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName)` Get roles which specific user has
`java.util.Vector` | `getParentRolesByUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName)` Deprecated. This method was not effective since Server V8, replaced by the method getParentJRolesByJUser().
`java.util.Vector` | `getPrivilegedGroups(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege)` get all groups who have the privilege
`java.util.Vector` | `getPrivilegedRoles(java.lang.String privilege)` Deprecated. Server V7.1 replaced by `getPrivilegedRoles(String realmName, String submitter, String privilege,) throws NoSuchRealmException;`.
`java.util.Vector` | `getPrivilegedRoles(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege)` get all roles who have the privilege
`java.util.Vector` | `getPrivilegedUsers(java.lang.String privilege)` Deprecated. Server V7.1 replaced by `getPrivilegedUsers(String realmName, String submitter, String privilege,) throws NoSuchRealmException;`.
`java.util.Vector` | `getPrivilegedUsers(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege)` get all users who have the privilege
`java.util.Hashtable[]` | `getPrivileges(java.lang.String realmName, java.lang.String submitter)` Get defined privileges of users
`java.util.Enumeration` | `getProtections(java.lang.String realmName)` Deprecated. This method is not effective since V6.
`java.util.Vector` | `getReferRoles(java.lang.String realmName, java.lang.String userName)` Deprecated. This method was not effective since Server V8, replaced by the method getReferJRolers().
`java.util.Vector` | `getReferUsers(java.lang.String realmName, java.lang.String userName)` Deprecated. This method was not effective since Server V8, replaced by the method getReferJUsers().
`Role` | `getRole(java.lang.String submitter, java.lang.String realmName, java.lang.String roleName)` Deprecated. This method was not effective since Server V8, replaced by the method getJRole().
`int` | `getRoleMemberCount(java.lang.String realmName, java.lang.String roleName)` Get member count in a role.
`java.util.Vector` | `getRolePrivileges(java.lang.String roleName)` Deprecated. Server V7.1 replaced by `getRolePrivileges(String realmName, String submitter, String roleName,) throws NoSuchRoleException, NoSuchRealmException;`.
`java.util.Vector` | `getRolePrivileges(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` get user's privileges
`java.util.Vector` | `getRolesByGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Deprecated. This method was not effective since Server V8, replace by the method getJRolesByJGroup().
`java.util.Vector` | `getSubGroupsByGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Deprecated. This method was not effective since Server V8, replace by the method getJUsersByJGroup().
`JGroup[]` | `getSubJGroupsByJGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Get sub groups from the parent group
`JRole[]` | `getSubJRolesByJRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Get the set of a role's sub roles.
`JUser[]` | `getSubJUsersByJRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Get the set of a role's sub users
`java.util.Vector` | `getSubRolesByRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Deprecated. This method was not effective since Server V8, replaced by the method getSubJRolesByJRole().
`java.util.Vector` | `getSubUsersByRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Deprecated. This method was not effective since Server V8, replaced by the method getSubJUsersByJRole().
`java.util.Vector` | `getSubUsersNameByRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName)` Deprecated. This method was not effective since Server V8, replaced by the method getSubJUsersNameByJRole().
`User` | `getUser(java.lang.String submitter, java.lang.String realmName, java.lang.String userName)` Deprecated. This method was not effective since Server V8, replace by the method getJUser().
`java.lang.String` | `getUserDescription(java.lang.String realmName, java.lang.String userName)` Get user's description.
`java.lang.String` | `getUserEmail(java.lang.String realmName, java.lang.String userName)` Get user's email address.
`java.lang.String` | `getUserFullname(java.lang.String realmName, java.lang.String userName)` Get user's full name.
`int` | `getUserParentGroupsCount(java.lang.String realmName, java.lang.String userName)` Get the count if a user's parent groups count
`int` | `getUserParentRolesCount(java.lang.String realmName, java.lang.String userName)` Get the count if a user's parent roles' count
`int` | `getUserPasswordExpireTime(java.lang.String realmName, java.lang.String userName)` Get user password expire time
`int` | `getUserPasswordMinLength(java.lang.String realmName, java.lang.String userName)` Get user password minimum length.
`java.util.Vector` | `getUserPrivileges(java.lang.String userName)` Deprecated. Server V7.1 replaced by `getUserPrivileges(String realmName, String submitter, String userName,) throws NoSuchUserException, NoSuchRealmException;`.
`java.util.Vector` | `getUserPrivileges(java.lang.String realmName, java.lang.String submitter, java.lang.String userName)` get user's privileges
`java.util.Vector` | `getUsersByGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName)` Deprecated. This method was not effective since Server V8, replace by the method getJUsersByJGroup().
`boolean` | `isAdminUser(java.lang.String userName)` Check the user is adminisitrator or not
`boolean` | `isAuditFileAccessFail(java.lang.String realmName, java.lang.String userName)` Check if audit failing ACCESS event for the user.
`boolean` | `isAuditFileAccessSuccess(java.lang.String realmName, java.lang.String userName)` Check if audit successful ACCESS event for the user.
`boolean` | `isAuditManageFail(java.lang.String realmName, java.lang.String userName)` Check if audit failing MANAGE event for the user.
`boolean` | `isAuditManageSuccess(java.lang.String realmName, java.lang.String userName)` Check if audit successful MANAGE event for the user.
`boolean` | `isEditing(java.lang.String realm, int action)` Check the action is can be edit
`boolean` | `isJGroupInJGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName, java.lang.String parentName)` Indicates whether the group should be in a parent group
`boolean` | `isJGroupInJRole(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName, java.lang.String roleName)` Indicates whether the group should be in a role
`boolean` | `isJRoleInJRole(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName, java.lang.String parentName)` Indicates whether the role should be in a parent role
`boolean` | `isJUserInJGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String groupName)` Indicates whether the user should be in a group
`boolean` | `isJUserInJRole(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String roleName)` Indicates whether the user should be in a role
`boolean` | `isNoAudit(java.lang.String realmName, java.lang.String userName)` Check if does not audit any ACCESS or MANAGE event for the user.
`boolean` | `isUserAccountDisable(java.lang.String realmName, java.lang.String userName)` Check whether user account is disabled.
`boolean` | `isUserPasswordNeverExpire(java.lang.String realmName, java.lang.String userName)` Check if user password is never expire.
`boolean` | `isUserPasswordPermitBlank(java.lang.String realmName, java.lang.String userName)` Check if user password permit blank.
`java.lang.String` | `removeAcl(java.lang.String realmName, java.lang.String aclName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `removeGroup(java.lang.String realmName, java.lang.String groupName, java.lang.String submitter)` Remove a group from the realm.
`java.lang.String` | `removeGroupFromRole(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName, java.lang.String roleName)` remove a group from the role
`java.lang.String` | `removeMemberFromAcl(java.lang.String realmName, java.lang.String aclName, java.lang.String memberName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `removeMemberFromGroup(java.lang.String realmName, java.lang.String groupName, java.lang.String memberName, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `removeParentRolesFromUser(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String roleName)` Remove a parent role from a user
`java.lang.String` | `removePrivilegedGroups(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege, java.util.Vector groups)` remove groups from groups who have the privilege
`java.lang.String` | `removePrivilegedRoles(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege, java.util.Vector roles)` remove roles from roles who have the privilege
`java.lang.String` | `removePrivilegedRoles(java.lang.String privilege, java.util.Vector roles)` Deprecated. Server V7.1 replaced by `removePrivilegedRoles(String realmName, String submitter, String privilege, Vector roles) throws NoSuchRoleException, NoSuchRealmException;`.
`java.lang.String` | `removePrivilegedUsers(java.lang.String realmName, java.lang.String submitter, java.lang.String privilege, java.util.Vector users)` remove users from users who have the privilege
`java.lang.String` | `removePrivilegedUsers(java.lang.String privilege, java.util.Vector users)` Deprecated. Server V7.1 replaced by `removePrivilegedUsers(String realmName, String submitter, String privilege, Vector users) throws NoSuchUserException, NoSuchRealmException;`.
`java.lang.String` | `removeProtection(java.lang.String realmName, java.lang.String resourcePath, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `removeRealm(java.lang.String realmName, java.lang.String submitter)` Remove a realm spcified by realmName.
`java.lang.String` | `removeRole(java.lang.String realmName, java.lang.String roleName, java.lang.String submitter)` Remove a role from the realm.
`java.lang.String` | `removeRoleFromParentRole(java.lang.String submitter, java.lang.String realmName, java.lang.String roleName, java.lang.String parentRoleName)` Remove a role from a parent role
`java.lang.String` | `removeSubGroupFromGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String subGroupName, java.lang.String groupName)` remove a sub group from the group
`java.lang.String` | `removeUser(java.lang.String realmName, java.lang.String userName, java.lang.String submitter)` Remove a user from the realm.
`java.lang.String` | `removeUserFromGroup(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.lang.String groupName)` remove a user from the group
`java.lang.String` | `removeUserFromParentRole(java.lang.String submitter, java.lang.String realmName, java.lang.String userName, java.lang.String parentRoleName)` Remove a user from a parent role
`java.lang.String` | `removeUserFromRole(java.lang.String realmName, java.lang.String roleName, java.lang.String userName, java.lang.String submitter)` Deprecated. This method was not effective since Server V7.0
`java.lang.String` | `setAuditFileAccessFail(java.lang.String realmName, java.lang.String userName, boolean b, java.lang.String submitter)` Set whether audit failing ACCESS actions for the user.
`java.lang.String` | `setAuditFileAccessSuccess(java.lang.String realmName, java.lang.String userName, boolean b, java.lang.String submitter)` Set whether audit successful ACCESS actions for the user.
`java.lang.String` | `setAuditManageFail(java.lang.String realmName, java.lang.String userName, boolean b, java.lang.String submitter)` Set whether audit failing MANAGE actions for the user.
`java.lang.String` | `setAuditManageSuccess(java.lang.String realmName, java.lang.String userName, boolean b, java.lang.String submitter)` Set whether audit successful MANAGE actions for the user.
`void` | `setCurRealm(java.lang.String realm)` Set the current edit Realm in JReport server.
`java.lang.String` | `setGroupPrivileges(java.lang.String realmName, java.lang.String submitter, java.lang.String groupName, java.util.Vector privileges)` set privileges for group
`java.lang.String` | `setMemberPermissions(java.lang.String realmName, java.lang.String aclName, java.lang.String memberName, java.util.Vector permissions, boolean isNegative, java.lang.String submitter)` Deprecated. This method was not effective since V6.
`java.lang.String` | `setNoAudit(java.lang.String realmName, java.lang.String userName, boolean b, java.lang.String submitter)` Set whether no event to be audited for the user.
`void` | `setPrivileges(java.lang.String realmName, java.lang.String submitter, java.util.Hashtable[] privileges)` Set privileges of users
`java.lang.String` | `setRolePrivileges(java.lang.String realmName, java.lang.String submitter, java.lang.String roleName, java.util.Vector privileges)` set privileges for role
`void` | `setRolePrivileges(java.lang.String roleName, java.util.Vector privileges)` Deprecated. Server V7.1 replaced by `setRolePrivileges(String realmName, String submitter, String roleName, Vector privileges) throws NoSuchRoleException, NoSuchRealmException;`.
`java.lang.String` | `setUserPrivileges(java.lang.String realmName, java.lang.String submitter, java.lang.String userName, java.util.Vector privileges)` set privileges for user
`void` | `setUserPrivileges(java.lang.String userName, java.util.Vector privileges)` Deprecated. Server V7.1 replaced by `setUserPrivileges(String realmName, String submitter, String userName, Vector privileges) throws NoSuchUserException, NoSuchRealmException;`.

Method Detail

### getCurRealm

    java.lang.String getCurRealm()

  Get the current edit Realm in JReport server.

### setCurRealm

    void setCurRealm(java.lang.String realm)

  Set the current edit Realm in JReport server.

### getActiveRealm

    java.lang.String getActiveRealm()

  Get the active Realm in JReport server.

### getAllRealmNames

    java.util.Enumeration getAllRealmNames()

  Get all realm name list in report server.

  Returns:
    the enumeration represent all realm name list.
  Since:

### addRealm

    java.lang.String addRealm(java.lang.String realmName,
                              java.lang.String submitter,
                              int scheme)
                              throws NoSuchRealmException,
                                     BadRealmException,
                                     NoSuchAclException,
                                     java.security.acl.NotOwnerException,
                                     NoSuchUserException,
                                     InUseException

  Add a new realm specified by realmName.

  Parameters:
    `realmName` - new realm name
    `submitter` - the user who request this action.
    `scheme` - Realm authentication scheme, 0: basic authentication,1: degist authentication
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException` - if acl does not exist.
    `java.security.acl.NotOwnerException` - if the Principal attempting the modification is not an owner.
    `NoSuchUserException` - if user does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
  Since:

### removeRealm

    java.lang.String removeRealm(java.lang.String realmName,
                                 java.lang.String submitter)

  Remove a realm spcified by realmName.

  Parameters:
    `realmName` - new realm name
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs, or null if success.
  Since:

### addGroup

    java.lang.String addGroup(java.lang.String realmName,
                              java.lang.String groupName,
                              java.lang.String description,
                              java.lang.String submitter)
                              throws NoSuchRealmException,
                                     BadRealmException,
                                     NoSuchGroupException,
                                     InUseException,
                                     java.io.IOException

  Add a new group into the realm.

  Parameters:
    `realmName` - the realm name
    `groupName` - the new group name
    `description` - the new group description
    `submitter` - the user who request this action
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
    `java.io.IOException` - if error occurs when try to save data.
  Since:
    server V7.1

### removeGroup

    java.lang.String removeGroup(java.lang.String realmName,
                                 java.lang.String groupName,
                                 java.lang.String submitter)
                                 throws NoSuchRealmException,
                                        BadRealmException,
                                        NoSuchGroupException,
                                        InUseException

  Remove a group from the realm.

  Parameters:
    `realmName` - the realm name.
    `groupName` - the new group name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
  Since:
    server V7.1

### getAllGroups

    java.util.Enumeration getAllGroups(java.lang.String realmName)
                                       throws NoSuchRealmException,
                                              BadRealmException

  Deprecated. This method was not effective since Server V6.0

  Get all group list in the realm.

  Parameters:
    `realmName` - the realm name.
  Returns:
    the enumeration represent all group list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.

### getAllGroups

    java.util.Vector getAllGroups(java.lang.String realmName,
                                  java.lang.String submitter)
                                  throws NoSuchRealmException,
                                         BadRealmException

  Deprecated. This method was not effective since Server V7.1. It was replaced by the method: getAllJGroups();

  Get all group list in the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the vector represent all group list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    Server V7.1

### getAllJGroups

    JGroup[] getAllJGroups(java.lang.String realmName,
                           java.lang.String submitter)
                           throws NoSuchRealmException,
                                  BadRealmException

  A JGroup array that contain all group in server

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the array represent all group list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    Server V8
  See Also:
    `JGroup`

### getAllGroupNames

    java.util.Enumeration getAllGroupNames(java.lang.String realmName)
                                           throws NoSuchRealmException,
                                                  BadRealmException

  Get all group name list in the realm.

  Parameters:
    `realmName` - the realm name.
  Returns:
    the enumeration represent all group name list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    server V7.1

### getGroup

    java.security.acl.Group getGroup(java.lang.String realmName,
                                     java.lang.String groupName)
                                     throws NoSuchRealmException,
                                            BadRealmException,
                                            NoSuchGroupException

  Deprecated. This method was not effective since Server V6.0

  Get a group specified by groupName.

  Parameters:
    `realmName` - the realm name.
    `groupName` - the group name.
  Returns:
    a Group that request.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:

### getGroupByName

    Group getGroupByName(java.lang.String realmName,
                         java.lang.String submitter,
                         java.lang.String groupName)
                         throws NoSuchRealmException,
                                BadRealmException,
                                NoSuchGroupException

  Deprecated. This method was not effective since Server V7.1

  Get a group specified by group name

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Group that request.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    server V7.1

### getJGroupByName

    JGroup getJGroupByName(java.lang.String realmName,
                           java.lang.String submitter,
                           java.lang.String groupName)
                           throws NoSuchRealmException,
                                  BadRealmException,
                                  NoSuchGroupException

  Get a group specified by group name

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Group that request.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    server V8
  See Also:
    `JGroup`

### getGroupMemberCount

    int getGroupMemberCount(java.lang.String realmName,
                            java.lang.String groupName)
                            throws NoSuchRealmException,
                                   BadRealmException,
                                   NoSuchGroupException

  Get member count in a group.

  Parameters:
    `realmName` - the realm name.
    `groupName` - the group name.
  Returns:
    the member count in specified group.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    server 7.1

### addUserIntoGroup

    java.lang.String addUserIntoGroup(java.lang.String realmName,
                                      java.lang.String submitter,
                                      java.lang.String userName,
                                      java.lang.String groupName)
                                      throws NoSuchRealmException,
                                             BadRealmException,
                                             NoSuchGroupException,
                                             NoSuchUserException

  Add a user into a group as sub user

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `userName` - the user name
    `groupName` - the group name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchUserException` - if user does not exist.
  Since:
    ServerV7.1

### addSubGroupIntoGroup

    java.lang.String addSubGroupIntoGroup(java.lang.String realmName,
                                          java.lang.String submitter,
                                          java.lang.String subGroupName,
                                          java.lang.String groupName)
                                          throws NoSuchRealmException,
                                                 BadRealmException,
                                                 NoSuchGroupException

  add a group into a group as sub group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `subGroupName` - the sub group name
    `groupName` - the group name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV7.1

### addGroupIntoRole

    java.lang.String addGroupIntoRole(java.lang.String realmName,
                                      java.lang.String submitter,
                                      java.lang.String groupName,
                                      java.lang.String roleName)
                                      throws NoSuchRealmException,
                                             BadRealmException,
                                             NoSuchGroupException,
                                             NoSuchRoleException

  add a group to role as a memeber

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
    `roleName` - the role name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRoleException` - if role does not exist.
  Since:
    ServerV7.1

### removeUserFromGroup

    java.lang.String removeUserFromGroup(java.lang.String realmName,
                                         java.lang.String submitter,
                                         java.lang.String userName,
                                         java.lang.String groupName)
                                         throws NoSuchRealmException,
                                                BadRealmException,
                                                NoSuchGroupException,
                                                NoSuchUserException

  remove a user from the group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `userName` - the user name
    `groupName` - the group name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchUserException` - if user does not exist.
  Since:
    ServerV7.1

### removeSubGroupFromGroup

    java.lang.String removeSubGroupFromGroup(java.lang.String realmName,
                                             java.lang.String submitter,
                                             java.lang.String subGroupName,
                                             java.lang.String groupName)
                                             throws NoSuchRealmException,
                                                    BadRealmException,
                                                    NoSuchGroupException

  remove a sub group from the group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `subGroupName` - the sub group name
    `groupName` - the group name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV7.1

### removeGroupFromRole

    java.lang.String removeGroupFromRole(java.lang.String realmName,
                                         java.lang.String submitter,
                                         java.lang.String groupName,
                                         java.lang.String roleName)
                                         throws NoSuchRealmException,
                                                BadRealmException,
                                                NoSuchGroupException,
                                                NoSuchRoleException

  remove a group from the role

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
    `roleName` - the role name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRoleException` - if role does not exist.
  Since:
    ServerV7.1

### getSubGroupsByGroup

    java.util.Vector getSubGroupsByGroup(java.lang.String realmName,
                                         java.lang.String submitter,
                                         java.lang.String groupName)
                                         throws NoSuchGroupException,
                                                NoSuchRealmException,
                                                BadRealmException

  Deprecated. This method was not effective since Server V8, replace by the method getJUsersByJGroup().

  Get sub groups from the parent group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Vector save the sub groups' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV7.1

### getSubJGroupsByJGroup

    JGroup[] getSubJGroupsByJGroup(java.lang.String realmName,
                                   java.lang.String submitter,
                                   java.lang.String groupName)
                                   throws NoSuchGroupException,
                                          NoSuchRealmException,
                                          BadRealmException

  Get sub groups from the parent group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Vector save the sub groups' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV8
  See Also:
    `JGroup`

### getUsersByGroup

    java.util.Vector getUsersByGroup(java.lang.String realmName,
                                     java.lang.String submitter,
                                     java.lang.String groupName)
                                     throws NoSuchGroupException,
                                            NoSuchRealmException,
                                            BadRealmException

  Deprecated. This method was not effective since Server V8, replace by the method getJUsersByJGroup().

  Get users from the parent group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Vector save the sub users' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV7.1

### getJUsersByJGroup

    JUser[] getJUsersByJGroup(java.lang.String realmName,
                              java.lang.String submitter,
                              java.lang.String groupName)
                              throws NoSuchGroupException,
                                     NoSuchRealmException,
                                     BadRealmException

  Get sub user object array from the parent group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Vector save the sub users' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV8
  See Also:
    `JUser`

### getRolesByGroup

    java.util.Vector getRolesByGroup(java.lang.String realmName,
                                     java.lang.String submitter,
                                     java.lang.String groupName)
                                     throws NoSuchGroupException,
                                            NoSuchRealmException,
                                            BadRealmException

  Deprecated. This method was not effective since Server V8, replace by the method getJRolesByJGroup().

  Get parent roles' names from the group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Vector save the parent roles' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV7.1

### getJRolesByJGroup

    JRole[] getJRolesByJGroup(java.lang.String realmName,
                              java.lang.String submitter,
                              java.lang.String groupName)
                              throws NoSuchGroupException,
                                     NoSuchRealmException,
                                     BadRealmException

  Get parent roles' object from the group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
  Returns:
    a Vector save the parent roles' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    ServerV8
  See Also:
    `JRole`

### getGroupsByRole

    java.util.Vector getGroupsByRole(java.lang.String realmName,
                                     java.lang.String submitter,
                                     java.lang.String roleName)
                                     throws NoSuchRoleException,
                                            NoSuchRealmException,
                                            BadRealmException

  Deprecated. This method was not effective since Server V8, replace by the method getJGroupsByJRole().

  Get sub groups from the role

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `roleName` - the role name
  Returns:
    a Vector save the sub groups' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    ServerV7.1

### getJGroupsByJRole

    JGroup[] getJGroupsByJRole(java.lang.String realmName,
                               java.lang.String submitter,
                               java.lang.String roleName)
                               throws NoSuchRoleException,
                                      NoSuchRealmException,
                                      BadRealmException

  Get sub groups from the role

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `roleName` - the role name
  Returns:
    a Vector save the sub groups' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    ServerV8
  See Also:
    `JRole`

### getUser

    User getUser(java.lang.String submitter,
                 java.lang.String realmName,
                 java.lang.String userName)
                 throws NoSuchUserException,
                        NoSuchRealmException

  Deprecated. This method was not effective since Server V8, replace by the method getJUser().

  Get a user

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name
  Returns:
    a `User` object
  Throws:
    `NoSuchUserException` - if there is no specific user in security manager.
    `NoSuchRealmException`
  Since:
    V6

### getJUser

    JUser getJUser(java.lang.String submitter,
                   java.lang.String realmName,
                   java.lang.String userName)
                   throws NoSuchUserException,
                          NoSuchRealmException

  Get a user

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name
  Returns:
    a `User` object
  Throws:
    `NoSuchUserException` - if there is no specific user in security manager.
    `NoSuchRealmException`
  Since:
    V8
  See Also:
    `JUser`

### addUser

    java.lang.String addUser(java.lang.String realmName,
                             java.lang.String userName,
                             java.lang.String password,
                             java.lang.String fullName,
                             java.lang.String description,
                             java.lang.String email,
                             boolean passNeverExpire,
                             int passExpireTime,
                             boolean passPermitBlank,
                             int passMinLength,
                             boolean disabledAccount,
                             java.lang.String submitter)
                             throws NoSuchRealmException,
                                    BadRealmException,
                                    NoSuchUserException,
                                    InUseException,
                                    java.io.IOException

  Deprecated. This method is not effective since V6.

  Add a new user into the realm.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `password` - the new user password.
    `fullName` - the new user full name.
    `description` - the new user description.
    `email` - the new user email.
    `passNeverExpire` - whether the password can be expired, true if password is not expired.
    `passExpireTime` - if passNeverExpire is false, represent after how long time password will be expired .
    `passPermitBlank` - whether the password can be blank, true if blank is permited.
    `passMinLength` - if password can not be blank, represent the password's minimum length.
    `disabledAccount` - whether this user account can be used.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### addUser

    java.lang.String addUser(java.lang.String realmName,
                             java.lang.String submitter,
                             java.lang.String userName,
                             java.lang.String password,
                             java.lang.String fullName,
                             java.lang.String description,
                             java.lang.String email,
                             boolean passNeverExpire,
                             int passExpireTime,
                             boolean passPermitBlank,
                             int passMinLength,
                             boolean disabledAccount)
                             throws NoSuchRealmException,
                                    UserExistsException

  Add a new user into the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
    `userName` - the user name.
    `password` - the new user password.
    `fullName` - the new user full name.
    `description` - the new user description.
    `email` - the new user email.
    `passNeverExpire` - whether the password can be expired, true if password is not expired.
    `passExpireTime` - if passNeverExpire is false, represent after how long time password will be expired .
    `passPermitBlank` - whether the password can be blank, true if blank is permited.
    `passMinLength` - if password can not be blank, represent the password's minimum length.
    `disabledAccount` - whether this user account can be used.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `UserExistsException` - if user specified by userName exist.
    `NoSuchRealmException`
    `UserExistsException`
  Since:
    V6

### removeUser

    java.lang.String removeUser(java.lang.String realmName,
                                java.lang.String userName,
                                java.lang.String submitter)
                                throws NoSuchRealmException,
                                       BadRealmException,
                                       NoSuchUserException,
                                       InUseException

  Remove a user from the realm.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
  Since:

### getUserFullname

    java.lang.String getUserFullname(java.lang.String realmName,
                                     java.lang.String userName)
                                     throws NoSuchRealmException,
                                            BadRealmException,
                                            NoSuchUserException

  Get user's full name.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### getUserDescription

    java.lang.String getUserDescription(java.lang.String realmName,
                                        java.lang.String userName)
                                        throws NoSuchRealmException,
                                               BadRealmException,
                                               NoSuchUserException

  Get user's description.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### getUserEmail

    java.lang.String getUserEmail(java.lang.String realmName,
                                  java.lang.String userName)
                                  throws NoSuchRealmException,
                                         BadRealmException,
                                         NoSuchUserException

  Get user's email address.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### isUserAccountDisable

    boolean isUserAccountDisable(java.lang.String realmName,
                                 java.lang.String userName)
                                 throws NoSuchRealmException,
                                        BadRealmException,
                                        NoSuchUserException

  Check whether user account is disabled.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### isUserPasswordNeverExpire

    boolean isUserPasswordNeverExpire(java.lang.String realmName,
                                      java.lang.String userName)
                                      throws NoSuchRealmException,
                                             BadRealmException,
                                             NoSuchUserException

  Check if user password is never expire.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### getUserPasswordExpireTime

    int getUserPasswordExpireTime(java.lang.String realmName,
                                  java.lang.String userName)
                                  throws NoSuchRealmException,
                                         BadRealmException,
                                         NoSuchUserException

  Get user password expire time

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### isUserPasswordPermitBlank

    boolean isUserPasswordPermitBlank(java.lang.String realmName,
                                      java.lang.String userName)
                                      throws NoSuchRealmException,
                                             BadRealmException,
                                             NoSuchUserException

  Check if user password permit blank.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### getUserPasswordMinLength

    int getUserPasswordMinLength(java.lang.String realmName,
                                 java.lang.String userName)
                                 throws NoSuchRealmException,
                                        BadRealmException,
                                        NoSuchUserException

  Get user password minimum length.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    user's full name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.

### changePassword

    java.lang.String changePassword(java.lang.String realmName,
                                    java.lang.String userName,
                                    java.lang.String subPwd,
                                    java.lang.String newPwd,
                                    java.lang.String submitter)
                                    throws NoSuchRealmException,
                                           BadRealmException,
                                           NoSuchUserException

  Change user password.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `subPwd` - submitter's password
    `newPwd` - new password
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
  Since:

### editLDAPUser

    java.lang.String editLDAPUser(java.lang.String realmName,
                                  java.lang.String userName,
                                  java.lang.String fullName,
                                  java.lang.String description,
                                  java.lang.String email,
                                  java.lang.String submitter)
                                  throws NoSuchRealmException,
                                         BadRealmException,
                                         NoSuchUserException,
                                         InUseException,
                                         java.io.IOException

  Edit the specified user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `fullName` - the new user full name.
    `description` - the new user description.
    `email` - the new user email.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
    `java.io.IOException` - if error occurs when try to save data.
  Since:
    V6

### editUser

    java.lang.String editUser(java.lang.String realmName,
                              java.lang.String userName,
                              java.lang.String fullName,
                              java.lang.String description,
                              java.lang.String email,
                              boolean passNeverExpire,
                              int passExpireTime,
                              boolean passPermitBlank,
                              int passMinLength,
                              boolean disabledAccount,
                              java.lang.String submitter)
                              throws NoSuchRealmException,
                                     BadRealmException,
                                     NoSuchUserException,
                                     InUseException,
                                     java.io.IOException

  Edit the specified user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `fullName` - the new user full name.
    `description` - the new user description.
    `email` - the new user email.
    `passNeverExpire` - whether the password can be expired, true if password is not expired.
    `passExpireTime` - if passNeverExpire is false, represent after how long time password will be expired .
    `passPermitBlank` - whether the password can be blank, true if blank is permited.
    `passMinLength` - if password can not be blank, represent the password's minimum length.
    `disabledAccount` - whether this user account can be used.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `InUseException` - if attempting to delete an object, such as a user or group, which is in use as part of the realm's security policy.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### getAllUserNames

    java.util.Enumeration getAllUserNames(java.lang.String realmName)
                                          throws NoSuchRealmException,
                                                 BadRealmException

  Get all user name list in the realm.

  Parameters:
    `realmName` - the realm name.
  Returns:
    the enumeration represent all user name list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:

### getAllUser

    java.util.Vector getAllUser(java.lang.String realmName,
                                java.lang.String submitter)
                                throws NoSuchRealmException,
                                       BadRealmException

  Deprecated. This method was not effective since Server V8, replace by the method getJUser().

  Get all users set in the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the vector represent all user name list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V6

### getAllJUser

    JUser[] getAllJUser(java.lang.String realmName,
                        java.lang.String submitter)
                        throws NoSuchRealmException,
                               BadRealmException

  Get all users set in the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the array represent all user name list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V8
  See Also:
    `JUser`

### getAllUserNames

    java.util.Enumeration getAllUserNames(java.lang.String realmName,
                                          java.lang.String groupName)
                                          throws NoSuchRealmException,
                                                 BadRealmException,
                                                 NoSuchGroupException

  Deprecated. This method was not effective since Server V6.0

  Get all user name list in the group.

  Parameters:
    `realmName` - the realm name.
    `groupName` - the group name.
  Returns:
    the enumeration represent all user name list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:

### getAllUserNamesByRole

    java.util.Enumeration getAllUserNamesByRole(java.lang.String submitter,
                                                java.lang.String realmName,
                                                java.lang.String roleName)
                                                throws NoSuchRealmException,
                                                       BadRealmException,
                                                       NoSuchRoleException

  Get all user name list in the role.

  Parameters:
    `submitter` - the user who request this action.
    `realmName` - the realm name.
    `roleName` - the role name.
  Returns:
    the enumeration represent all user name list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### getParentRolesByUser

    java.util.Vector getParentRolesByUser(java.lang.String realmName,
                                          java.lang.String submitter,
                                          java.lang.String userName)
                                          throws NoSuchUserException,
                                                 NoSuchRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getParentJRolesByJUser().

  Get roles which specific user has

  Parameters:
    `realmName` - the realm name.
    `submitter` - user id who sends this request
    `userName` - the user name
  Returns:
    a `Vector` object contains role names which specific user has, or null if submitter has not permission for get roles by this user.
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRealmException`
  Since:
    V6

### getParentJRolesByJUser

    JRole[] getParentJRolesByJUser(java.lang.String realmName,
                                   java.lang.String submitter,
                                   java.lang.String userName)
                                   throws NoSuchUserException,
                                          NoSuchRealmException

  Get roles which specific user has

  Parameters:
    `realmName` - the realm name.
    `submitter` - user id who sends this request
    `userName` - the user name
  Returns:
    a `Vector` object contains role names which specific user has, or null if submitter has not permission for get roles by this user.
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRealmException`
  Since:
    V8
  See Also:
    `JRole`

### getGroupsByUser

    java.util.Vector getGroupsByUser(java.lang.String realmName,
                                     java.lang.String submitter,
                                     java.lang.String userName)
                                     throws NoSuchUserException,
                                            NoSuchRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getJGroupsByJUser().

  Get the groups which specifie user has

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `userName` - the user name
  Returns:
    a `Vector` object contains group names which specific user has, or null if submitter has not permission for get groups by this user.
  Throws:
    `NoSuchUserException` - if the user does not exist
    `NoSuchRealmException` - if the realm does not exist
  Since:
    server V7.1

### getJGroupsByJUser

    JGroup[] getJGroupsByJUser(java.lang.String realmName,
                               java.lang.String submitter,
                               java.lang.String userName)
                               throws NoSuchUserException,
                                      NoSuchRealmException

  Get the groups which specifie user has

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `userName` - the user name
  Returns:
    a `Vector` object contains group names which specific user has, or null if submitter has not permission for get groups by this user.
  Throws:
    `NoSuchUserException` - if the user does not exist
    `NoSuchRealmException` - if the realm does not exist
  Since:
    server V8
  See Also:
    `JGroup`

### addNewParentRolesToUser

    java.lang.String addNewParentRolesToUser(java.lang.String realmName,
                                             java.lang.String submitter,
                                             java.lang.String userName,
                                             java.lang.String roleName)
                                             throws NoSuchRoleException,
                                                    NoSuchUserException,
                                                    NoSuchRealmException

  Add some new parent role to a user.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `userName` - the name of user that will be added some new parent role
    `roleName` - the new parent role's name.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    V6

### addMemberIntoGroup

    java.lang.String addMemberIntoGroup(java.lang.String realmName,
                                        java.lang.String groupName,
                                        java.lang.String memberName,
                                        java.lang.String submitter)
                                        throws NoSuchRealmException,
                                               BadRealmException,
                                               NoSuchGroupException,
                                               NoSuchUserException,
                                               java.io.IOException

  Deprecated. This method was not effective since V6.

  Add a member into a group, the member can be a user or a group in same realm.

  Parameters:
    `realmName` - the realm name.
    `groupName` - the group name that add member into.
    `memberName` - the member name, can be a user name or a group name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### addUserIntoRole

    java.lang.String addUserIntoRole(java.lang.String realmName,
                                     java.lang.String roleName,
                                     java.lang.String userName,
                                     java.lang.String submitter)
                                     throws NoSuchRealmException,
                                            BadRealmException,
                                            NoSuchUserException,
                                            NoSuchRoleException

  Add a user into a role.

  Parameters:
    `realmName` - the realm name.
    `roleName` - the group name that add member into.
    `userName` - the user name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchUserException` - if user does not exist.
  Since:
    V6

### removeMemberFromGroup

    java.lang.String removeMemberFromGroup(java.lang.String realmName,
                                           java.lang.String groupName,
                                           java.lang.String memberName,
                                           java.lang.String submitter)
                                           throws NoSuchRealmException,
                                                  BadRealmException,
                                                  NoSuchGroupException,
                                                  NoSuchUserException,
                                                  java.io.IOException

  Deprecated. This method was not effective since V6.

  Remove a member from the group.

  Parameters:
    `realmName` - the realm name.
    `groupName` - the group name that add member into.
    `memberName` - the member name, can be a user name or a group name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### removeUserFromRole

    java.lang.String removeUserFromRole(java.lang.String realmName,
                                        java.lang.String roleName,
                                        java.lang.String userName,
                                        java.lang.String submitter)
                                        throws NoSuchRealmException,
                                               BadRealmException,
                                               NoSuchRoleException,
                                               NoSuchUserException

  Deprecated. This method was not effective since Server V7.0

  Remove a user from the role.

  Parameters:
    `realmName` - the realm name.
    `roleName` - the role name that remove from role.
    `userName` - the user name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchUserException` - if user does not exist.
  Since:
    V6

### getUserParentRolesCount

    int getUserParentRolesCount(java.lang.String realmName,
                                java.lang.String userName)
                                throws NoSuchUserException

  Get the count if a user's parent roles' count

  Parameters:
    `realmName` - the realm name.
    `userName` - the user's name
  Returns:
    the count of parent roles, if have errors happening, it will return -1
  Throws:
    `NoSuchUserException` - if user does not exist.
  Since:
    V6

### getUserParentGroupsCount

    int getUserParentGroupsCount(java.lang.String realmName,
                                 java.lang.String userName)
                                 throws NoSuchRealmException,
                                        NoSuchUserException

  Get the count if a user's parent groups count

  Parameters:
    `realmName` - the realm name
    `userName` - the user's name
  Returns:
    the count of parent groups
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `NoSuchUserException` - if user does not exist.
  Since:
    server 7.1

### removeParentRolesFromUser

    java.lang.String removeParentRolesFromUser(java.lang.String realmName,
                                               java.lang.String submitter,
                                               java.lang.String userName,
                                               java.lang.String roleName)
                                               throws NoSuchUserException,
                                                      NoSuchRoleException,
                                                      NoSuchRealmException

  Remove a parent role from a user

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
    `userName` - the name of user that will be deleted a parent role
    `roleName` - the new parent role's name.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    V6.

### addAcl

    java.lang.String addAcl(java.lang.String realmName,
                            java.lang.String aclName,
                            java.lang.String submitter)
                            throws NoSuchRealmException,
                                   BadRealmException,
                                   java.io.IOException

  Deprecated. This method was not effective since V6.

  Add a new Acl into the realm.

  Parameters:
    `realmName` - the realm name.
    `aclName` - the new Acl name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### removeAcl

    java.lang.String removeAcl(java.lang.String realmName,
                               java.lang.String aclName,
                               java.lang.String submitter)
                               throws NoSuchRealmException,
                                      BadRealmException,
                                      NoSuchAclException

  Deprecated. This method was not effective since V6.

  Remove a Acl from the realm.

  Parameters:
    `realmName` - the realm name.
    `aclName` - the new Acl name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException` - if acl does not exist.
  Since:

### addMemberIntoAcl

    java.lang.String addMemberIntoAcl(java.lang.String realmName,
                                      java.lang.String aclName,
                                      java.lang.String memberName,
                                      java.lang.String submitter)
                                      throws NoSuchRealmException,
                                             BadRealmException,
                                             NoSuchAclException,
                                             java.security.acl.NotOwnerException,
                                             java.io.IOException

  Deprecated. This method was not effective since V6.

  Add a member into the Acl, the member can be a user or a group in same realm.

  Parameters:
    `realmName` - the realm name.
    `aclName` - the new Acl name.
    `memberName` - the member name, can be a user name or a group name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException` - if acl does not exist.
    `java.security.acl.NotOwnerException` - if the Principal attempting the modification is not an owner.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### setMemberPermissions

    java.lang.String setMemberPermissions(java.lang.String realmName,
                                          java.lang.String aclName,
                                          java.lang.String memberName,
                                          java.util.Vector permissions,
                                          boolean isNegative,
                                          java.lang.String submitter)
                                          throws NoSuchRealmException,
                                                 BadRealmException,
                                                 NoSuchAclException,
                                                 java.security.acl.NotOwnerException,
                                                 java.io.IOException

  Deprecated. This method was not effective since V6.

  Specify the member's permissions.

  Parameters:
    `realmName` - the realm name.
    `aclName` - the new Acl name.
    `memberName` - the member name, can be a user name or a group name.
    `permissions` - the permissions that set to this user. permissions contained in Vector are defined in `jet.server.api.Permissions`.
    `isNegative` - whether the permissions is negative.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException` - if acl does not exist.
    `java.security.acl.NotOwnerException` - if the Principal attempting the modification is not an owner.
    `java.io.IOException` - if error occurs when try to save data.
  Since:
  See Also:
    `Permissions`

### removeMemberFromAcl

    java.lang.String removeMemberFromAcl(java.lang.String realmName,
                                         java.lang.String aclName,
                                         java.lang.String memberName,
                                         java.lang.String submitter)
                                         throws NoSuchRealmException,
                                                BadRealmException,
                                                NoSuchAclException,
                                                java.security.acl.NotOwnerException,
                                                java.io.IOException

  Deprecated. This method was not effective since V6.

  Remove a member from the Acl.

  Parameters:
    `realmName` - the realm name.
    `aclName` - the new Acl name.
    `memberName` - the member name, can be a user name or a group name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException` - if acl does not exist.
    `java.security.acl.NotOwnerException` - if the Principal attempting the modification is not an owner.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### getAclNames

    java.util.Enumeration getAclNames(java.lang.String realmName)
                                      throws NoSuchRealmException,
                                             BadRealmException

  Deprecated. This method was not effective since V6.

  Get all Acl name list in the realm.

  Parameters:
    `realmName` - the realm name.
  Returns:
    the enumeration that represent Acl name list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:

### getAcls

    java.util.Enumeration getAcls(java.lang.String realmName)
                                  throws NoSuchRealmException,
                                         BadRealmException

  Deprecated. This method was not effective since V6.

  Get all Acl list in the real.

  Parameters:
    `realmName` - the realm name.
  Returns:
    the enumeration that represent Acl list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:

### getAcl

    java.security.acl.Acl getAcl(java.lang.String realmName,
                                 java.lang.String aclName)
                                 throws NoSuchRealmException,
                                        BadRealmException,
                                        NoSuchAclException

  Deprecated. This method was not effective since V6.

  Get an Acl specified by aclName.

  Parameters:
    `realmName` - the realm name.
    `aclName` - the Acl name.
  Returns:
    An Acl that request.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException` - if acl does not exist.
  Since:

### getProtections

    java.util.Enumeration getProtections(java.lang.String realmName)
                                         throws NoSuchRealmException,
                                                BadRealmException

  Deprecated. This method is not effective since V6.

  Get all protections in specified realm. A protection combines a resource node (Not for a virtual resource node) with an ACL, which means that the access of the resource node is controlled by that ACL.

  Parameters:
    `realmName` - the realm name.
  Returns:
    the enumeration that represent resource path name of protection list in the realm.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.

### getCombinedAclName

    java.lang.String getCombinedAclName(java.lang.String realmName,
                                        java.lang.String resourcePath)
                                        throws NoSuchRealmException,
                                               BadRealmException

  Deprecated. This method was not effective since V6.

  Get acl name that combined with specified resource path in a protection.

  Parameters:
    `realmName` - the realm name.
    `resourcePath` - the resource node represented by path.
  Returns:
    the acl name.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.

### addProtection

    java.lang.String addProtection(java.lang.String realmName,
                                   java.lang.String resourcePath,
                                   java.lang.String aclName,
                                   java.lang.String submitter)
                                   throws NoSuchRealmException,
                                          BadRealmException,
                                          java.io.IOException

  Deprecated. This method was not effective since V6.

  Add a protection into the realm. A protection combines a resource node (Not for a virtual resource node) with an ACL, which means that the access of the resource node is controlled by that ACL.

  Parameters:
    `realmName` - the realm name.
    `resourcePath` - the resource node represented by path.
    `aclName` - the Acl name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### removeProtection

    java.lang.String removeProtection(java.lang.String realmName,
                                      java.lang.String resourcePath,
                                      java.lang.String submitter)
                                      throws NoSuchRealmException,
                                             BadRealmException,
                                             java.io.IOException

  Deprecated. This method was not effective since V6.

  Remove a protection from the realm. A protection combines a resource node (Not for a virtual resource node) with an ACL, which means that the access of the resource node is controlled by that ACL.

  Parameters:
    `realmName` - the realm name.
    `resourcePath` - the resource node represented by path.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### editProtection

    java.lang.String editProtection(java.lang.String realmName,
                                    java.lang.String resourcePath,
                                    java.lang.String aclName,
                                    java.lang.String submitter)
                                    throws NoSuchRealmException,
                                           BadRealmException,
                                           NoSuchAclException

  Deprecated. This method was not effective since V6.

  Edit a protection from the realm. A protection combines a resource node (Not for a virtual resource node) with an ACL, which means that the access of the resource node is controlled by that ACL.

  Parameters:
    `realmName` - the realm name.
    `resourcePath` - the resource node represented by path.
    `aclName` - the Acl name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchAclException`
  Since:

### setNoAudit

    java.lang.String setNoAudit(java.lang.String realmName,
                                java.lang.String userName,
                                boolean b,
                                java.lang.String submitter)
                                throws NoSuchRealmException,
                                       BadRealmException,
                                       NoSuchUserException,
                                       java.io.IOException

  Set whether no event to be audited for the user. These audit settings can point out whether report server logs users' MANAGE and/or ACCESS actions. If those settings are disabled (say, set to false), the actions of that user will not be logged. The audit setting takes effect when the log level in the report server's configuration is turned on. If the log level is none, then the settings will be ignored.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `b` - whether logs this user's MANAGE and ACCESS actions.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### setAuditFileAccessSuccess

    java.lang.String setAuditFileAccessSuccess(java.lang.String realmName,
                                               java.lang.String userName,
                                               boolean b,
                                               java.lang.String submitter)
                                               throws NoSuchRealmException,
                                                      BadRealmException,
                                                      NoSuchUserException,
                                                      java.io.IOException

  Set whether audit successful ACCESS actions for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `b` - whether logs this user's successful ACCESS actions.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### setAuditFileAccessFail

    java.lang.String setAuditFileAccessFail(java.lang.String realmName,
                                            java.lang.String userName,
                                            boolean b,
                                            java.lang.String submitter)
                                            throws NoSuchRealmException,
                                                   BadRealmException,
                                                   NoSuchUserException,
                                                   java.io.IOException

  Set whether audit failing ACCESS actions for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `b` - whether logs this user's failing ACCESS actions.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### setAuditManageSuccess

    java.lang.String setAuditManageSuccess(java.lang.String realmName,
                                           java.lang.String userName,
                                           boolean b,
                                           java.lang.String submitter)
                                           throws NoSuchRealmException,
                                                  BadRealmException,
                                                  NoSuchUserException,
                                                  java.io.IOException

  Set whether audit successful MANAGE actions for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `b` - whether logs this user's MANAGE actions.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### setAuditManageFail

    java.lang.String setAuditManageFail(java.lang.String realmName,
                                        java.lang.String userName,
                                        boolean b,
                                        java.lang.String submitter)
                                        throws NoSuchRealmException,
                                               BadRealmException,
                                               NoSuchUserException,
                                               java.io.IOException

  Set whether audit failing MANAGE actions for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
    `b` - whether logs this user's failing MANAGE actions.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `java.io.IOException` - if error occurs when try to save data.
  Since:

### isNoAudit

    boolean isNoAudit(java.lang.String realmName,
                      java.lang.String userName)
                      throws NoSuchRealmException,
                             BadRealmException,
                             NoSuchUserException

  Check if does not audit any ACCESS or MANAGE event for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    true if does not audit any event, otherwise false.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
  Since:

### isAuditFileAccessSuccess

    boolean isAuditFileAccessSuccess(java.lang.String realmName,
                                     java.lang.String userName)
                                     throws NoSuchRealmException,
                                            BadRealmException,
                                            NoSuchUserException

  Check if audit successful ACCESS event for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    true if need audit successful ACCESS event, otherwise false.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
  Since:

### isAuditFileAccessFail

    boolean isAuditFileAccessFail(java.lang.String realmName,
                                  java.lang.String userName)
                                  throws NoSuchRealmException,
                                         BadRealmException,
                                         NoSuchUserException

  Check if audit failing ACCESS event for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    true if need audit failing ACCESS event, otherwise false.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
  Since:

### isAuditManageSuccess

    boolean isAuditManageSuccess(java.lang.String realmName,
                                 java.lang.String userName)
                                 throws NoSuchRealmException,
                                        BadRealmException,
                                        NoSuchUserException

  Check if audit successful MANAGE event for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    true if need audit successful MANAGE event, otherwise false.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
  Since:

### isAuditManageFail

    boolean isAuditManageFail(java.lang.String realmName,
                              java.lang.String userName)
                              throws NoSuchRealmException,
                                     BadRealmException,
                                     NoSuchUserException

  Check if audit failing MANAGE event for the user.

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name.
  Returns:
    true if need audit failing MANAGE event, otherwise false.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
  Since:

### addRole

    java.lang.String addRole(java.lang.String realmName,
                             java.lang.String roleName,
                             java.lang.String description,
                             java.lang.String parentRoleName,
                             java.lang.String submitter)
                             throws NoSuchRealmException,
                                    BadRealmException,
                                    RoleExistsException

  Deprecated. This method is not effective since V7.0 .

  Add a new role into the realm.

  Parameters:
    `realmName` - the realm name.
    `roleName` - the new role name.
    `description` - the new role description.
    `parentRoleName` - the role's parent role name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `RoleExistsException` - if role exist.
  Since:
    V6

### addRole

    java.lang.String addRole(java.lang.String realmName,
                             java.lang.String roleName,
                             java.lang.String description,
                             java.lang.String submitter)
                             throws NoSuchRealmException,
                                    BadRealmException,
                                    RoleExistsException

  Add a new role into the realm.

  Parameters:
    `realmName` - the realm name.
    `roleName` - the new role name.
    `description` - the new role description.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `RoleExistsException` - if role exist.
  Since:
    V7.0

### removeRole

    java.lang.String removeRole(java.lang.String realmName,
                                java.lang.String roleName,
                                java.lang.String submitter)
                                throws NoSuchRealmException,
                                       BadRealmException,
                                       NoSuchRoleException

  Remove a role from the realm.

  Parameters:
    `realmName` - the realm name.
    `roleName` - the new role name.
    `submitter` - the user who request this action.
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### getAllRoles

    java.util.Vector getAllRoles(java.lang.String realmName,
                                 java.lang.String submitter)
                                 throws NoSuchRealmException,
                                        BadRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getAllJRoles().

  Get all role set in the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the vector represent all role list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V6

### getAllJRoles

    JRole[] getAllJRoles(java.lang.String realmName,
                         java.lang.String submitter)
                         throws NoSuchRealmException,
                                BadRealmException

  Get all role set in the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the array represent all role list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V8
  See Also:
    `JRole`

### getAllRoleNames

    java.util.Vector getAllRoleNames(java.lang.String realmName,
                                     java.lang.String submitter)
                                     throws NoSuchRealmException,
                                            BadRealmException

  Get all role name list in the realm.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the user who request this action.
  Returns:
    the vector represent all group name list.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V6

### getRole

    Role getRole(java.lang.String submitter,
                 java.lang.String realmName,
                 java.lang.String roleName)
                 throws NoSuchRealmException,
                        BadRealmException,
                        NoSuchRoleException

  Deprecated. This method was not effective since Server V8, replaced by the method getJRole().

  Get a role specified by roleName.

  Parameters:
    `submitter` - the user who request this action.
    `realmName` - the realm name.
    `roleName` - the role name.
  Returns:
    a role that request.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### getJRole

    JRole getJRole(java.lang.String submitter,
                   java.lang.String realmName,
                   java.lang.String roleName)
                   throws NoSuchRealmException,
                          BadRealmException,
                          NoSuchRoleException

  Get a role specified by roleName.

  Parameters:
    `submitter` - the user who request this action.
    `realmName` - the realm name.
    `roleName` - the role name.
  Returns:
    a role that request.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V8
  See Also:
    `JRole`

### getRoleMemberCount

    int getRoleMemberCount(java.lang.String realmName,
                           java.lang.String roleName)
                           throws NoSuchRealmException,
                                  BadRealmException,
                                  NoSuchRoleException

  Get member count in a role.

  Parameters:
    `realmName` - the realm name.
    `roleName` - the role name.
  Returns:
    the member count in specified role.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### getSubRolesByRole

    java.util.Vector getSubRolesByRole(java.lang.String realmName,
                                       java.lang.String submitter,
                                       java.lang.String roleName)
                                       throws NoSuchRoleException,
                                              NoSuchRealmException,
                                              BadRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getSubJRolesByJRole().

  Get the set of a role's sub roles.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `roleName` - the role's name
  Returns:
    the sub roles' set
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### getSubJRolesByJRole

    JRole[] getSubJRolesByJRole(java.lang.String realmName,
                                java.lang.String submitter,
                                java.lang.String roleName)
                                throws NoSuchRoleException,
                                       NoSuchRealmException,
                                       BadRealmException

  Get the set of a role's sub roles.

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `roleName` - the role's name
  Returns:
    the sub roles' set
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V8
  See Also:
    `JRole`

### getSubUsersByRole

    java.util.Vector getSubUsersByRole(java.lang.String realmName,
                                       java.lang.String submitter,
                                       java.lang.String roleName)
                                       throws NoSuchRoleException,
                                              NoSuchRealmException,
                                              BadRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getSubJUsersByJRole().

  Get the set of a role's sub users

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `roleName` - the role's name
  Returns:
    the sub users' set
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### getSubJUsersByJRole

    JUser[] getSubJUsersByJRole(java.lang.String realmName,
                                java.lang.String submitter,
                                java.lang.String roleName)
                                throws NoSuchRoleException,
                                       NoSuchRealmException,
                                       BadRealmException

  Get the set of a role's sub users

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `roleName` - the role's name
  Returns:
    the sub users' set
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V8
  See Also:
    `JUser`

### removeRoleFromParentRole

    java.lang.String removeRoleFromParentRole(java.lang.String submitter,
                                              java.lang.String realmName,
                                              java.lang.String roleName,
                                              java.lang.String parentRoleName)
                                              throws NoSuchRoleException,
                                                     NoSuchRealmException,
                                                     BadRealmException

  Remove a role from a parent role

  Parameters:
    `submitter` - the submitter's name
    `realmName` - the realm name.
    `roleName` - the name of role that will be remove from a parent role.
    `parentRoleName` - the parent role's name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### removeUserFromParentRole

    java.lang.String removeUserFromParentRole(java.lang.String submitter,
                                              java.lang.String realmName,
                                              java.lang.String userName,
                                              java.lang.String parentRoleName)
                                              throws NoSuchRoleException,
                                                     NoSuchUserException,
                                                     NoSuchRealmException,
                                                     BadRealmException

  Remove a user from a parent role

  Parameters:
    `submitter` - the submitter's name
    `realmName` - the realm name.
    `userName` - the name of user that will be remove from a parent role.
    `parentRoleName` - the parent role's name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchUserException` - if user does not exist.
  Since:
    V6

### getSubUsersNameByRole

    java.util.Vector getSubUsersNameByRole(java.lang.String realmName,
                                           java.lang.String submitter,
                                           java.lang.String roleName)
                                           throws NoSuchRoleException,
                                                  NoSuchRealmException,
                                                  BadRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getSubJUsersNameByJRole().

  Get the set of a role's sub users' names

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `roleName` - the role's name
  Returns:
    the sub users' names set
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    V6

### addSubUserToRole

    java.lang.String addSubUserToRole(java.lang.String realmName,
                                      java.lang.String submitter,
                                      java.lang.String subUserName,
                                      java.lang.String roleName)
                                      throws NoSuchRoleException,
                                             NoSuchUserException,
                                             NoSuchRealmException,
                                             BadRealmException

  Add a sub user to a role

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `subUserName` - the sub user's name
    `roleName` - the role's name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V6

### addSubRoleToRole

    java.lang.String addSubRoleToRole(java.lang.String realmName,
                                      java.lang.String submitter,
                                      java.lang.String subRoleName,
                                      java.lang.String roleName)
                                      throws NoSuchRoleException,
                                             NoSuchRealmException,
                                             BadRealmException

  Add a sub role to a role

  Parameters:
    `realmName` - the realm name.
    `submitter` - the submitter's name
    `subRoleName` - the sub role's name
    `roleName` - the role's name
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRoleException` - if role does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    V6

### getReferUsers

    java.util.Vector getReferUsers(java.lang.String realmName,
                                   java.lang.String userName)
                                   throws NoSuchUserException,
                                          NoSuchRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getReferJUsers().

  Parameters:
    `realmName` - the realm name.
    `userName` - the user name
  Returns:
    The users' name that have same role or group with the user
  Throws:
    `NoSuchUserException` - if the user specified by userName not exist.
    `NoSuchRealmException` - if the realm specified by realmName does not exist.

### getReferRoles

    java.util.Vector getReferRoles(java.lang.String realmName,
                                   java.lang.String userName)
                                   throws NoSuchUserException,
                                          NoSuchRealmException

  Deprecated. This method was not effective since Server V8, replaced by the method getReferJRolers().

  Parameters:
    `realmName` - the realm name
    `userName` - the user name
  Returns:
    The roles name that have some relationships wiht the user. For instance: all roles that belong to this user.
  Throws:
    `NoSuchUserException` - if the user specified by userName not exist.
    `NoSuchRealmException` - if the realm specified by realmName does not exist.

### isAdminUser

    boolean isAdminUser(java.lang.String userName)

  Check the user is adminisitrator or not

  Parameters:
    `userName` - the user's name
  Returns:
    if the user is administrator return true, otherwise return false

### setUserPrivileges

    void setUserPrivileges(java.lang.String userName,
                           java.util.Vector privileges)

  Deprecated. Server V7.1 replaced by `setUserPrivileges(String realmName, String submitter, String userName, Vector privileges) throws NoSuchUserException, NoSuchRealmException;`.

  set privileges for user

  Parameters:
    `userName` - the user name
    `privileges` - a Vector save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES

### setUserPrivileges

    java.lang.String setUserPrivileges(java.lang.String realmName,
                                       java.lang.String submitter,
                                       java.lang.String userName,
                                       java.util.Vector privileges)
                                       throws NoSuchUserException,
                                              NoSuchRealmException

  set privileges for user

  Parameters:
    `realmName` - the realm name
    `submitter` - the submitter name
    `userName` - the user's name
    `privileges` - a Vector save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### setRolePrivileges

    void setRolePrivileges(java.lang.String roleName,
                           java.util.Vector privileges)

  Deprecated. Server V7.1 replaced by `setRolePrivileges(String realmName, String submitter, String roleName, Vector privileges) throws NoSuchRoleException, NoSuchRealmException;`.

  set privileges for role

  Parameters:
    `roleName` - the user name
    `privileges` - a Vector save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES

### setRolePrivileges

    java.lang.String setRolePrivileges(java.lang.String realmName,
                                       java.lang.String submitter,
                                       java.lang.String roleName,
                                       java.util.Vector privileges)
                                       throws NoSuchRoleException,
                                              NoSuchRealmException,
                                              BadRealmException

  set privileges for role

  Parameters:
    `realmName` - the realm'a name
    `submitter` - the submitter's name
    `roleName` - roleName the user name
    `privileges` - a Vector save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRoleException` - if role does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException`
  Since:
    Server V7.1

### setGroupPrivileges

    java.lang.String setGroupPrivileges(java.lang.String realmName,
                                        java.lang.String submitter,
                                        java.lang.String groupName,
                                        java.util.Vector privileges)
                                        throws NoSuchGroupException,
                                               NoSuchRealmException,
                                               BadRealmException

  set privileges for group

  Parameters:
    `realmName` - the realm'a name
    `submitter` - the submitter's name
    `groupName` - groupName the group name
    `privileges` - a Vector save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException`
  Since:
    Server V7.1

### getUserPrivileges

    java.util.Vector getUserPrivileges(java.lang.String userName)

  Deprecated. Server V7.1 replaced by `getUserPrivileges(String realmName, String submitter, String userName,) throws NoSuchUserException, NoSuchRealmException;`.

  get user's privileges

  Parameters:
    `userName` - the user name

### getUserPrivileges

    java.util.Vector getUserPrivileges(java.lang.String realmName,
                                       java.lang.String submitter,
                                       java.lang.String userName)
                                       throws NoSuchUserException,
                                              NoSuchRealmException

  get user's privileges

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `userName` - the user's name
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### getRolePrivileges

    java.util.Vector getRolePrivileges(java.lang.String roleName)

  Deprecated. Server V7.1 replaced by `getRolePrivileges(String realmName, String submitter, String roleName,) throws NoSuchRoleException, NoSuchRealmException;`.

  get role's privileges

  Parameters:
    `roleName` - the role name

### getRolePrivileges

    java.util.Vector getRolePrivileges(java.lang.String realmName,
                                       java.lang.String submitter,
                                       java.lang.String roleName)
                                       throws NoSuchRoleException,
                                              NoSuchRealmException,
                                              BadRealmException

  get user's privileges

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `roleName` - the role's name
  Throws:
    `NoSuchRoleException` - if role does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException`
  Since:
    Server V7.1

### getGroupPrivileges

    java.util.Vector getGroupPrivileges(java.lang.String realmName,
                                        java.lang.String submitter,
                                        java.lang.String groupName)
                                        throws NoSuchGroupException,
                                               NoSuchRealmException,
                                               BadRealmException

  get user's privileges

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `groupName` - the group's name
  Throws:
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException`
  Since:
    Server V7.1

### getPrivileges

    java.util.Hashtable[] getPrivileges(java.lang.String realmName,
                                        java.lang.String submitter)
                                        throws NoSuchGroupException,
                                               NoSuchRealmException,
                                               BadRealmException

  Get defined privileges of users

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
  Returns:
    a `Hashtable` array, which contains three `Hashtable` objects. The first `Hashtable` contains several user/privileges pair to represent defined privileges. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all privileges The second `Hashtable` object contains several role/privileges pair to represent defined privileges and its structure is similar to user/privileges. The third `Hashtable` object contains several group/privileges pair to represent defined privileges and its structure is similar to user/privileges. Or null if the user/role/group has not permission to get privileges.
  Throws:
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.

### setPrivileges

    void setPrivileges(java.lang.String realmName,
                       java.lang.String submitter,
                       java.util.Hashtable[] privileges)
                       throws NoSuchUserException,
                              NoSuchRealmException

  Set privileges of users

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privileges` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/privileges pair to represent privileges. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all privileges The second `Hashtable` object contains several role/privileges pair to represent defined privileges and its structure is similar to user/privileges The third `Hashtable` object contains several group/privileges pair to represent defined privileges and its structure is similar to user/privileges The structure of Hashtable[] privileges is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | {, }... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | }... ::= a vector object contains nothing ::= String APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT ::= String APIConst.PRIVILEGE_PUBLISH_REPORT ::= String APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Throws:
    `NoSuchUserException` - if user does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.

### getPrivilegedUsers

    java.util.Vector getPrivilegedUsers(java.lang.String privilege)

  Deprecated. Server V7.1 replaced by `getPrivilegedUsers(String realmName, String submitter, String privilege,) throws NoSuchRealmException;`.

  get all users who have the privilege

  Parameters:
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    users a Vector save the users' names

### getPrivilegedUsers

    java.util.Vector getPrivilegedUsers(java.lang.String realmName,
                                        java.lang.String submitter,
                                        java.lang.String privilege)
                                        throws NoSuchRealmException

  get all users who have the privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    users a Vector save the users' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### getPrivilegedRoles

    java.util.Vector getPrivilegedRoles(java.lang.String privilege)

  Deprecated. Server V7.1 replaced by `getPrivilegedRoles(String realmName, String submitter, String privilege,) throws NoSuchRealmException;`.

  get all roles who have the privilege

  Parameters:
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    roles a Vector save the roles' names

### getPrivilegedRoles

    java.util.Vector getPrivilegedRoles(java.lang.String realmName,
                                        java.lang.String submitter,
                                        java.lang.String privilege)
                                        throws NoSuchRealmException

  get all roles who have the privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    roles a Vector save the roles' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### getPrivilegedGroups

    java.util.Vector getPrivilegedGroups(java.lang.String realmName,
                                         java.lang.String submitter,
                                         java.lang.String privilege)
                                         throws NoSuchRealmException

  get all groups who have the privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
  Returns:
    groups a Vector save the groups' names
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### addPrivilegedUsers

    void addPrivilegedUsers(java.lang.String privilege,
                            java.util.Vector users)

  Deprecated. Server V7.1 replaced by `addPrivilegedUsers(String realmName, String submitter, String privilege, Vector users) throws NoSuchUserException, NoSuchRealmException;`.

  add users to have this privilege

  Parameters:
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `users` - a Vector save the users' names

### addPrivilegedUsers

    java.lang.String addPrivilegedUsers(java.lang.String realmName,
                                        java.lang.String submitter,
                                        java.lang.String privilege,
                                        java.util.Vector users)
                                        throws NoSuchUserException,
                                               NoSuchRealmException

  add users to have this privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `users` - a Vector save the users' names
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchUserException` - if user specified by users does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### addPrivilegedRoles

    void addPrivilegedRoles(java.lang.String privilege,
                            java.util.Vector roles)

  Deprecated. Server V7.1 eplaced by `addPrivilegedRoles(String realmName, String submitter, String privilege, Vector groups) throws NoSuchGroupException, NoSuchRealmException, BadRealmException;`.

  add roles to have this privilege

  Parameters:
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `roles` - a Vector save the roles' names

### addPrivilegedRoles

    java.lang.String addPrivilegedRoles(java.lang.String realmName,
                                        java.lang.String submitter,
                                        java.lang.String privilege,
                                        java.util.Vector roles)
                                        throws NoSuchRoleException,
                                               NoSuchRealmException,
                                               BadRealmException

  add roles to have this privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `roles` - a Vector save the roles' names
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRoleException` - if role specified by roles does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    Server V7.1

### addPrivilegedGroups

    java.lang.String addPrivilegedGroups(java.lang.String realmName,
                                         java.lang.String submitter,
                                         java.lang.String privilege,
                                         java.util.Vector groups)
                                         throws NoSuchGroupException,
                                                NoSuchRealmException,
                                                BadRealmException

  add roles to have this privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `groups` - a Vector save the groups' names
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchGroupException` - if group specified by groups does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
  Since:
    Server V7.1

### removePrivilegedUsers

    java.lang.String removePrivilegedUsers(java.lang.String privilege,
                                           java.util.Vector users)

  Deprecated. Server V7.1 replaced by `removePrivilegedUsers(String realmName, String submitter, String privilege, Vector users) throws NoSuchUserException, NoSuchRealmException;`.

  remove users from users who have the privilege

  Parameters:
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `users` - a Vector save the users' names
  Returns:
    message if success return null else return error message

### removePrivilegedUsers

    java.lang.String removePrivilegedUsers(java.lang.String realmName,
                                           java.lang.String submitter,
                                           java.lang.String privilege,
                                           java.util.Vector users)
                                           throws NoSuchUserException,
                                                  NoSuchRealmException

  remove users from users who have the privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `users` - a Vector save the users' names
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchUserException` - if user specified by users does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V7.1

### removePrivilegedRoles

    java.lang.String removePrivilegedRoles(java.lang.String privilege,
                                           java.util.Vector roles)

  Deprecated. Server V7.1 replaced by `removePrivilegedRoles(String realmName, String submitter, String privilege, Vector roles) throws NoSuchRoleException, NoSuchRealmException;`.

  remove roles from roles who have the privilege

  Parameters:
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `roles` - a Vector save the roles' names
  Returns:
    message if success return null else return error message

### removePrivilegedRoles

    java.lang.String removePrivilegedRoles(java.lang.String realmName,
                                           java.lang.String submitter,
                                           java.lang.String privilege,
                                           java.util.Vector roles)
                                           throws NoSuchRoleException,
                                                  NoSuchRealmException,
                                                  BadRealmException

  remove roles from roles who have the privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `roles` - a Vector save the roles' names
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchRoleException` - if role specified by roles does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException`
  Since:
    Server V7.1

### removePrivilegedGroups

    java.lang.String removePrivilegedGroups(java.lang.String realmName,
                                            java.lang.String submitter,
                                            java.lang.String privilege,
                                            java.util.Vector groups)
                                            throws NoSuchGroupException,
                                                   NoSuchRealmException,
                                                   BadRealmException

  remove groups from groups who have the privilege

  Parameters:
    `realmName` - the realm's name
    `submitter` - the submitter's name
    `privilege` - a String save the available privilege such as APIConst.PRIVILEGE_CREATE_ANALYSIS_REPORT, APIConst.PRIVILEGE_PUBLISH_REPORT, APIConst.PRIVILEGE_ACCESS_ADVANCED_PROPERTIES
    `groups` - a Vector save the groups' names
  Returns:
    error message if any error occurs but does not throw exception, or null if success.
  Throws:
    `NoSuchGroupException` - if group specified by groups does not exist.
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException`
  Since:
    Server V7.1

### isEditing

    boolean isEditing(java.lang.String realm,
                      int action)
                      throws NoSuchRealmException

  Check the action is can be edit

  Parameters:
    `realm` - the realm's name
    `action` - the server security web UI's action:
  Returns:
    if can do this action return true, otherwise return false
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
  Since:
    Server V8
  See Also:
    `SecurityWebAdaptor`

### isJUserInJRole

    boolean isJUserInJRole(java.lang.String realmName,
                           java.lang.String submitter,
                           java.lang.String userName,
                           java.lang.String roleName)
                           throws NoSuchUserException,
                                  NoSuchRoleException,
                                  NoSuchRealmException,
                                  NoSuchGroupException,
                                  BadRealmException

  Indicates whether the user should be in a role

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `userName` - the user name
    `roleName` - the role name
  Returns:
    whether the user should be in a role
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `NoSuchRoleException` - if role does not exist.
    `NoSuchGroupException`
  Since:
    Server V8.3

### isJUserInJGroup

    boolean isJUserInJGroup(java.lang.String realmName,
                            java.lang.String submitter,
                            java.lang.String userName,
                            java.lang.String groupName)
                            throws NoSuchUserException,
                                   NoSuchGroupException,
                                   NoSuchRealmException,
                                   NoSuchRoleException,
                                   BadRealmException

  Indicates whether the user should be in a group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `userName` - the user name
    `groupName` - the group name
  Returns:
    whether the user should be in a group
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchUserException` - if user does not exist.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRoleException`
  Since:
    Server V8.3

### isJGroupInJRole

    boolean isJGroupInJRole(java.lang.String realmName,
                            java.lang.String submitter,
                            java.lang.String groupName,
                            java.lang.String roleName)
                            throws NoSuchRoleException,
                                   NoSuchGroupException,
                                   NoSuchRealmException,
                                   BadRealmException

  Indicates whether the group should be in a role

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
    `roleName` - the role name
  Returns:
    whether the group should be in a role
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
    `NoSuchRoleException` - if role does not exist.
  Since:
    Server V8.3

### isJGroupInJGroup

    boolean isJGroupInJGroup(java.lang.String realmName,
                             java.lang.String submitter,
                             java.lang.String groupName,
                             java.lang.String parentName)
                             throws NoSuchGroupException,
                                    NoSuchRealmException,
                                    BadRealmException

  Indicates whether the group should be in a parent group

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the group name
    `parentName` - the parent group name
  Returns:
    whether the group should be in a parent group
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchGroupException` - if group does not exist.
  Since:
    Server V8.3

### isJRoleInJRole

    boolean isJRoleInJRole(java.lang.String realmName,
                           java.lang.String submitter,
                           java.lang.String roleName,
                           java.lang.String parentName)
                           throws NoSuchRoleException,
                                  NoSuchRealmException,
                                  BadRealmException

  Indicates whether the role should be in a parent role

  Parameters:
    `realmName` - the realm name
    `submitter` - the user who request this action.
    `groupName` - the role name
    `parentName` - the parent role name
  Returns:
    whether the role should be in a parent role
  Throws:
    `NoSuchRealmException` - if realm specified by realmName does not exist.
    `BadRealmException` - if specified realm data structures are bad.
    `NoSuchRoleException` - if role does not exist.
  Since:
    Server V8.3

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