com.sas.metadata.remote
Interface AccessControlEntry

All Superinterfaces:
AccessControl, CMetadata, MdObjectBase, MdObjectBaseUtil, MdObjectBaseXML, PrimaryType, java.rmi.Remote, Root

public interface AccessControlEntry
extends AccessControl

The AccessControlEntry metadata type is used to define an access control directly on a resource. The access control is stored with the resource definition and is unique to that resource. That is, the AccessControlEntry (ACE) cannot be applied to another metadata object.

An ACE can specify permissions for both individual users and for groups. If a given identity is referenced more than once in the ACE, for example, both directly and by virtue of membership in one or more groups, the permission assigned directly to the identity will take precedence.

When the SAS Open Metadata Architecture authorization facility evaluates access controls, a permission assigned in an ACE will take precedence over a permission assigned in an AccessConrolTemplate (ACT). A resource-specific access control also takes precedence over any inherited access controls and permissions assigned in the Repository ACT.

An ACE should not be explicitly created or deleted. Access controls are managed programmatically using the SAS Open Metadata Interface ISecurityAdmin server interface, which is documented in the SAS 9.2 Open Metadata Interface: Reference and Usage. ISecurityAdmin provides methods for defining and managing direct access controls as well as access control templates.

Attributes of AccessControlEntry are:

Associations of AccessControlEntry are:

Usage

To create an instance of this AccessControlEntry, use the factory create methods.
Example: create a AccessControlEntry with name "AccessControlEntry_Object", in repository "AAAAAAAA".
 // create a store to contain your objects for this change. If you do not have an existing object
 // or store to use.  You may obtain the store from another object by using Object.getObjectStore().
 MdFactory factory; //where "factory" is a valid MdFactory instance
 MdObjectStore objectStore = factory.createObjectStore();
 AccessControlEntry myObject = (AccessControlEntry) factory.createComplexMetadataObject(objectStore, "AccessControlEntry_Object", MetadataObjects.ACCESSCONTROLENTRY, "AAAAAAAA");
 myObject.updateMetadataAll();  // Write object to server
 objectStore.dispose();  // dispose of the object store if it is no longer needed
 

Behavior

Dependencies

This class depends on objects being contained in an MdObjectStore. Object stores should be disposed of when they are no longer needed as this will help clean up memory. Disposing an object store will dispose of all objects contained within that store.

Since:
9.0

Field Summary
static java.lang.String ASSOCIATION_ASSOCIATEDCONDITION_NAME
          Constant used for the name of the AssociatedCondition association.
static java.lang.String ASSOCIATION_IDENTITIES_NAME
          Constant used for the name of the Identities association.
static java.lang.String ASSOCIATION_PERMISSIONS_NAME
          Constant used for the name of the Permissions association.
 
Fields inherited from interface com.sas.metadata.remote.AccessControl
ASSOCIATION_ACCESSCONTROLTEMPLATES_NAME, ASSOCIATION_OBJECTS_NAME
 
Fields inherited from interface com.sas.metadata.remote.PrimaryType
ASSOCIATION_FAVORITESCONTAINERS_NAME, ATTRIBUTE_ISHIDDEN_NAME, ATTRIBUTE_PUBLICTYPE_NAME
 
Fields inherited from interface com.sas.metadata.remote.Root
ASSOCIATION_ACCESSCONTROLS_NAME, ASSOCIATION_CHANGES_NAME, ASSOCIATION_CUSTOMASSOCIATIONS_NAME, ASSOCIATION_DOCUMENTS_NAME, ASSOCIATION_EXTENSIONS_NAME, ASSOCIATION_EXTERNALIDENTITIES_NAME, ASSOCIATION_GROUPS_NAME, ASSOCIATION_IMPLEMENTORS_NAME, ASSOCIATION_KEYWORDS_NAME, ASSOCIATION_LOCALIZEDATTRIBUTES_NAME, ASSOCIATION_NOTES_NAME, ASSOCIATION_PRIMARYPROPERTYGROUP_NAME, ASSOCIATION_PROMPTS_NAME, ASSOCIATION_PROPERTIES_NAME, ASSOCIATION_PROPERTYSETS_NAME, ASSOCIATION_REFERENCEDOBJECTS_NAME, ASSOCIATION_RESPONSIBLEPARTIES_NAME, ASSOCIATION_SOURCETRANSFORMATIONS_NAME, ASSOCIATION_SPECSOURCETRANSFORMATIONS_NAME, ASSOCIATION_SPECTARGETTRANSFORMATIONS_NAME, ASSOCIATION_TARGETTRANSFORMATIONS_NAME, ASSOCIATION_TIMESTAMPS_NAME, ASSOCIATION_TREES_NAME, ASSOCIATION_TSOBJECTNAMESPACE_NAME, ASSOCIATION_USEDBYPROTOTYPES_NAME, ASSOCIATION_USINGPROTOTYPE_NAME, ASSOCIATION_VARIABLES_NAME, ATTRIBUTE_CHANGESTATE_NAME, ATTRIBUTE_LOCKEDBY_NAME, ATTRIBUTE_USAGEVERSION_NAME
 
