org.opencrx.kernel.layer.model
Class AccessControl_1
java.lang.Object
org.openmdx.application.dataprovider.spi.Layer_1
org.openmdx.application.dataprovider.spi.BeforeImageCachingLayer_1
org.openmdx.application.dataprovider.layer.model.SystemAttributes_1
org.openmdx.application.dataprovider.layer.model.Standard_1
org.opencrx.kernel.layer.model.AccessControl_1
- All Implemented Interfaces:
- org.openmdx.application.dataprovider.cci.Dataprovider_1_0, org.openmdx.application.dataprovider.spi.Layer_1_0, org.openmdx.application.dataprovider.spi.Layer_1_1, org.openmdx.application.dataprovider.spi.Layer_1_2, org.openmdx.application.dataprovider.spi.Operation_1_0
public class AccessControl_1
- extends org.openmdx.application.dataprovider.layer.model.Standard_1
openCRX access control plugin. Implements the openCRX access control logic.
This plugin is implemented as openMDX compatibility plugin. It will be
migrated to a JMI plugin in one of the next versions.
|
Method Summary |
void |
activate(short id,
org.openmdx.application.configuration.Configuration configuration,
org.openmdx.application.dataprovider.spi.Layer_1_0 delegation)
|
protected void |
completeAccessGrantedByParent(org.openmdx.application.dataprovider.cci.ServiceHeader header,
javax.resource.cci.MappedRecord object,
javax.resource.cci.MappedRecord accessGrantedByParent)
|
protected void |
completeObject(org.openmdx.application.dataprovider.cci.ServiceHeader header,
javax.resource.cci.MappedRecord object,
javax.resource.cci.MappedRecord accessGrantedByParent)
|
protected void |
completeOwningUserAndGroup(org.openmdx.application.dataprovider.cci.ServiceHeader header,
javax.resource.cci.MappedRecord object)
|
protected org.openmdx.application.dataprovider.cci.DataproviderReply |
completeReply(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderReply reply,
javax.resource.cci.MappedRecord accessGrantedByParent)
|
org.openmdx.application.dataprovider.cci.DataproviderReply |
create(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
|
void |
epilog(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest[] requests,
org.openmdx.application.dataprovider.cci.DataproviderReply[] replies)
|
org.openmdx.application.dataprovider.cci.DataproviderReply |
find(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
|
org.openmdx.application.dataprovider.cci.DataproviderReply |
get(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
|
protected org.openmdx.base.naming.Path |
getGroupIdentity(org.openmdx.base.naming.Path accessPath,
String qualifiedPrincipalName)
|
List<org.openmdx.base.naming.Path> |
getInheritFromParentTypes()
Returns a list of types as path patterns of object references which inherit
the security settings from the parent object. |
protected String |
getQualifiedPrincipalName(org.openmdx.base.naming.Path principalIdentity)
|
protected String |
getQualifiedPrincipalName(org.openmdx.base.naming.Path accessPath,
String principalName)
|
protected org.openmdx.base.mof.cci.ModelElement_1_0 |
getReferencedType(org.openmdx.base.naming.Path accessPath,
FilterProperty[] filter)
|
org.openmdx.application.dataprovider.cci.RequestCollection |
getRunAsRootDelegation()
|
org.openmdx.application.dataprovider.cci.RequestCollection |
getSecurityProviderConnection()
|
protected org.openmdx.base.naming.Path |
getUserIdentity(org.openmdx.base.naming.Path accessPath,
String qualifiedPrincipalName)
|
protected boolean |
isPrincipalGroup(javax.resource.cci.MappedRecord object)
|
protected boolean |
isSecureObject(javax.resource.cci.MappedRecord object)
|
protected boolean |
isSecureObject(org.openmdx.base.mof.cci.ModelElement_1_0 type)
|
org.openmdx.application.dataprovider.cci.DataproviderReply |
operation(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
|
void |
prolog(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest[] requests)
|
org.openmdx.application.dataprovider.cci.DataproviderReply |
remove(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
|
org.openmdx.application.dataprovider.cci.DataproviderReply |
replace(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
|
protected javax.resource.cci.MappedRecord |
retrieveObjectFromLocal(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.base.naming.Path identity)
|
protected String |
uidAsString()
|
| Methods inherited from class org.openmdx.application.dataprovider.layer.model.Standard_1 |
attributeIsInstanceOf, attributeMightBeInstanceOfAnXMLDatatype, completeDatatypes, completeObject, completeReply, getBeforeImage, getInstanceOf, getObjectClass, getObjectClassName, isInstanceOfBasicObject, isModified, mapInstanceOfFilterProperty, modify, notifyPreDelete, prepareDatatypes, prepareRequest, propagateDigest, removeContexts, removeNonPersistentAttributes, setIdentity, useDatatypes, verifyDigest |
| Methods inherited from class org.openmdx.application.dataprovider.spi.Layer_1 |
configurationSpecification, deactivate, epilog, getConfiguration, getDelegation, getDelegation, getId, getLenientProcessor, getModel, isBypassedByLenientRequests, isLenient, process, process, process, process, prolog, set, startPublishing, terminal |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
EXTENT_PATTERN
protected static final org.openmdx.base.naming.Path EXTENT_PATTERN
AccessControl_1
public AccessControl_1()
getUserIdentity
protected org.openmdx.base.naming.Path getUserIdentity(org.openmdx.base.naming.Path accessPath,
String qualifiedPrincipalName)
getGroupIdentity
protected org.openmdx.base.naming.Path getGroupIdentity(org.openmdx.base.naming.Path accessPath,
String qualifiedPrincipalName)
getQualifiedPrincipalName
protected String getQualifiedPrincipalName(org.openmdx.base.naming.Path accessPath,
String principalName)
getQualifiedPrincipalName
protected String getQualifiedPrincipalName(org.openmdx.base.naming.Path principalIdentity)
retrieveObjectFromLocal
protected javax.resource.cci.MappedRecord retrieveObjectFromLocal(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.base.naming.Path identity)
throws ServiceException
- Throws:
ServiceException
completeOwningUserAndGroup
protected void completeOwningUserAndGroup(org.openmdx.application.dataprovider.cci.ServiceHeader header,
javax.resource.cci.MappedRecord object)
throws ServiceException
- Throws:
ServiceException
completeAccessGrantedByParent
protected void completeAccessGrantedByParent(org.openmdx.application.dataprovider.cci.ServiceHeader header,
javax.resource.cci.MappedRecord object,
javax.resource.cci.MappedRecord accessGrantedByParent)
throws ServiceException
- Throws:
ServiceException
completeObject
protected void completeObject(org.openmdx.application.dataprovider.cci.ServiceHeader header,
javax.resource.cci.MappedRecord object,
javax.resource.cci.MappedRecord accessGrantedByParent)
throws ServiceException
- Throws:
ServiceException
completeReply
protected org.openmdx.application.dataprovider.cci.DataproviderReply completeReply(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderReply reply,
javax.resource.cci.MappedRecord accessGrantedByParent)
throws ServiceException
- Throws:
ServiceException
isPrincipalGroup
protected boolean isPrincipalGroup(javax.resource.cci.MappedRecord object)
throws ServiceException
- Throws:
ServiceException
isSecureObject
protected boolean isSecureObject(javax.resource.cci.MappedRecord object)
throws ServiceException
- Throws:
ServiceException
isSecureObject
protected boolean isSecureObject(org.openmdx.base.mof.cci.ModelElement_1_0 type)
throws ServiceException
- Throws:
ServiceException
getSecurityProviderConnection
public org.openmdx.application.dataprovider.cci.RequestCollection getSecurityProviderConnection()
getRunAsRootDelegation
public org.openmdx.application.dataprovider.cci.RequestCollection getRunAsRootDelegation()
getInheritFromParentTypes
public List<org.openmdx.base.naming.Path> getInheritFromParentTypes()
- Returns a list of types as path patterns of object references which inherit
the security settings from the parent object. This option should be used
only for performance improvements and applied only to business objects
which define a self-contained security entity (e.g. contract, its positions,
depot references and product configurations). Additional paths can be added
by overriding
getInheritFromParentTypes. The API exposes the
granting parent by the reference SecureObject.accessGrantedByParent
and is set by completeObject.
activate
public void activate(short id,
org.openmdx.application.configuration.Configuration configuration,
org.openmdx.application.dataprovider.spi.Layer_1_0 delegation)
throws ServiceException
- Specified by:
activate in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
activate in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
prolog
public void prolog(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest[] requests)
throws ServiceException
- Specified by:
prolog in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
prolog in class org.openmdx.application.dataprovider.layer.model.SystemAttributes_1
- Throws:
ServiceException
epilog
public void epilog(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest[] requests,
org.openmdx.application.dataprovider.cci.DataproviderReply[] replies)
throws ServiceException
- Specified by:
epilog in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
epilog in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
create
public org.openmdx.application.dataprovider.cci.DataproviderReply create(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
throws ServiceException
- Specified by:
create in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
create in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
getReferencedType
protected org.openmdx.base.mof.cci.ModelElement_1_0 getReferencedType(org.openmdx.base.naming.Path accessPath,
FilterProperty[] filter)
throws ServiceException
- Throws:
ServiceException
find
public org.openmdx.application.dataprovider.cci.DataproviderReply find(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
throws ServiceException
- Specified by:
find in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
find in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
get
public org.openmdx.application.dataprovider.cci.DataproviderReply get(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
throws ServiceException
- Specified by:
get in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
get in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
remove
public org.openmdx.application.dataprovider.cci.DataproviderReply remove(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
throws ServiceException
- Specified by:
remove in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
remove in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
replace
public org.openmdx.application.dataprovider.cci.DataproviderReply replace(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
throws ServiceException
- Specified by:
replace in interface org.openmdx.application.dataprovider.spi.Layer_1_0- Overrides:
replace in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
operation
public org.openmdx.application.dataprovider.cci.DataproviderReply operation(org.openmdx.application.dataprovider.cci.ServiceHeader header,
org.openmdx.application.dataprovider.cci.DataproviderRequest request)
throws ServiceException
- Specified by:
operation in interface org.openmdx.application.dataprovider.spi.Operation_1_0- Overrides:
operation in class org.openmdx.application.dataprovider.layer.model.Standard_1
- Throws:
ServiceException
uidAsString
protected final String uidAsString()
This software is published under the BSD license. Copyright © 2003-2009, CRIXP AG, Switzerland, All rights reserved. Use is subject to license terms.