protected boolean isUserPrivilege(String privilegeId, String userId) { User user = identityService.createUserQuery().userId(userId).singleResult(); if (user == null) { throw new IllegalArgumentException("Invalid user id"); } return identityService.createPrivilegeQuery().privilegeId(privilegeId).userId(userId).count() > 0; }
protected boolean isGroupPrivilege(String privilegeId, String groupId) { Group group = identityService.createGroupQuery().groupId(groupId).singleResult(); if (group == null) { throw new IllegalArgumentException("Invalid group id"); } return identityService.createPrivilegeQuery().privilegeId(privilegeId).groupId(groupId).count() > 0; }
public List<Privilege> findPrivileges() { return identityService.createPrivilegeQuery().list(); }
@Override public Privilege findPrivilege(String id) { return identityService.createPrivilegeQuery().privilegeId(id).singleResult(); }
query.privilegeId(allRequestParams.get("id")); query.privilegeName(allRequestParams.get("name")); query.userId(allRequestParams.get("userId")); query.groupId(allRequestParams.get("groupId"));
@Override public UserInformation getUserInformation(String userId) { User user = identityService.createUserQuery().userId(userId).singleResult(); if (user == null) { throw new NotFoundException(); } List<Privilege> userPrivileges = identityService.createPrivilegeQuery().userId(userId).list(); Set<String> privilegeNames = new HashSet<>(); for (Privilege userPrivilege : userPrivileges) { privilegeNames.add(userPrivilege.getName()); } List<Group> groups = identityService.createGroupQuery().groupMember(userId).list(); if (groups.size() > 0) { List<String> groupIds = new ArrayList<>(); for (Group group : groups) { groupIds.add(group.getId()); } List<Privilege> groupPrivileges = identityService.createPrivilegeQuery().groupIds(groupIds).list(); for (Privilege groupPrivilege : groupPrivileges) { privilegeNames.add(groupPrivilege.getName()); } } return new UserInformation(user, groups, new ArrayList<>(privilegeNames)); }
@Override public Privilege execute(CommandContext commandContext) { long count = CommandContextUtil.getPrivilegeEntityManager(commandContext).createNewPrivilegeQuery().privilegeName(name).count(); if (count > 0) { throw new FlowableIllegalArgumentException("Provided privilege name already exists"); } PrivilegeEntity entity = CommandContextUtil.getPrivilegeEntityManager(commandContext).create(); entity.setName(name); CommandContextUtil.getPrivilegeEntityManager(commandContext).insert(entity); return entity; } }
public void deleteUser(String userId) { List<Privilege> privileges = identityService.createPrivilegeQuery().userId(userId).list(); for (Privilege privilege : privileges) { identityService.deleteUserPrivilegeMapping(privilege.getId(), userId); } List<Group> groups = identityService.createGroupQuery().groupMember(userId).list(); if (groups != null && groups.size() > 0) { for (Group group : groups) { identityService.deleteMembership(userId, group.getId()); } } identityService.deleteUser(userId); }
protected Privilege getPrivilegeById(String privilegeId) { Privilege privilege = identityService.createPrivilegeQuery().privilegeId(privilegeId).singleResult(); if (privilege == null) { throw new FlowableObjectNotFoundException("Could not find privilege with id " + privilegeId, Privilege.class); } return privilege; } }
@ApiOperation(value = "Get a single privilege", tags = { "Privileges" }) @ApiResponses(value = { @ApiResponse(code = 200, message = "Indicates the privilege exists and is returned."), @ApiResponse(code = 404, message = "Indicates the requested privilege does not exist.") }) @GetMapping(value = "/privileges/{privilegeId}", produces = "application/json") public PrivilegeResponse getUser(@ApiParam(name = "privilegeId") @PathVariable String privilegeId, HttpServletRequest request) { Privilege privilege = identityService.createPrivilegeQuery().privilegeId(privilegeId).singleResult(); if (privilege == null) { throw new FlowableObjectNotFoundException("Could not find privilege with id " + privilegeId, Privilege.class); } if (restApiInterceptor != null) { restApiInterceptor.accessPrivilegeInfoById(privilege); } List<User> users = identityService.getUsersWithPrivilege(privilege.getId()); List<Group> groups = identityService.getGroupsWithPrivilege(privilege.getId()); return restResponseFactory.createPrivilegeResponse(privilege, users, groups); }
protected void clearAllUsersAndGroups() { // Privileges List<Privilege> privileges = idmIdentityService.createPrivilegeQuery().list(); for (Privilege privilege : privileges) { idmIdentityService.deletePrivilege(privilege.getId()); } // Groups List<Group> groups = idmIdentityService.createGroupQuery().list(); for (Group group : groups) { List<User> members = idmIdentityService.createUserQuery().memberOfGroup(group.getId()).list(); for (User member : members) { idmIdentityService.deleteMembership(member.getId(), group.getId()); } idmIdentityService.deleteGroup(group.getId()); } // Users List<User> users = idmIdentityService.createUserQuery().list(); for (User user : users) { idmIdentityService.deleteUser(user.getId()); } }