public class UserPermissionServiceImpl extends AbstractDmnBasedPermissionHelper<PlatformUser> implements UserPermissionService
Modifier and Type | Field and Description |
---|---|
protected CoreIdmEngineConfiguration |
coreIdmEngineConfiguration |
protected String |
decisionKeyDefaultPermissions |
NONE_VALUE, OUTPUT_KEY_ERROR_MESSAGE, OUTPUT_KEY_ERROR_MESSAGE_CODE, OUTPUT_KEY_GROUP_NEEDED, OUTPUT_KEY_PERMISSION
Constructor and Description |
---|
UserPermissionServiceImpl(CoreIdmEngineConfiguration coreIdmEngineConfiguration) |
Modifier and Type | Method and Description |
---|---|
Optional<String> |
checkUserCreation(String userId,
Collection<String> userGroupKeys,
String userTenantId,
String userToCreateId) |
Optional<String> |
checkUserCreation(String userId,
String userToCreateId)
Deprecated.
|
Optional<String> |
checkUserDeactivation(String userId,
Collection<String> userGroupKeys,
String userTenantId,
String userToDeactivateId) |
Optional<String> |
checkUserDeactivation(String userId,
String userToDeactivateId)
Deprecated.
|
Optional<String> |
checkUserReactivation(String userId,
Collection<String> userGroupKeys,
String userTenantId,
String userToReactivateId) |
Optional<String> |
checkUserReactivation(String userId,
String userToReactivateId)
Deprecated.
|
protected Map<String,Object> |
createRuleInputForDefaultModel(String userId,
AuthorizedAction action,
PlatformUser scopedObject,
Map<String,Object> detailedRuleInput,
CommandContext commandContext)
If
AbstractDmnBasedPermissionHelper.getDecisionKeyDefaultPermissions() returns a non-null value, this method must be implemented in order to create the rule input data for
evaluating the default permission model. |
protected String |
getDecisionKeyDefaultPermissions()
If the permission helper is based on a default and detail DMN permission rule mechanism, this method must return the DMN key of the default
permission rule model to execute.
|
protected String |
getTenantId(PlatformUser user) |
void |
setDecisionKeyDefaultPermissions(String decisionKeyDefaultPermissions) |
evaluateDefaultPermissionOutput, evaluatePermissionRuleOutput, evaluatePermissionsAndProcessResult, executeAndLogPermissionModel, getEmptyListOnNullValue, getGroups, isGroupMember, isUserMemberOfGroup, isUserType, processErrorMessage, renderErrorMessage
protected String decisionKeyDefaultPermissions
protected final CoreIdmEngineConfiguration coreIdmEngineConfiguration
public UserPermissionServiceImpl(CoreIdmEngineConfiguration coreIdmEngineConfiguration)
@Deprecated public Optional<String> checkUserCreation(String userId, String userToCreateId)
checkUserCreation
in interface UserPermissionService
public Optional<String> checkUserCreation(String userId, Collection<String> userGroupKeys, String userTenantId, String userToCreateId)
checkUserCreation
in interface UserPermissionService
@Deprecated public Optional<String> checkUserDeactivation(String userId, String userToDeactivateId)
checkUserDeactivation
in interface UserPermissionService
public Optional<String> checkUserDeactivation(String userId, Collection<String> userGroupKeys, String userTenantId, String userToDeactivateId)
checkUserDeactivation
in interface UserPermissionService
@Deprecated public Optional<String> checkUserReactivation(String userId, String userToReactivateId)
checkUserReactivation
in interface UserPermissionService
public Optional<String> checkUserReactivation(String userId, Collection<String> userGroupKeys, String userTenantId, String userToReactivateId)
checkUserReactivation
in interface UserPermissionService
protected Map<String,Object> createRuleInputForDefaultModel(String userId, AuthorizedAction action, PlatformUser scopedObject, Map<String,Object> detailedRuleInput, CommandContext commandContext)
AbstractDmnBasedPermissionHelper
AbstractDmnBasedPermissionHelper.getDecisionKeyDefaultPermissions()
returns a non-null value, this method must be implemented in order to create the rule input data for
evaluating the default permission model. The easiest way is by just returning the same rule input as being used for the detailed rule model, but
in some cases, the rule input data is different for the default DMN model.createRuleInputForDefaultModel
in class AbstractDmnBasedPermissionHelper<PlatformUser>
userId
- the id of the user to test for action permissionsaction
- the action to test privilegesscopedObject
- the optional scoped object for which the action should be checkeddetailedRuleInput
- the rule input as provided and used for the detailed rule model executioncommandContext
- the command context used for execution or access to further servicesprotected String getTenantId(PlatformUser user)
getTenantId
in class AbstractDmnBasedPermissionHelper<PlatformUser>
protected String getDecisionKeyDefaultPermissions()
AbstractDmnBasedPermissionHelper
getDecisionKeyDefaultPermissions
in class AbstractDmnBasedPermissionHelper<PlatformUser>
null
, if none neededpublic void setDecisionKeyDefaultPermissions(String decisionKeyDefaultPermissions)