Fields inherited from interface com.sas.metadata.remote.MdObjectBase
ATTRIBUTE_DESC_NAME, ATTRIBUTE_ID_NAME, ATTRIBUTE_METADATACREATED_NAME, ATTRIBUTE_METADATAUPDATED_NAME, ATTRIBUTE_NAME_NAME
 
Method Summary
 PermissionCondition getAssociatedCondition()
          Gets the PermissionCondition for AssociatedCondition
 AssociationList getAssociatedConditions()
          Gets the Association list of AssociatedConditions
 AssociationList getAssociatedConditions(boolean fGoToServer)
          Gets the Associationlist of AssociatedConditions
 AssociationList getIdentities()
          Gets the Association list of Identities
 AssociationList getIdentities(boolean fGoToServer)
          Gets the Associationlist of Identities
 AssociationList getPermissions()
          Gets the Association list of Permissions
 AssociationList getPermissions(boolean fGoToServer)
          Gets the Associationlist of Permissions
 void initializePredObjects()
          (S) Adds the Associated objects to the predObjects which are:
 void initializeRequiredObjects()
          (S) This initializes the Required Objects(Roles) which are:
 void setAssociatedCondition(PermissionCondition inObject)
          Sets the AssociatedConditions list 0th element to be inObject.
 void setAssociatedConditions(AssociationList list)
          Sets the AssociatedConditions list to be list.
 void setAssociatedConditions(AssociationList list, int state)
          Sets the AssociatedConditions list to be list.
 void setIdentities(AssociationList list)
          Sets the Identities list to be list.
 void setIdentities(AssociationList inObjects, int state)
          Sets the entire Identities list to match the passed in AssociationList, sets the state of the Identities
 void setPermissions(AssociationList list)
          Sets the Permissions list to be list.
 void setPermissions(AssociationList inObjects, int state)
          Sets the entire Permissions list to match the passed in AssociationList, sets the state of the Permissions
 
Methods inherited from interface com.sas.metadata.remote.AccessControl
getAccessControlTemplates, getAccessControlTemplates, getObjects, getObjects, setAccessControlTemplates, setAccessControlTemplates, setObjects, setObjects
 
Methods inherited from interface com.sas.metadata.remote.PrimaryType
getFavoritesContainers, getFavoritesContainers, getIsHidden, getIsHiddenState, getPublicType, getPublicTypeMaxLength, getPublicTypeState, setFavoritesContainers, setFavoritesContainers, setIsHidden, setIsHidden, setIsHidden, setIsHidden, setIsHiddenState, setPublicType, setPublicType, setPublicTypeState
 
