com.ibm.portal.ac
Interface AccessControlAttributeBasedSecurity


public interface AccessControlAttributeBasedSecurity

The AccessControlAttributeBasedSecurityInterface defines a method to get called by the AccessControlAttributeBasedSecurity pattern. The result defines if this ContentItem should be shown for the current user. The custom implementation code could include complex decision finding algorithms to match the requesting user with the attributes of the requested ContentItem and validate if access should get permitted. To support a solid Portal AC environment this decision is only used for view access on ContentItems. Return true if the user should have access to the ContentItem. Return false if the user should not have access to the ContentItem. Return null if the decision could not be made. The PUMA API could get used to retrieve more information about the current user.

Since:
8.5
Note:
This interface is designed to be implemented by clients.

Method Summary
 java.lang.Boolean hasViewPermission(java.security.Principal Principal, ContentItem ACContentItem)
          Returns the boolean defining the decision.
 

Method Detail

hasViewPermission

java.lang.Boolean hasViewPermission(java.security.Principal Principal,
                                    ContentItem ACContentItem)
                                    throws com.ibm.portal.um.exceptions.PumaAttributeException,
                                           com.ibm.portal.um.exceptions.PumaSystemException,
                                           com.ibm.portal.um.exceptions.PumaModelException,
                                           com.ibm.portal.um.exceptions.PumaMissingAccessRightsException
Returns the boolean defining the decision.

Parameters:
java.security.Principal - Principal is not case sensitive.
attributeCallbackObject - defined by AccessControlAttributeBasedSecurityCallbackInterface
Returns:
Boolean defining the decision. Return Null if decision could not be made.
Throws:
com.ibm.portal.um.exceptions.PumaAttributeException - covers items like Attribute not defined, modify read only attribute, Schema violation.
com.ibm.portal.um.exceptions.PumaSystemException - covers items like database not available, Member Subsystem not available.
com.ibm.portal.um.exceptions.PumaModelException - covers items like wrong Member Identifier, no Member found with this identifier.
com.ibm.portal.um.exceptions.PumaMissingAccessRightsException - is thrown whenever an action is executed without the necessary accessrights