Class DefaultPermissionCheckingService
- java.lang.Object
-
- de.hybris.platform.servicelayer.security.permissions.impl.DefaultPermissionCheckingService
-
- All Implemented Interfaces:
PermissionCheckingService
public class DefaultPermissionCheckingService extends java.lang.Object implements PermissionCheckingService
-
-
Constructor Summary
Constructors Constructor Description DefaultPermissionCheckingService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PermissionCheckResult
checkAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)
Checks if a principal has a permission to an attribute descriptor.PermissionCheckResult
checkAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, java.lang.String permissionName)
Same asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)
but uses default principal.PermissionCheckResult
checkAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, PrincipalModel principal, java.lang.String permissionName)
Same asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)
but allows to use String values to specify attribute descriptor.PermissionCheckResult
checkAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, java.lang.String permissionName)
Same asPermissionCheckingService.checkAttributeDescriptorPermission(String, String, PrincipalModel, String)
but uses default principal.protected PermissionCheckValue
checkAttributePermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)
Checks the type permission upon this attribute of the given principal.PermissionCheckResult
checkGlobalPermission(PrincipalModel principal, java.lang.String permissionName)
Checks if a principal has a given permission assigned globally.PermissionCheckResult
checkGlobalPermission(java.lang.String permissionName)
Same asPermissionCheckingService.checkGlobalPermission(PrincipalModel, String)
but uses default principal.PermissionCheckResult
checkItemPermission(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
This method tries to check for item permission assignments first.PermissionCheckResult
checkItemPermission(ItemModel item, java.lang.String permissionName)
Same asPermissionCheckingService.checkItemPermission(ItemModel, PrincipalModel, String)
but uses default principal.protected PermissionCheckValue
checkItemPermissionForPrincipalHierarchy(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
Checks permission assignments for given item, permission and principal (with it's groups hierarchy).protected PermissionCheckValue
checkPermissionForGlobal(PrincipalModel principal, java.lang.String permissionName)
Checks global assignment of given permission to given principal.protected PermissionCheckValue
checkPermissionForItem(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
Checks assignment of given permission to given item for given principal.PermissionCheckResult
checkTypePermission(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)
This method tries to check for type permission assignments first.PermissionCheckResult
checkTypePermission(ComposedTypeModel type, java.lang.String permissionName)
Same asPermissionCheckingService.checkTypePermission(ComposedTypeModel, PrincipalModel, String)
but uses default principal.PermissionCheckResult
checkTypePermission(java.lang.String typeCode, PrincipalModel principal, java.lang.String permissionName)
PermissionCheckResult
checkTypePermission(java.lang.String typeCode, java.lang.String permissionName)
Same asPermissionCheckingService.checkTypePermission(String, PrincipalModel, String)
but uses default principal.protected PermissionCheckValue
checkTypePermissionForTypeHierarchy(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)
Checks permission assignments for given type (involving type's ancestors), permission and principal (with it's groups hierarchy).protected PermissionCheckValue
genericPermissionCheckingForPrincipalHierarchy(PermissionChecker permissionChecker, PrincipalModel principal, java.lang.String permissionName)
Generic method for checking permissions within principal groups hierarchy.protected PrincipalModel
getDefaultPrincipal()
FlexibleSearchService
getFlexibleSearchService()
ModelService
getModelService()
PermissionCheckValueMappingStrategy
getPermissionCheckValMappingStrategy()
protected UserRightModel
getPermissionForName(java.lang.String permissionName)
protected PK
getPermissionPKForName(java.lang.String permissionName)
Returns null if not found!PrincipalHierarchyCheckingStrategy
getPrincipalHierarchyCheckingStrategy()
TypeService
getTypeService()
UserService
getUserService()
void
setFlexibleSearchService(FlexibleSearchService flexibleSearchService)
void
setModelService(ModelService modelService)
void
setPermissionCheckValMappingStrategy(PermissionCheckValueMappingStrategy permissionCheckValMappingStrategy)
void
setPermissionManagementStrategyFactory(PermissionManagementStrategyFactory permissionManagementStrategyFactory)
void
setPrincipalHierarchyCheckingStrategy(PrincipalHierarchyCheckingStrategy principalHierarchyCheckingStrategy)
void
setTypeService(TypeService typeService)
void
setUserService(UserService userService)
protected PermissionCheckValue
translateItemCheckingOutcome(int rawMatch)
-
-
-
Field Detail
-
NOT_FOUND
public static final int NOT_FOUND
- See Also:
- Constant Field Values
-
POSITIVE
public static final int POSITIVE
- See Also:
- Constant Field Values
-
NEGATIVE
public static final int NEGATIVE
- See Also:
- Constant Field Values
-
EVEN
public static final int EVEN
- See Also:
- Constant Field Values
-
-
Method Detail
-
checkItemPermission
public PermissionCheckResult checkItemPermission(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
This method tries to check for item permission assignments first. If nothing is found then it looks for type permission assignments. If still nothing is found, it tries global permission assignments.- Specified by:
checkItemPermission
in interfacePermissionCheckingService
-
checkItemPermission
public PermissionCheckResult checkItemPermission(ItemModel item, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkItemPermission(ItemModel, PrincipalModel, String)
but uses default principal.- Specified by:
checkItemPermission
in interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)
This method tries to check for type permission assignments first. If nothing is found then it searches for global permission assignments- Specified by:
checkTypePermission
in interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(ComposedTypeModel type, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkTypePermission(ComposedTypeModel, PrincipalModel, String)
but uses default principal.- Specified by:
checkTypePermission
in interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(java.lang.String typeCode, PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
- Specified by:
checkTypePermission
in interfacePermissionCheckingService
-
checkTypePermission
public PermissionCheckResult checkTypePermission(java.lang.String typeCode, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkTypePermission(String, PrincipalModel, String)
but uses default principal.- Specified by:
checkTypePermission
in interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Checks if a principal has a permission to an attribute descriptor. For explanation when a principal has permission to an attribute descriptor see: Attribute Descriptor permission assignments checking- Specified by:
checkAttributeDescriptorPermission
in interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)
but allows to use String values to specify attribute descriptor.- Specified by:
checkAttributeDescriptorPermission
in interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(AttributeDescriptorModel attributeDescriptor, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkAttributeDescriptorPermission(AttributeDescriptorModel, PrincipalModel, String)
but uses default principal.- Specified by:
checkAttributeDescriptorPermission
in interfacePermissionCheckingService
-
checkAttributeDescriptorPermission
public PermissionCheckResult checkAttributeDescriptorPermission(java.lang.String typeCode, java.lang.String attributeQualifier, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkAttributeDescriptorPermission(String, String, PrincipalModel, String)
but uses default principal.- Specified by:
checkAttributeDescriptorPermission
in interfacePermissionCheckingService
-
checkGlobalPermission
public PermissionCheckResult checkGlobalPermission(PrincipalModel principal, java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Checks if a principal has a given permission assigned globally. For explanation when a principal has permission assigned globally see: Global permission assignments checking- Specified by:
checkGlobalPermission
in interfacePermissionCheckingService
-
checkGlobalPermission
public PermissionCheckResult checkGlobalPermission(java.lang.String permissionName)
Description copied from interface:PermissionCheckingService
Same asPermissionCheckingService.checkGlobalPermission(PrincipalModel, String)
but uses default principal.- Specified by:
checkGlobalPermission
in interfacePermissionCheckingService
-
checkPermissionForGlobal
protected PermissionCheckValue checkPermissionForGlobal(PrincipalModel principal, java.lang.String permissionName)
Checks global assignment of given permission to given principal. Does not perform principal groups hierarchy checks!
-
checkPermissionForItem
protected PermissionCheckValue checkPermissionForItem(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
Checks assignment of given permission to given item for given principal. Does not perform principal groups hierarchy checks, nor type hierarchy checks, nor global permissions checks.
-
translateItemCheckingOutcome
protected PermissionCheckValue translateItemCheckingOutcome(int rawMatch)
-
checkItemPermissionForPrincipalHierarchy
protected PermissionCheckValue checkItemPermissionForPrincipalHierarchy(ItemModel item, PrincipalModel principal, java.lang.String permissionName)
Checks permission assignments for given item, permission and principal (with it's groups hierarchy). Does not check type permission assignments nor global permission assignments.
-
checkTypePermissionForTypeHierarchy
protected PermissionCheckValue checkTypePermissionForTypeHierarchy(ComposedTypeModel type, PrincipalModel principal, java.lang.String permissionName)
Checks permission assignments for given type (involving type's ancestors), permission and principal (with it's groups hierarchy). Does not check global permission assignments!
-
checkAttributePermission
protected PermissionCheckValue checkAttributePermission(AttributeDescriptorModel attributeDescriptor, PrincipalModel principal, java.lang.String permissionName)
Checks the type permission upon this attribute of the given principal.Works similar to
Item.checkPermission(de.hybris.platform.jalo.security.UserRight)
except that the permissions of the enclosing type and super attribute are evaluated in case no permission is set for this attribute.The evaluation first checks the enclosing type and in case no permission is defined there too just checks the super attribute recursively.
- Parameters:
principal
- the principal to checkpermissionName
- the permission to check
-
genericPermissionCheckingForPrincipalHierarchy
protected PermissionCheckValue genericPermissionCheckingForPrincipalHierarchy(PermissionChecker permissionChecker, PrincipalModel principal, java.lang.String permissionName)
Generic method for checking permissions within principal groups hierarchy. To perform checking it uses providedPrincipalHierarchyCheckingStrategy
.
-
getDefaultPrincipal
protected PrincipalModel getDefaultPrincipal()
-
getPermissionPKForName
protected PK getPermissionPKForName(java.lang.String permissionName)
Returns null if not found!
-
getPermissionForName
protected UserRightModel getPermissionForName(java.lang.String permissionName)
-
getUserService
public UserService getUserService()
-
setUserService
public void setUserService(UserService userService)
-
getModelService
public ModelService getModelService()
-
setModelService
public void setModelService(ModelService modelService)
-
getFlexibleSearchService
public FlexibleSearchService getFlexibleSearchService()
-
setFlexibleSearchService
public void setFlexibleSearchService(FlexibleSearchService flexibleSearchService)
-
getTypeService
public TypeService getTypeService()
-
setTypeService
public void setTypeService(TypeService typeService)
-
getPermissionCheckValMappingStrategy
public PermissionCheckValueMappingStrategy getPermissionCheckValMappingStrategy()
-
setPermissionCheckValMappingStrategy
public void setPermissionCheckValMappingStrategy(PermissionCheckValueMappingStrategy permissionCheckValMappingStrategy)
-
getPrincipalHierarchyCheckingStrategy
public PrincipalHierarchyCheckingStrategy getPrincipalHierarchyCheckingStrategy()
-
setPrincipalHierarchyCheckingStrategy
public void setPrincipalHierarchyCheckingStrategy(PrincipalHierarchyCheckingStrategy principalHierarchyCheckingStrategy)
-
setPermissionManagementStrategyFactory
public void setPermissionManagementStrategyFactory(PermissionManagementStrategyFactory permissionManagementStrategyFactory)
-
-