public class CasePermissionServiceImpl extends AbstractPlatformSecurityService implements CasePermissionService
Modifier and Type | Field and Description |
---|---|
protected CmmnEngineConfiguration |
cmmnEngineConfiguration |
protected CmmnHistoryService |
cmmnHistoryService |
additionalAdminUsers, CASE_PREFIX, cmmnRepositoryService, cmmnRuntimeService, cmmnTaskService, defaultSecurityPolicyKey, defaultSecurityPolicyModel, inspectEnabled, permissionServiceRegistry, platformSecurityInterceptor, policyRepositoryService, PROCESS_PREFIX, repositoryService, runtimeService, SECURITY_POLICY_MODEL, TASK_PREFIX, taskService
Constructor and Description |
---|
CasePermissionServiceImpl() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
checkPermissionInCaseParent(String casePermission,
SecurityPolicyModel securityPolicyModel) |
List<String> |
fetchPermissionsForHistoricScope(String scopeId,
boolean checkWritePermissionInParent,
String userId,
Set<String> groupKeys,
String tenantId) |
List<String> |
fetchPermissionsForHistoricScope(String scopeId,
String userId,
Set<String> groupKeys,
String tenantId) |
List<String> |
fetchPermissionsForRuntimeScope(String scopeId,
boolean checkWritePermissionInParent,
String userId,
Set<String> groupKeys,
String tenantId) |
List<String> |
fetchPermissionsForRuntimeScope(String scopeId,
String userId,
Set<String> groupKeys,
String tenantId) |
protected CaseDefinition |
findCaseDefinition(String caseDefinitionId,
String caseDefinitionKey,
String tenantId) |
protected CaseDefinition |
findCaseDefinitionTenantAware(String caseDefinitionKey,
String tenantId) |
CaseInstance |
getCaseInstance(String caseInstanceId,
String tenantId) |
HistoricCaseInstance |
getHistoricCaseInstance(String caseInstanceId,
String tenantId) |
List<String> |
getHistoricCasePermissions(String caseInstanceId,
String definitionId,
List<? extends IdentityLinkInfo> identityLinks,
String tenantId) |
List<String> |
getRuntimeCasePermissions(String caseInstanceId,
String definitionId,
List<? extends IdentityLinkInfo> identityLinks,
String tenantId) |
String |
getScopeType()
The scope type that this permissions service supports.
|
protected SecurityPolicyModel |
getSecurityModel(String caseDefinitionId,
String tenantId) |
protected boolean |
hasPermission(String permission,
String startUserId,
List<? extends IdentityLinkInfo> identityLinks,
SecurityPolicyModel securityPolicyModel) |
boolean |
hasPermissionForCaseInstance(String permission,
CaseInstance caseInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
protected boolean |
hasPermissionForCaseInstance(String permission,
String caseInstanceId,
boolean isHistoricInstance,
String startUserId,
List<? extends IdentityLinkInfo> identityLinks,
String caseDefinitionId,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasPermissionForHistoricCaseInstance(String permission,
HistoricCaseInstance caseInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasPermissionForHistoricScope(String permission,
String scopeId,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasPermissionForRuntimeScope(String permission,
String scopeId,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasPermissionForScope(String permission,
String scopeId,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasReadPermissionOnScopeDefinition(String scopeDefinitionId,
String scopeDefinitionKey,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasReadPermissionOnScopeDefinitionTenantAware(String scopeDefinitionKey,
String userId,
Set<String> groupKeys,
String tenantId) |
protected List<String> |
translateParentPermissions(List<String> parentPermissions,
String scopeType) |
void |
validatePermissionForCaseInstance(String permission,
CaseInstance caseInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
void |
validatePermissionForHistoricCaseInstance(String permission,
HistoricCaseInstance caseInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
currentUserHasAdminRights, currentUserIsSuperAdmin, fetchCasePermissionMappings, fetchCasePermissionMappings, fetchCaseSecurityPolicyModel, fetchPermissions, fetchPermissionsForTask, fetchProcessPermissionMappings, fetchProcessPermissionMappings, fetchProcessSecurityPolicyModel, fetchSecurityPolicyModel, fetchSecurityPolicyModel, fetchSecurityPolicyModelForCaseInstance, fetchSecurityPolicyModelForProcessInstance, fetchSecurityPolicyModelForTask, fetchSecurityPolicyModelForTask, fetchTaskPermissionMappings, fetchTaskPermissionMappings, fetchTaskPermissionMappings, fetchTaskPermissionMappingsForCase, fetchTaskPermissionMappingsForProcess, fetchTaskSecurityPolicyModelForCase, fetchTaskSecurityPolicyModelForProcess, filterPermissionsForRole, getCmmnExtensionElementValue, getCurrentGroupKeys, getCurrentTenantId, getCurrentUserId, getDefaultSecurityPolicyModel, getExtensionElementValue, getSecurityPolicyModelByKey, groupOrUserMatches, groupOrUserMatches, hasAnyMatchingIdentityLink, hasAssigneeOrOwnerIdentityLink, hasPermissionForEntityLinks, hasPermissionForHistoricEntityLinks, setPermissionServiceRegistry, translatePermissionForScope
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
validatePermissionForHistoricScope, validatePermissionForRuntimeScope, validatePermissionForScope, validatePermissionsForHistoricScope, validatePermissionsForRuntimeScope, validateReadPermissionOnScopeDefinition
@Autowired(required=false) protected CmmnHistoryService cmmnHistoryService
@Autowired protected CmmnEngineConfiguration cmmnEngineConfiguration
public String getScopeType()
PermissionService
getScopeType
in interface PermissionService
public boolean hasPermissionForScope(String permission, String scopeId, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForScope
in interface PermissionService
public void validatePermissionForCaseInstance(String permission, CaseInstance caseInstance, String userId, Set<String> groupKeys, String tenantId)
validatePermissionForCaseInstance
in interface CasePermissionService
public boolean hasPermissionForCaseInstance(String permission, CaseInstance caseInstance, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForCaseInstance
in interface CasePermissionService
public void validatePermissionForHistoricCaseInstance(String permission, HistoricCaseInstance caseInstance, String userId, Set<String> groupKeys, String tenantId)
validatePermissionForHistoricCaseInstance
in interface CasePermissionService
public boolean hasPermissionForHistoricCaseInstance(String permission, HistoricCaseInstance caseInstance, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForHistoricCaseInstance
in interface CasePermissionService
public boolean hasPermissionForRuntimeScope(String permission, String scopeId, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForRuntimeScope
in interface PermissionService
public List<String> fetchPermissionsForRuntimeScope(String scopeId, String userId, Set<String> groupKeys, String tenantId)
fetchPermissionsForRuntimeScope
in interface PermissionService
public List<String> fetchPermissionsForRuntimeScope(String scopeId, boolean checkWritePermissionInParent, String userId, Set<String> groupKeys, String tenantId)
fetchPermissionsForRuntimeScope
in interface PermissionService
public boolean hasPermissionForHistoricScope(String permission, String scopeId, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForHistoricScope
in interface PermissionService
public List<String> fetchPermissionsForHistoricScope(String scopeId, String userId, Set<String> groupKeys, String tenantId)
fetchPermissionsForHistoricScope
in interface PermissionService
public List<String> fetchPermissionsForHistoricScope(String scopeId, boolean checkWritePermissionInParent, String userId, Set<String> groupKeys, String tenantId)
fetchPermissionsForHistoricScope
in interface PermissionService
public List<String> getRuntimeCasePermissions(String caseInstanceId, String definitionId, List<? extends IdentityLinkInfo> identityLinks, String tenantId)
getRuntimeCasePermissions
in interface CasePermissionService
public List<String> getHistoricCasePermissions(String caseInstanceId, String definitionId, List<? extends IdentityLinkInfo> identityLinks, String tenantId)
getHistoricCasePermissions
in interface CasePermissionService
public boolean hasReadPermissionOnScopeDefinition(String scopeDefinitionId, String scopeDefinitionKey, String userId, Set<String> groupKeys, String tenantId)
hasReadPermissionOnScopeDefinition
in interface PermissionService
public boolean hasReadPermissionOnScopeDefinitionTenantAware(String scopeDefinitionKey, String userId, Set<String> groupKeys, String tenantId)
hasReadPermissionOnScopeDefinitionTenantAware
in interface CasePermissionService
public CaseInstance getCaseInstance(String caseInstanceId, String tenantId)
getCaseInstance
in interface CasePermissionService
public HistoricCaseInstance getHistoricCaseInstance(String caseInstanceId, String tenantId)
getHistoricCaseInstance
in interface CasePermissionService
protected boolean hasPermissionForCaseInstance(String permission, String caseInstanceId, boolean isHistoricInstance, String startUserId, List<? extends IdentityLinkInfo> identityLinks, String caseDefinitionId, String userId, Set<String> groupKeys, String tenantId)
protected boolean hasPermission(String permission, String startUserId, List<? extends IdentityLinkInfo> identityLinks, SecurityPolicyModel securityPolicyModel)
protected SecurityPolicyModel getSecurityModel(String caseDefinitionId, String tenantId)
protected CaseDefinition findCaseDefinition(String caseDefinitionId, String caseDefinitionKey, String tenantId)
protected CaseDefinition findCaseDefinitionTenantAware(String caseDefinitionKey, String tenantId)
protected List<String> translateParentPermissions(List<String> parentPermissions, String scopeType)
protected boolean checkPermissionInCaseParent(String casePermission, SecurityPolicyModel securityPolicyModel)