public class ProcessPermissionServiceImpl extends AbstractPlatformSecurityService implements ProcessPermissionService
Modifier and Type | Field and Description |
---|---|
protected HistoryService |
historyService |
protected ProcessEngineConfiguration |
processEngineConfiguration |
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 |
---|
ProcessPermissionServiceImpl() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
checkPermissionInProcessParent(String processPermission,
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 ProcessDefinition |
findProcessDefinition(String processDefinitionId,
String processDefinitionKey,
String tenantId) |
protected ProcessDefinition |
findProcessDefinitionTenantAware(String processDefinitionKey,
String tenantId) |
HistoricProcessInstance |
getHistoricProcessInstance(String processInstanceId,
String tenantId) |
List<String> |
getHistoricProcessPermissions(String processInstanceId,
String definitionId,
List<? extends IdentityLinkInfo> identityLinks,
String tenantId) |
ProcessInstance |
getProcessInstance(String processInstanceId,
String tenantId) |
List<String> |
getRuntimeProcessPermissions(String processInstanceId,
String definitionId,
List<? extends IdentityLinkInfo> identityLinks,
String tenantId) |
String |
getScopeType()
The scope type that this permissions service supports.
|
protected SecurityPolicyModel |
getSecurityModel(String processDefinitionId,
String tenantId) |
protected boolean |
hasPermission(String permission,
String startUserId,
List<? extends IdentityLinkInfo> identityLinks,
SecurityPolicyModel securityPolicyModel) |
boolean |
hasPermissionForHistoricProcessInstance(String permission,
HistoricProcessInstance processInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasPermissionForHistoricScope(String permission,
String scopeId,
String userId,
Set<String> groupKeys,
String tenantId) |
boolean |
hasPermissionForProcessInstance(String permission,
ProcessInstance processInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
protected boolean |
hasPermissionForProcessInstance(String permission,
String processInstanceId,
boolean isHistoricInstance,
String startUserId,
List<? extends IdentityLinkInfo> identityLinks,
String processDefinitionId,
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 |
validatePermissionForHistoricProcessInstance(String permission,
HistoricProcessInstance processInstance,
String userId,
Set<String> groupKeys,
String tenantId) |
void |
validatePermissionForProcessInstance(String permission,
ProcessInstance processInstance,
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 HistoryService historyService
@Autowired protected ProcessEngineConfiguration processEngineConfiguration
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 validatePermissionForProcessInstance(String permission, ProcessInstance processInstance, String userId, Set<String> groupKeys, String tenantId)
validatePermissionForProcessInstance
in interface ProcessPermissionService
public boolean hasPermissionForProcessInstance(String permission, ProcessInstance processInstance, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForProcessInstance
in interface ProcessPermissionService
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 void validatePermissionForHistoricProcessInstance(String permission, HistoricProcessInstance processInstance, String userId, Set<String> groupKeys, String tenantId)
validatePermissionForHistoricProcessInstance
in interface ProcessPermissionService
public boolean hasPermissionForHistoricProcessInstance(String permission, HistoricProcessInstance processInstance, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForHistoricProcessInstance
in interface ProcessPermissionService
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 boolean hasPermissionForRuntimeScope(String permission, String scopeId, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForRuntimeScope
in interface PermissionService
public boolean hasPermissionForHistoricScope(String permission, String scopeId, String userId, Set<String> groupKeys, String tenantId)
hasPermissionForHistoricScope
in interface PermissionService
public List<String> getRuntimeProcessPermissions(String processInstanceId, String definitionId, List<? extends IdentityLinkInfo> identityLinks, String tenantId)
getRuntimeProcessPermissions
in interface ProcessPermissionService
public List<String> getHistoricProcessPermissions(String processInstanceId, String definitionId, List<? extends IdentityLinkInfo> identityLinks, String tenantId)
getHistoricProcessPermissions
in interface ProcessPermissionService
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 ProcessPermissionService
public ProcessInstance getProcessInstance(String processInstanceId, String tenantId)
getProcessInstance
in interface ProcessPermissionService
public HistoricProcessInstance getHistoricProcessInstance(String processInstanceId, String tenantId)
getHistoricProcessInstance
in interface ProcessPermissionService
protected boolean hasPermissionForProcessInstance(String permission, String processInstanceId, boolean isHistoricInstance, String startUserId, List<? extends IdentityLinkInfo> identityLinks, String processDefinitionId, String userId, Set<String> groupKeys, String tenantId)
protected boolean hasPermission(String permission, String startUserId, List<? extends IdentityLinkInfo> identityLinks, SecurityPolicyModel securityPolicyModel)
protected SecurityPolicyModel getSecurityModel(String processDefinitionId, String tenantId)
protected ProcessDefinition findProcessDefinition(String processDefinitionId, String processDefinitionKey, String tenantId)
protected ProcessDefinition findProcessDefinitionTenantAware(String processDefinitionKey, String tenantId)
protected List<String> translateParentPermissions(List<String> parentPermissions, String scopeType)
protected boolean checkPermissionInProcessParent(String processPermission, SecurityPolicyModel securityPolicyModel)