Class AclAdvice
java.lang.Object
gemma.gsec.acl.BaseAclAdvice
ubic.gemma.core.security.authorization.acl.AclAdvice
@Component
public class AclAdvice
extends gemma.gsec.acl.BaseAclAdvice
For permissions modification to be triggered, the method name must match certain patterns, which include "create", or
"remove". These patterns are defined in the
Pointcuts
. Other methods that would require
changes to permissions will not work without modifying the source code. *- Author:
- Paul
-
Constructor Summary
ConstructorsConstructorDescriptionAclAdvice
(gemma.gsec.acl.domain.AclService aclService, SessionFactory sessionFactory, org.springframework.security.acls.model.ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
canSkipAclCheck
(Object object) protected boolean
canSkipAssociationCheck
(Object object, String propertyName) protected void
createOrUpdateAclSpecialCases
(org.springframework.security.acls.model.MutableAcl acl, org.springframework.security.acls.model.Acl parentAcl, org.springframework.security.acls.model.Sid sid, gemma.gsec.model.Securable object) protected org.springframework.security.core.GrantedAuthority
getUserGroupGrantedAuthority
(gemma.gsec.model.Securable object) protected String
getUserName
(gemma.gsec.model.Securable user) protected boolean
objectIsUser
(gemma.gsec.model.Securable object) protected boolean
objectIsUserGroup
(gemma.gsec.model.Securable object) protected boolean
specialCaseForAssociationFollow
(Object object, String property) protected boolean
specialCaseToKeepPrivateOnCreation
(gemma.gsec.model.Securable object) Methods inherited from class gemma.gsec.acl.BaseAclAdvice
currentUserIsAdmin, currentUserIsAnonymous, currentUserIsRunningAsAdmin, doAclAdvice, getAclService, locateParentAcl, makeObjectIdentity, setupBaseAces, specialCaseToAllowRemovingAcesFromChild
-
Constructor Details
-
AclAdvice
@Autowired public AclAdvice(gemma.gsec.acl.domain.AclService aclService, SessionFactory sessionFactory, org.springframework.security.acls.model.ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy)
-
-
Method Details
-
canSkipAclCheck
- Overrides:
canSkipAclCheck
in classgemma.gsec.acl.BaseAclAdvice
-
canSkipAssociationCheck
- Overrides:
canSkipAssociationCheck
in classgemma.gsec.acl.BaseAclAdvice
-
createOrUpdateAclSpecialCases
protected void createOrUpdateAclSpecialCases(org.springframework.security.acls.model.MutableAcl acl, @Nullable org.springframework.security.acls.model.Acl parentAcl, org.springframework.security.acls.model.Sid sid, gemma.gsec.model.Securable object) - Overrides:
createOrUpdateAclSpecialCases
in classgemma.gsec.acl.BaseAclAdvice
-
getUserGroupGrantedAuthority
protected org.springframework.security.core.GrantedAuthority getUserGroupGrantedAuthority(gemma.gsec.model.Securable object) - Specified by:
getUserGroupGrantedAuthority
in classgemma.gsec.acl.BaseAclAdvice
-
getUserName
- Specified by:
getUserName
in classgemma.gsec.acl.BaseAclAdvice
-
objectIsUser
protected boolean objectIsUser(gemma.gsec.model.Securable object) - Specified by:
objectIsUser
in classgemma.gsec.acl.BaseAclAdvice
-
objectIsUserGroup
protected boolean objectIsUserGroup(gemma.gsec.model.Securable object) - Specified by:
objectIsUserGroup
in classgemma.gsec.acl.BaseAclAdvice
-
specialCaseForAssociationFollow
- Overrides:
specialCaseForAssociationFollow
in classgemma.gsec.acl.BaseAclAdvice
-
specialCaseToKeepPrivateOnCreation
protected boolean specialCaseToKeepPrivateOnCreation(gemma.gsec.model.Securable object) - Overrides:
specialCaseToKeepPrivateOnCreation
in classgemma.gsec.acl.BaseAclAdvice
-