Methods inherited from interface com.sas.metadata.remote.Root
getAccessControls, getAccessControls, getChanges, getChanges, getChangeState, getChangeStateMaxLength, getChangeStateState, getCustomAssociations, getCustomAssociations, getDocuments, getDocuments, getExtensions, getExtensions, getExternalIdentities, getExternalIdentities, getGroups, getGroups, getImplementors, getImplementors, getKeywords, getKeywords, getLocalizedAttributes, getLocalizedAttributes, getLockedBy, getLockedByMaxLength, getLockedByState, getNotes, getNotes, getPrimaryPropertyGroup, getPrimaryPropertyGroups, getPrimaryPropertyGroups, getPrompts, getPrompts, getProperties, getProperties, getPropertySets, getPropertySets, getReferencedObjects, getReferencedObjects, getResponsibleParties, getResponsibleParties, getSourceTransformations, getSourceTransformations, getSpecSourceTransformations, getSpecSourceTransformations, getSpecTargetTransformations, getSpecTargetTransformations, getTargetTransformations, getTargetTransformations, getTimestamps, getTimestamps, getTrees, getTrees, getTSObjectNamespace, getTSObjectNamespaces, getTSObjectNamespaces, getUsageVersion, getUsageVersionState, getUsedByPrototypes, getUsedByPrototypes, getUsingPrototype, getUsingPrototypes, getUsingPrototypes, getVariables, getVariables, setAccessControls, setAccessControls, setChanges, setChanges, setChangeState, setChangeState, setChangeStateState, setCustomAssociations, setCustomAssociations, setDocuments, setDocuments, setExtensions, setExtensions, setExternalIdentities, setExternalIdentities, setGroups, setGroups, setImplementors, setImplementors, setKeywords, setKeywords, setLocalizedAttributes, setLocalizedAttributes, setLockedBy, setLockedBy, setLockedByState, setNotes, setNotes, setPrimaryPropertyGroup, setPrimaryPropertyGroups, setPrimaryPropertyGroups, setPrompts, setPrompts, setProperties, setProperties, setPropertySets, setPropertySets, setReferencedObjects, setReferencedObjects, setResponsibleParties, setResponsibleParties, setSourceTransformations, setSourceTransformations, setSpecSourceTransformations, setSpecSourceTransformations, setSpecTargetTransformations, setSpecTargetTransformations, setTargetTransformations, setTargetTransformations, setTimestamps, setTimestamps, setTrees, setTrees, setTSObjectNamespace, setTSObjectNamespaces, setTSObjectNamespaces, setUsageVersion, setUsageVersion, setUsageVersion, setUsageVersion, setUsageVersionState, setUsedByPrototypes, setUsedByPrototypes, setUsingPrototype, setUsingPrototypes, setUsingPrototypes, setVariables, setVariables
 
Methods inherited from interface com.sas.metadata.remote.MdObjectBaseXML
closeUpdateMetadataXML, createEmptyXML, createObjectRefreshXML, createObjectXML, createObjectXML, createUpdateAssociationXML, createUpdateAssociationXML, createUpdateSimpleXML, doCreateUpdateXML, getUpdateSimpleSubstring, updateMetadataAll
 
Methods inherited from interface com.sas.metadata.remote.MdObjectBaseUtil
addMdObjectListener, delete, dispose, fireMdObjectModified, getAssociatedObjects, getAssociatedObjects, getAssociatedObjects, getAssociationNames, getAssocs, getAssocsWA, getAttributeNames, getAttrs, getAttrsStates, getChangeManagementState, getChgMgtExternalIdentityImportType, getClientSideOnlyObject, getMdObjectAssociation, getPopulatedAssocs, getUpdatedAttrs, getViewList, isCheckedOut, isLocked, objectModified, removeMdObjectListener, setAttrs, setChangeManagementTargetRepository, setChgMgtExternalIdentityImportType, setClientSideOnlyObject, setMdObjectAssociation, touch, updateAssnsIds
 
Methods inherited from interface com.sas.metadata.remote.MdObjectBase
addElementToChangeList, clearChangeList, getChangeList, getCMetadataType, getDesc, getDescMaxLength, getDescState, getFQID, getId, getIdState, getMetadataCreated, getMetadataCreatedState, getMetadataUpdated, getMetadataUpdatedState, getName, getNameMaxLength, getNameState, getObjectStore, getPredAssociations, getRepositoryID, getRequiredAssociations, getState, isAssociationRequired, isNewObject, isPredAssociation, removeElementFromChangeList, resetObject, resetState, resetStates, setCMetadataType, setDesc, setDesc, setDescState, setFQID, setFQID, setId, setId, setIdState, setMetadataCreated, setMetadataCreated, setMetadataCreatedState, setMetadataUpdated, setMetadataUpdated, setMetadataUpdatedState, setName, setName, setNameState, setObjectStore, setState
 

Field Detail

ASSOCIATION_ASSOCIATEDCONDITION_NAME

static final java.lang.String ASSOCIATION_ASSOCIATEDCONDITION_NAME
Constant used for the name of the AssociatedCondition association.

AssociatedCondition: The associated condition used to grant or deny access to a resource. 

See Also:
Constant Field Values

ASSOCIATION_IDENTITIES_NAME

static final java.lang.String ASSOCIATION_IDENTITIES_NAME
Constant used for the name of the Identities association.

Identities: The identities associated to this access control entry. 

See Also:
Constant Field Values

ASSOCIATION_PERMISSIONS_NAME

static final java.lang.String ASSOCIATION_PERMISSIONS_NAME
Constant used for the name of the Permissions association.

Permissions: The permissions that are granted or denied by this access control entry. 

See Also:
Constant Field Values
Method Detail

initializeRequiredObjects

void initializeRequiredObjects()
                               throws java.rmi.RemoteException
(S) This initializes the Required Objects(Roles) which are:

