protected void removeinvolvedUsers(List<? extends User> matchingUsers, Set<String> involvedUsers) { if (involvedUsers != null) { // Using iterator to be able to remove without ConcurrentModExceptions Iterator<? extends User> userIt = matchingUsers.iterator(); while (userIt.hasNext()) { if (involvedUsers.contains(userIt.next().getId())) { userIt.remove(); } } } }
/** * Get the login of the current user. */ public static String getCurrentUserId() { User user = getCurrentUserObject(); if (user != null) { return user.getId(); } return null; }
@ApiOperation(value = "Delete a user", tags = { "Users" }) @ApiResponses(value = { @ApiResponse(code = 204, message = "Indicates the user was found and has been deleted. Response-body is intentionally empty."), @ApiResponse(code = 404, message = "Indicates the requested user was not found.") }) @DeleteMapping("/users/{userId}") public void deleteUser(@ApiParam(name = "userId") @PathVariable String userId, HttpServletResponse response) { User user = getUserFromRequest(userId); if (restApiInterceptor != null) { restApiInterceptor.deleteUser(user); } identityService.deleteUser(user.getId()); response.setStatus(HttpStatus.NO_CONTENT.value()); } }
@RequestMapping(value = "/profile", method = RequestMethod.GET, produces = "application/json") public UserRepresentation getProfile() { User user = SecurityUtils.getCurrentFlowableAppUser().getUserObject(); UserRepresentation userRepresentation = new UserRepresentation(user); for (Group group : groupService.getGroupsForUser(user.getId())) { userRepresentation.getGroups().add(new GroupRepresentation(group)); } return userRepresentation; }
public CachedUser load(final String userId) throws Exception { User userFromDatabase = null; if (ldapProperties == null || !ldapProperties.isEnabled()) { userFromDatabase = identityService.createUserQuery().userIdIgnoreCase(userId.toLowerCase()).singleResult(); } else { userFromDatabase = identityService.createUserQuery().userId(userId).singleResult(); } if (userFromDatabase == null) { throw new UsernameNotFoundException("User " + userId + " was not found in the database"); } Collection<GrantedAuthority> grantedAuthorities = new ArrayList<>(); UserInformation userInformation = userService.getUserInformation(userFromDatabase.getId()); for (String privilege : userInformation.getPrivileges()) { grantedAuthorities.add(new SimpleGrantedAuthority(privilege)); } return new CachedUser(userFromDatabase, grantedAuthorities); }
@Override public Token createToken(User user, String remoteAddress, String userAgent) { Token token = idmIdentityService.newToken(generateSeriesData()); token.setTokenValue(generateTokenData()); token.setTokenDate(new Date()); token.setIpAddress(remoteAddress); token.setUserAgent(userAgent); token.setUserId(user.getId()); try { saveAndFlush(token); return token; } catch (DataAccessException e) { LOGGER.error("Failed to save persistent token ", e); return token; } }
public User updateProfile(String firstName, String lastName, String email) { User currentUser = SecurityUtils.getCurrentUserObject(); // If user is not externally managed, we need the email address for login, so an empty email is not allowed if (StringUtils.isEmpty(email)) { throw new BadRequestException("Empty email is not allowed"); } User user = identityService.createUserQuery().userId(currentUser.getId()).singleResult(); user.setFirstName(firstName); user.setLastName(lastName); user.setEmail(email); identityService.saveUser(user); return user; }
FlowableAppUser appUser = userCache.get(token.getUserId()); if (!validateRequiredPriviliges(request, response, appUser)) { redirectOrSendNotPermitted(request, response, appUser.getUserObject().getId()); return; // no need to execute any other filters
protected void verifyGroupMemberExists(String groupId, String userId) { // Check existence Group group = identityService.createGroupQuery().groupId(groupId).singleResult(); User user = identityService.createUserQuery().userId(userId).singleResult(); for (User groupMember : identityService.createUserQuery().memberOfGroup(groupId).list()) { if (groupMember.getId().equals(userId)) { user = groupMember; } } if (group == null || user == null) { throw new NotFoundException(); } }
/** * GET /rest/account -> get the current user. */ @RequestMapping(value = "/rest/account", method = RequestMethod.GET, produces = "application/json") public UserRepresentation getAccount() { String userId = SecurityUtils.getCurrentFlowableAppUser().getUserObject().getId(); UserInformation userInformation = userService.getUserInformation(userId); if (userInformation != null) { UserRepresentation userRepresentation = new UserRepresentation(userInformation.getUser()); if (userInformation.getGroups() != null) { for (Group group : userInformation.getGroups()) { userRepresentation.getGroups().add(new GroupRepresentation(group)); } } if (userInformation.getPrivileges() != null) { for (String privilege : userInformation.getPrivileges()) { userRepresentation.getPrivileges().add(privilege); } } return userRepresentation; } else { throw new NotFoundException(); } } }
boolean currentUserIsOwner = model.getLastUpdatedBy().equals(currentUser.getId()); String resolveAction = values.getFirst("conflictResolveAction");
boolean currentUserIsOwner = model.getLastUpdatedBy().equals(currentUser.getId()); String resolveAction = values.getFirst("conflictResolveAction");
protected ContentItemRepresentation uploadFile(User user, MultipartFile file, String taskId, String processInstanceId, String caseId) { if (file != null && file.getName() != null) { try { String contentType = file.getContentType(); // temp additional content type check for IE9 flash uploads if (StringUtils.equals(file.getContentType(), "application/octet-stream")) { contentType = getContentTypeForFileExtension(file); } ContentItem contentItem = contentService.newContentItem(); contentItem.setName(getFileName(file)); contentItem.setProcessInstanceId(processInstanceId); contentItem.setTaskId(taskId); if (StringUtils.isNotEmpty(caseId)) { contentItem.setScopeType("cmmn"); contentItem.setScopeId(caseId); } contentItem.setMimeType(contentType); contentItem.setCreatedBy(user.getId()); contentItem.setLastModifiedBy(user.getId()); contentService.saveContentItem(contentItem, file.getInputStream()); return createContentItemResponse(contentItem); } catch (IOException e) { throw new BadRequestException("Error while reading file data", e); } } else { throw new BadRequestException("File to upload is missing"); } }
protected ContentItemRepresentation addContentItem(ContentItemRepresentation contentItemBody, String taskId, String processInstanceId, boolean isRelatedContent) { if (contentItemBody.getContentStoreId() == null || contentItemBody.getContentStoreName() == null || contentItemBody.getName() == null) { throw new BadRequestException("Name, source and sourceId are required parameters"); } User user = SecurityUtils.getCurrentUserObject(); ContentItem contentItem = contentService.newContentItem(); contentItem.setName(contentItemBody.getName()); contentItem.setProcessInstanceId(processInstanceId); contentItem.setTaskId(taskId); contentItem.setContentStoreId(contentItemBody.getContentStoreId()); contentItem.setContentStoreName(contentItemBody.getContentStoreName()); contentItem.setMimeType(contentItemBody.getMimeType()); contentItem.setCreatedBy(user.getId()); contentItem.setLastModifiedBy(user.getId()); contentService.saveContentItem(contentItem); return createContentItemResponse(contentItem); }
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()); } }
public UserRepresentation(User user) { setId(user.getId()); setFirstName(user.getFirstName()); setLastName(user.getLastName()); setFullName((user.getFirstName() != null ? user.getFirstName() : "") + " " + (user.getLastName() != null ? user.getLastName() : "")); setEmail(user.getEmail()); }
public UserResponse createUserResponse(User user, boolean incudePassword, RestUrlBuilder urlBuilder) { UserResponse response = new UserResponse(); response.setFirstName(user.getFirstName()); response.setLastName(user.getLastName()); response.setDisplayName(user.getDisplayName()); response.setId(user.getId()); response.setEmail(user.getEmail()); if (incudePassword) { response.setPassword(user.getPassword()); } return response; }
@Override public Void execute(CommandContext commandContext) { if (user == null) { throw new FlowableIllegalArgumentException("user is null"); } if (CommandContextUtil.getUserEntityManager(commandContext).isNewUser(user)) { if (user.getPassword() != null) { PasswordEncoder passwordEncoder = CommandContextUtil.getIdmEngineConfiguration().getPasswordEncoder(); PasswordSalt passwordSalt = CommandContextUtil.getIdmEngineConfiguration().getPasswordSalt(); user.setPassword(passwordEncoder.encode(user.getPassword(), passwordSalt)); } if (user instanceof UserEntity) { CommandContextUtil.getUserEntityManager(commandContext).insert((UserEntity) user, true); } else { CommandContextUtil.getDbSqlSession(commandContext).insert((Entity) user); } } else { UserEntity dbUser = CommandContextUtil.getUserEntityManager().findById(user.getId()); user.setPassword(dbUser.getPassword()); CommandContextUtil.getUserEntityManager().updateUser(user); } return null; } }