com.filenet.api.security
Interface Permission

All Superinterfaces:
DependentObject, EngineObject, java.io.Serializable
All Known Subinterfaces:
AccessPermission, DiscretionaryPermission

public interface Permission
extends EngineObject, DependentObject

Represents the base class for Permission objects.

A Permission object represents an access control (or rule) associated with an object. Every object has an associated Access Control List (ACL), which is represented by a Content Engine PermissionList object. Each ACL is composed of Access Control Entries (ACEs), each of which grants or denies specific permissions (access rights) to a particular user or group. An individual Permission object represents an access control and corresponds to an Access Control Entry (ACE).

You can get a Permission object by calling an object's get_Permissions method and using methods on the returned collection to retrieve its elements. You can create a new Permission instance by calling Factory.AccessPermission.createInstance().

You can optionally set the Permission object to be inheritable. That is, by calling set_InheritableDepth, you can specify the level (depth) to which the permission you create can be inherited. You can specify that the permission is not inheritable, or that it can be inherited to a single level, or that it can be inherited to an unlimited level.

A permission can be acquired from several sources: direct, default, a security parent, or a security template. A permission's source is direct as a result of explicitly setting the object's permission, for example, by calling set_Permissions. The source is default when a permission is acquired as a result of default settings on an object's class. For example, if you do not specify any permissions when you create an object, the permissions assigned to the class are assigned to the new object. A permission's source is its security parent if the permission is assigned as a result of inheriting a parent object's permissions. For example, if you create a subfolder, the subfolder can inherit the permissions assigned to the folder in which it is contained (that is, its parent folder). If the permission is acquired from a security template, its permission source is the template. To determine the permission source of a Permission object, call get_PermissionSource.

Metadata

Auditable: false
AllowsInstances: false
AllowsSubClasses: false
ClassDefinitionName: None
IsDependent: true
IsHidden: false
Searchable: false
StorageType: Domain or ObjectStore
SuperclassName: GenericObject


Method Summary
 java.lang.String get_GranteeName()
          Returns the value of the GranteeName property.
 SecurityPrincipalType get_GranteeType()
          Returns the value of the GranteeType property.
 java.lang.Integer get_InheritableDepth()
          Returns the value of the InheritableDepth property.
 PermissionSource get_PermissionSource()
          Returns the value of the PermissionSource property.
 void set_GranteeName(java.lang.String value)
          Sets the value of the GranteeName property.
 void set_InheritableDepth(java.lang.Integer value)
          Sets the value of the InheritableDepth property.
 
Methods inherited from interface com.filenet.api.core.EngineObject
get_ClassDescription, getClassName, getConnection, getProperties, getSuperClasses
 

Method Detail

get_GranteeName

java.lang.String get_GranteeName()
Returns the value of the GranteeName property. For more information, see GranteeName Property.


set_GranteeName

void set_GranteeName(java.lang.String value)
Sets the value of the GranteeName property. For more information, see GranteeName Property.


get_GranteeType

SecurityPrincipalType get_GranteeType()
Returns the value of the GranteeType property. For more information, see GranteeType Property.


get_PermissionSource

PermissionSource get_PermissionSource()
Returns the value of the PermissionSource property. For more information, see PermissionSource Property.


get_InheritableDepth

java.lang.Integer get_InheritableDepth()
Returns the value of the InheritableDepth property. For more information, see InheritableDepth Property.


set_InheritableDepth

void set_InheritableDepth(java.lang.Integer value)
Sets the value of the InheritableDepth property. For more information, see InheritableDepth Property.



© Copyright IBM Corporation 2006, 2008. All rights reserved.