Package com.documentum.fc.client
Interface IDfACL
- All Superinterfaces:
IDfPersistentObject,IDfTypedObject
Provides access to permission-related data stored in ACL objects.
An ACL object represents an Access Control List. The entries in its repeating attributes control who can access the
object to which the ACL is attached. If the security mode for a repository is set to "acl," then every SysObject in
the repository has an ACL. Additionally, user objects and type info objects representing SysObject types generally
have ACLs.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final intRepresents the Browse permission.static final Stringstatic final intRepresents the Delete permission.static final Stringstatic final intRepresents the None permission.static final Stringstatic final intRepresents the Note permission.static final intRepresents the Read permission.static final Stringstatic final intRepresents the Relate permission.static final Stringstatic final intRepresents the Version permission.static final Stringstatic final intRepresents the Write permission.static final Stringstatic final StringRepresent the extended permission to bypass folder security.static final StringRepresent the extended permission change locationstatic final StringRepresent the extended permission change ownerstatic final StringRepresent the extended permission change permitstatic final StringRepresent the extended permission change statestatic final StringRepresent the extended permission delete objectstatic final StringRepresent the extended permission execute procedurestatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final StringFields inherited from interface com.documentum.fc.client.IDfPersistentObject
CURRENCY_CHECK_ALWAYS, CURRENCY_CHECK_FIRST_ACCESS, CURRENCY_CHECK_NEVER, CURRENCY_CHECK_ONCE_PER_SCOPE -
Method Summary
Modifier and TypeMethodDescriptionvoiddestroyACL(boolean force) Removes an ACL object from a repository.getAccessorApplicationPermit(int index) Returns the application permit assigned to a user or group.intReturns the number of users and groups referenced in an ACL object.getAccessorName(int index) Returns the name of an individual user, group or alias in an ACL object.intgetAccessorPermit(int index) Returns the basic permission level granted to a user or group.intgetAccessorPermitType(int index) Identifies the type of permission granted an accessor in the ACL.intgetAccessorXPermit(int index) Returns extended permissions granted to a user or group.getAccessorXPermitNames(int index) Returns the extended permissions in string form assigned to a user or group.intReturns the ACL class value.Returns the user-defined description of an ACL object.Returns the domain (owner name) of an ACL.Returns the ACL name.Returns a list ofDfPermitobjects representing all the permissions specified in the ACL.intReturns the basic permission level assigned to a user or group.intgetXPermit(String accessorName) Returns the extended permissions assigned to a user or group.Returns a full list of the extended permissions, in string form, currently supported by the current server.getXPermitNames(String accessorName) Returns the list of the extended permissions, in string form, for the specified user or group.voidSets permissions for a user or group in an ACL object.voidgrantPermit(IDfPermit permit) Creates an access control entry in this object, assigning an access level to a specified user or group.booleanhasPermission(String permissionName, String accessorName) Indicates whether a user or group has a specified extended permission.booleanIndicates whether an ACL object is managed globally or locally.booleanisGroup(int index) Indicates if an accessor name in an ACL object is a group or a user.booleanIndicates whether an ACL object was created explicitly by the user or implicitly by the server.voidRemoves all extended permissions granted to a user or group in an ACL objectvoidrevokePermit(IDfPermit permit) Removes specified permit from the acl.Creates a new copy of the object.voidsetACLClass(int aclClass) Sets the ACL class value.voidsetDescription(String description) Sets the user-defined description of an ACL object.voidSets the domain (owner name) of an ACL object.voidsetObjectName(String name) Sets the name of the ACL.Methods inherited from interface com.documentum.fc.client.IDfPersistentObject
addChildRelative, addParentRelative, apiExec, apiGet, apiSet, destroy, fetch, fetchWithCaching, getAttrAssistance, getAttrAssistanceWithValues, getAttrAsstDependencies, getChildRelatives, getParentRelatives, getPartition, getType, getValidator, getVStamp, getWidgetType, isDeleted, isDirty, isInstanceOf, isNew, isReplica, lock, lockEx, registerEvent, removeChildRelative, removeParentRelative, revert, save, setPartition, signoff, unRegisterEvent, unRegisterEventEx, validateAllRules, validateAttrRules, validateAttrRulesWithValue, validateAttrRulesWithValues, validateObjRules, validateObjRulesWithValuesMethods inherited from interface com.documentum.fc.client.IDfTypedObject
appendBoolean, appendDouble, appendId, appendInt, appendString, appendTime, appendValue, dump, enumAttrs, findAttrIndex, findBoolean, findDouble, findId, findInt, findString, findTime, findValue, getAllRepeatingStrings, getAttr, getAttrCount, getAttrDataType, getBoolean, getDouble, getId, getInt, getLong, getObjectId, getObjectSession, getOriginalSession, getRepeatingBoolean, getRepeatingDouble, getRepeatingId, getRepeatingInt, getRepeatingLong, getRepeatingString, getRepeatingTime, getRepeatingValue, getSession, getSessionManager, getString, getTime, getValue, getValueAt, getValueCount, hasAttr, insertBoolean, insertDouble, insertId, insertInt, insertString, insertTime, insertValue, isAttrRepeating, isNull, remove, removeAll, setBoolean, setDouble, setId, setInt, setNull, setRepeatingBoolean, setRepeatingDouble, setRepeatingId, setRepeatingInt, setRepeatingString, setRepeatingTime, setRepeatingValue, setSessionManager, setString, setTime, setValue, truncate
-
Field Details
-
OBJECT_NAME
- See Also:
-
DESCRIPTION
- See Also:
-
OWNER_NAME
- See Also:
-
IS_INTERNAL
- See Also:
-
ACCESSOR_NAME
- See Also:
-
ACCESSOR_PERMIT
- See Also:
-
ACCESSOR_XPERMIT
- See Also:
-
IS_GROUP
- See Also:
-
GLOBALLY_MANAGED
- See Also:
-
ACL_CLASS
- See Also:
-
HAS_EVENTS
- See Also:
-
PERMIT_TYPE
- See Also:
-
APPLICATION_PERMIT
- See Also:
-
HAS_REQUIRED_GROUPS
- See Also:
-
HAS_REQUIRED_GROUP_SET
- See Also:
-
HAS_ACCESS_RESTRICTIONS
- See Also:
-
TEMPLATE_ID
- See Also:
-
ALIAS_SET_ID
- See Also:
-
DF_PERMIT_NONE
static final int DF_PERMIT_NONERepresents the None permission.- See Also:
-
DF_PERMIT_NONE_STR
- See Also:
-
DF_PERMIT_BROWSE
static final int DF_PERMIT_BROWSERepresents the Browse permission.- See Also:
-
DF_PERMIT_BROWSE_STR
- See Also:
-
DF_PERMIT_READ
static final int DF_PERMIT_READRepresents the Read permission.- See Also:
-
DF_PERMIT_READ_STR
- See Also:
-
DF_PERMIT_NOTE_STR
static final int DF_PERMIT_NOTE_STRRepresents the Note permission.- See Also:
-
DF_PERMIT_RELATE
static final int DF_PERMIT_RELATERepresents the Relate permission.- See Also:
-
DF_PERMIT_RELATE_STR
- See Also:
-
DF_PERMIT_VERSION
static final int DF_PERMIT_VERSIONRepresents the Version permission.- See Also:
-
DF_PERMIT_VERSION_STR
- See Also:
-
DF_PERMIT_WRITE
static final int DF_PERMIT_WRITERepresents the Write permission.- See Also:
-
DF_PERMIT_WRITE_STR
- See Also:
-
DF_PERMIT_DELETE
static final int DF_PERMIT_DELETERepresents the Delete permission.- See Also:
-
DF_PERMIT_DELETE_STR
- See Also:
-
DF_XPERMIT_EXECUTE_PROC_STR
Represent the extended permission execute procedure- See Also:
-
DF_XPERMIT_CHANGE_LOCATION_STR
Represent the extended permission change location- See Also:
-
DF_XPERMIT_CHANGE_STATE_STR
Represent the extended permission change state- See Also:
-
DF_XPERMIT_CHANGE_PERMIT_STR
Represent the extended permission change permit- See Also:
-
DF_XPERMIT_CHANGE_OWNER_STR
Represent the extended permission change owner- See Also:
-
DF_XPERMIT_DELETE_OBJECT_STR
Represent the extended permission delete object- See Also:
-
DF_XPERMIT_CHANGE_FOLDER_LINKS_STR
Represent the extended permission to bypass folder security.- Since:
- 6.0
- See Also:
-
-
Method Details
-
getObjectName
Returns the ACL name.- Returns:
- the name of the ACL object
- Throws:
DfException- if a server error occurs- See Also:
-
setObjectName
Sets the name of the ACL. The name, if provided, must be unique among the ACLs created by the ACL owner (domain) in the repository.- Parameters:
name- the name of the ACL object- Throws:
DfException- if a server error occurs- See Also:
-
getDescription
Returns the user-defined description of an ACL object.- Returns:
- user-defined description of the ACL
- Throws:
DfException- if a server error occurs- See Also:
-
setDescription
Sets the user-defined description of an ACL object.- Parameters:
description- the user-defined description of the ACL- Throws:
DfException- if a server error occurs- See Also:
-
getDomain
Returns the domain (owner name) of an ACL. The domain is the owner of the ACL.- Returns:
- the domain of the ACL object
- Throws:
DfException- if a server error occurs- See Also:
-
setDomain
Sets the domain (owner name) of an ACL object. The domain is the owner of an ACL. This will be the user who created the ACL or, for system-level ACLs, the name of the respository owner or the alias "dm_dbo". If the domain is passed asnullor "", "dm_dbo" is used.- Parameters:
domain- the domain (owner name) of the ACL object- Throws:
DfException- if a server error occurs- See Also:
-
getACLClass
Returns the ACL class value. Indicates whether the ACL is a regular ACL (with value 0), a template (with value 1) or an instance of a template (with value 2). The default is zero. Note that, an ACL template can be used by anyone; however, an instance of a template can not be changed by anyone including superuser.- Returns:
- the ACL class value
- Throws:
DfException- if a server error occurs- See Also:
-
setACLClass
Sets the ACL class value.- Parameters:
aclClass- the ACL class value- Throws:
DfException- if a server error occurs- See Also:
-
isInternal
Indicates whether an ACL object was created explicitly by the user or implicitly by the server. Refer to the Server Administrator's Guide for more information about permissions.- Returns:
trueif the ACL object was created implicitly by the server;falseif the ACL object was created by the user.- Throws:
DfException- if a server error occurs
-
isGloballyManaged
Indicates whether an ACL object is managed globally or locally. A globally managed ACL object can only be edited in the Governing repository. See the Distributed Configuration Guide for more information about Federated repositories. Refer to the Server Administrator's Guide for more information about permissions.- Returns:
trueif the ACL object is managed globally;falseif the ACL object is managed locally.- Throws:
DfException- if a server error occurs
-
isGroup
Indicates if an accessor name in an ACL object is a group or a user. Refer to the Server Administrator's Guide for more information about permissions.- Parameters:
index- the index position of the user or group among the ACL's accessors- Returns:
trueif the specified name is a group;falseif the specified name is a user.- Throws:
DfException- if a server error occurs- See Also:
-
getAccessorCount
Returns the number of users and groups referenced in an ACL object. Refer to the Server Administrator's Guide for more information about permissions.- Returns:
- the number of users and groups referenced in the ACL object
- Throws:
DfException- if a server error occurs- See Also:
-
getAccessorName
Returns the name of an individual user, group or alias in an ACL object. Refer to the Server Administrator's Guide for more information about permissions.- Parameters:
index- the index position of the user or group among the ACL's accessors- Returns:
- the name of the user, group or alias
- Throws:
DfException- if a server error occurs- See Also:
-
getAccessorPermitType
Identifies the type of permission granted an accessor in the ACL.- Parameters:
index- the index position of the user or group among the ACL's accessors.- Returns:
- an integer representing the permit type. Permit types are defined in
IDfPermitType. - Throws:
DfException- if a server error occurs- Since:
- 5.2.10
- See Also:
-
getAccessorPermit
Returns the basic permission level granted to a user or group. The following list specifies the permissions corresponding to all possible return values. You may use either the value or the field constant to specify a permission level:Value Field Constant 1 DF_PERMIT_NONE 2 DF_PERMIT_BROWSE 3 DF_PERMIT_READ 4 DF_PERMIT_RELATE or DF_PERMIT_NOTE 5 DF_PERMIT_VERSION 6 DF_PERMIT_WRITE 7 DF_PERMIT_DELETE
Note that DF_PERMIT_RELATE and DF_PERMIT_NOTE are synonymous. Refer to the Server Administrator's Guide for more information about basic permissions.- Parameters:
index- the index position of the user or group among the ACL's accessors.- Returns:
- an integer representing the basic permission level granted to the user or group
- Throws:
DfException- if a server error occurs- See Also:
-
getAccessorXPermit
Returns extended permissions granted to a user or group. The extended permissions are Change State, Change Permission, Change Ownership, Change Location, and Execute Procedure. Unlike basic permissions, extended permissions are not cumulative. Refer to the Server Administrator's Guide for more information about extended permissions.- Parameters:
index- the index position of the user or group among the ACL's accessors- Returns:
- an integer representing the extended permission granted to the user or group; the server calculates the
returned integer by reading fields from an encoded bitfield. The following list explains which fields
correspond to the extended permissions and how they are encoded:
[20][19][18][17][16][15][14][13]12]11][10][9][8][7][6][5][4][3][2][1][0] Field 0: Execute Procedure 0 = have extended permission; 1 = don't have extended permission Field 1: Change Location 0 = have extended permission; 1 = don't have extended permission Fields 2-15: Reserved NA Field 16: Change State 1 = have extended permission; 0 = don't have extended permission Field 17: Change Permit 1 = have extended permission; 0 = don't have extended permission Field 18: Change Ownership 1 = have extended permission; 0 = don't have extended permission Field 19: Delete Object 1 = have extended permission; 0 = don't have extended permission Field 20: Change Folder Links 1 = have extended permission; 0 = don't have extended permission
- Throws:
DfException- if a server error occurs- See Also:
-
getAccessorXPermitNames
Returns the extended permissions in string form assigned to a user or group. The extended permission names are separated by comma (e.g. EXECUTE_PROC,CHANGE_LOCATION). The following extended permission strings are currently defined:EXECUTE_PROC CHANGE_LOCATION CHANGE_STATE CHANGE_PERMIT CHANGE_OWNER DELETE_OBJECT CHANGE_FOLDER_LINKS- Parameters:
index- the index position of the user or group among the ACL's accessors- Returns:
- the extended permissions in string form assigned to the user or group
- Throws:
DfException- if a server error occurs- See Also:
-
getAccessorApplicationPermit
Returns the application permit assigned to a user or group.- Parameters:
index- the index position of the user or group among the ACL's accessors- Returns:
- the application permit in string form assigned to the user or group
- Throws:
DfException- if a server error occurs- Since:
- 5.4
- See Also:
-
hasPermission
Indicates whether a user or group has a specified extended permission. Refer to the Server Administrator's Guide for more information about permissions.- Parameters:
permissionName- the name of the extended permission attribute. Possible values are:_allow_execute_proc _allow_change_location _allow_change_state _allow_change_owner _allow_change_permit _allow_change_folder_linksaccessorName- The name of the user or group- Returns:
trueif the user or group has the specified extended permission;falseif the user or group does not.- Throws:
DfException- if a server error occurs
-
getPermit
Returns the basic permission level assigned to a user or group. If no user or group is specified withaccessorName, the permissions of the current Documentum user are returned.- Parameters:
accessorName- the name of the user or group- Returns:
- the permissions
- Throws:
DfException- if a server error occurs- See Also:
-
getXPermit
Returns the extended permissions assigned to a user or group. If no user or group is specified withaccessorName, the extended permissions of the current Documentum user are returned. Remember, extended permissions are not cumulative, as are basic permissions. Refer to the Server Administrator's Guide for more information about extended permissions.- Parameters:
accessorName- the name of the user or group- Returns:
- an integer representing the extended permission granted to the user or group; the server calculates the
returned integer by reading fields from an encoded bitfield. The following list explains which fields
correspond to the extended permissions and how they are encoded:
[19][18][17][16][15][14][13]12]11][10][9][8][7][6][5][4][3][2][1][0] Field 0: Execute Procedure 0 = have extended permission; 1 = don't have extended permission Field 1: Change Location 0 = have extended permission; 1 = don't have extended permission Fields 2-15: Reserved NA Field 16: Change State 1 = have extended permission; 0 = don't have extended permission Field 17: Change Permit 1 = have extended permission; 0 = don't have extended permission Field 18: Change Ownership 1 = have extended permission; 0 = don't have extended permission Field 19: Delete Object 1 = have extended permission; 0 = don't have extended permission
- Throws:
DfException- if a server error occurs- See Also:
-
getXPermitNames
Returns the list of the extended permissions, in string form, for the specified user or group. If no user or group is specified withaccessorName, the extended permissions of the current Documentum user (logged in user) are returned. Refer to the Server Administrator's Guide for more information about extended permissions.- Parameters:
accessorName- the name of the user or group- Returns:
- the extended permissions assigned to the specified user or group. Extended permissions are returned as upper-case strings separated by commas.
- Throws:
DfException- if a server error occurs- See Also:
-
getXPermitList
Returns a full list of the extended permissions, in string form, currently supported by the current server. Note that this function returns the same list regardless of ACL.- Returns:
- the list of extended permissions, separated by commas, supported by the current server
- Throws:
DfException- if a server error occurs- See Also:
-
grant
Sets permissions for a user or group in an ACL object. Note that the way to revoke a basic permission is to assign a user a different permission with this method rather than using the revoke method. You must execute either thesave,saveAsNew, orcheckinmethod to commit the granted permission to a repository. You must execute eitherrevert,cancelCheckout, ordestorymethod to discard changes made to an ACL object. Refer to the Server Administrator's Guide for more information about permissions.- Parameters:
accessorName- the name of the user or groupaccessorPermit- the integer corresponding to the basic permission that you want to grant. The following list specifies the integer corresponding to each basic permission. You may use either the value or the field constant to set permissions. Note that DF_PERMIT_RELATE and DF_PERMIT_NOTE are synonymous.Value Field Constant 1 DF_PERMIT_NONE 2 DF_PERMIT_BROWSE 3 DF_PERMIT_READ 4 DF_PERMIT_RELATE, DF_PERMIT_NOTE 5 DF_PERMIT_VERSION 6 DF_PERMIT_WRITE 7 DF_PERMIT_DELETE
Note that DF_PERMIT_RELATE and DF_PERMIT_NOTE are synonymous.extendedPermitNames- the extended permission that you want to grant; if you specifynullfor this parameter then the server will supply default extended permissions which include change location and execute procedure.- Throws:
DfException- if a server error occurs- See Also:
-
grantPermit
Creates an access control entry in this object, assigning an access level to a specified user or group. This operation is not committed until asaveor acheckin.- Throws:
DfException- if a server error occurs.- Since:
- 5.2.10
-
revoke
Removes all extended permissions granted to a user or group in an ACL object You must execute either thesave,saveAsNew, orcheckinmethod to commit the granted permission to a repository. You must execute eitherrevert,cancelCheckout, ordestorymethod to discard changes made to an ACL object. Refer to the Server Administrator's Guide for more information about permissions.- Parameters:
accessorName- the name of the user or groupextendedPermitNames- the extended permissions that you want to revoke; If you do not want to revoke an extended permission, specifynullfor this parameter.- Throws:
DfException- if a server error occurs- See Also:
-
revokePermit
Removes specified permit from the acl. This operation is not committed until asaveor acheckin.- Throws:
DfException- if a server error occurs.- Since:
- 5.2.10
-
getPermissions
Returns a list ofDfPermitobjects representing all the permissions specified in the ACL.- Returns:
- IDfList containing all permissions specified in the ACL
- Throws:
DfException- if a server error occurs- Since:
- 5.2.10
-
destroyACL
Removes an ACL object from a repository. Refer to the Server Administrator's Guide for more information about permissions.- Parameters:
force- indicates whether to destroy the ACL object even if it is referenced by other objects in the repository. If so, entertrue; If not, enterfalse.- Throws:
DfException- if a server error occurs
-
saveAsNew
Creates a new copy of the object. object is shared with the new object.- Throws:
DfException- if a server error occurs.
-