Specified by:
initializeRequiredObjects in interface AccessControl
Specified by:
initializeRequiredObjects in interface MdObjectBaseUtil
Specified by:
initializeRequiredObjects in interface PrimaryType
Specified by:
initializeRequiredObjects in interface Root
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

initializePredObjects

void initializePredObjects()
                           throws java.rmi.RemoteException
(S) Adds the Associated objects to the predObjects which are:

Specified by:
initializePredObjects in interface AccessControl
Specified by:
initializePredObjects in interface MdObjectBase
Specified by:
initializePredObjects in interface PrimaryType
Specified by:
initializePredObjects in interface Root
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.

getAssociatedConditions

AssociationList getAssociatedConditions()
                                        throws java.rmi.RemoteException,
                                               MdException
Gets the Association list of AssociatedConditions

Returns:
The AssociationList of AssociatedConditions which can be of type:
PermissionCondition
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getAssociatedCondition

PermissionCondition getAssociatedCondition()
                                           throws java.rmi.RemoteException,
                                                  MdException
Gets the PermissionCondition for AssociatedCondition

Returns:
The PermissionCondition ( null if not set ) of AssociatedCondition which can be of type:
PermissionCondition
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getIdentities

AssociationList getIdentities()
                              throws java.rmi.RemoteException,
                                     MdException
Gets the Association list of Identities

Returns:
The AssociationList of Identities which can be of type:
Identity
IdentityGroup
Person
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getPermissions

AssociationList getPermissions()
                               throws java.rmi.RemoteException,
                                      MdException
Gets the Association list of Permissions

Returns:
The AssociationList of Permissions which can be of type:
Permission
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getAssociatedConditions

AssociationList getAssociatedConditions(boolean fGoToServer)
                                        throws java.rmi.RemoteException,
                                               MdException
Gets the Associationlist of AssociatedConditions

Parameters:
fGoToServer - boolean Get the value from the server.
Returns:
Returns the AssociatedConditions which can be of type:
PermissionCondition
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getIdentities

AssociationList getIdentities(boolean fGoToServer)
                              throws java.rmi.RemoteException,
                                     MdException
Gets the Associationlist of Identities

Parameters:
fGoToServer - boolean Get the value from the server.
Returns:
Returns the Identities which can be of type:
Identity
IdentityGroup
Person
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

getPermissions

AssociationList getPermissions(boolean fGoToServer)
                               throws java.rmi.RemoteException,
                                      MdException
Gets the Associationlist of Permissions

Parameters:
fGoToServer - boolean Get the value from the server.
Returns:
Returns the Permissions which can be of type:
Permission
Throws:
java.rmi.RemoteException - If error connecting/communicating to/with remote object.
MdException - If error getting/setting part of the object.

setAssociatedConditions

void setAssociatedConditions(AssociationList list)
                             throws java.rmi.RemoteException
Sets the AssociatedConditions list to be list. Objects of which can be of type:
PermissionCondition

Parameters:
list - AssociationList
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setAssociatedConditions

void setAssociatedConditions(AssociationList list,
                             int state)
                             throws java.rmi.RemoteException
Sets the AssociatedConditions list to be list. Objects of which can be of type:
PermissionCondition

Parameters:
list - AssociationList
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setAssociatedCondition

void setAssociatedCondition(PermissionCondition inObject)
                            throws java.rmi.RemoteException
Sets the AssociatedConditions list 0th element to be inObject.

Parameters:
inObject - PermissionCondition
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setIdentities

void setIdentities(AssociationList list)
                   throws java.rmi.RemoteException
Sets the Identities list to be list. Objects of which can be of type:
Identity
IdentityGroup
Person

Parameters:
list - AssociationList
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setIdentities

void setIdentities(AssociationList inObjects,
                   int state)
                   throws java.rmi.RemoteException
Sets the entire Identities list to match the passed in AssociationList, sets the state of the Identities

Parameters:
inObjects - AssociationList
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setPermissions

void setPermissions(AssociationList list)
                    throws java.rmi.RemoteException
Sets the Permissions list to be list. Objects of which can be of type:
Permission

Parameters:
list - AssociationList
Throws:
java.rmi.RemoteException - If error communicating with remote object.

setPermissions

void setPermissions(AssociationList inObjects,
                    int state)
                    throws java.rmi.RemoteException
Sets the entire Permissions list to match the passed in AssociationList, sets the state of the Permissions

Parameters:
inObjects - AssociationList
state - int
Throws:
java.rmi.RemoteException - If error communicating with remote object.



Copyright © 2009 SAS Institute Inc. All Rights Reserved.