List of usage examples for org.apache.commons.codec.digest DigestUtils sha256Hex
public static String sha256Hex(String data)
From source file:it.greenvulcano.gvesb.gviamx.service.internal.EmailChangeManager.java
public void createEmailChangeRequest(String currentEmailAddress, String newEmailAddress) throws UserNotFoundException, UserExistException { if (newEmailAddress == null || !newEmailAddress.matches(UserActionRequest.EMAIL_PATTERN)) { throw new IllegalArgumentException("Invalid email: " + newEmailAddress); }// w ww . java2s . com try { usersManager.getUser(newEmailAddress.toLowerCase()); throw new UserExistException(newEmailAddress); } catch (UserNotFoundException e) { if (usersManager .searchUsers( SearchCriteria.builder().byEmail(newEmailAddress.toLowerCase()).limitedTo(1).build()) .getTotalCount() > 0) { throw new UserExistException(newEmailAddress); } } User user = usersManager.getUser(currentEmailAddress.toLowerCase()); EmailChangeRequest request = repository.get(newEmailAddress.toLowerCase(), EmailChangeRequest.class) .orElseGet(EmailChangeRequest::new); request.setUser((UserJPA) user); request.setEmail(newEmailAddress.toLowerCase()); request.setIssueTime(new Date()); request.setExpireTime(expireTime); request.setNotificationStatus(NotificationStatus.PENDING); byte[] token = new byte[4]; secureRandom.nextBytes(token); String clearTextToken = String.format(Locale.US, "%02x%02x%02x%02x", IntStream.range(0, token.length).mapToObj(i -> Byte.valueOf(token[i])).toArray()); request.setToken(DigestUtils.sha256Hex(clearTextToken)); repository.add(request); request.setClearToken(clearTextToken); notificationServices.stream() .map(n -> new NotificationManager.NotificationTask(n, request, repository, "update")) .forEach(executor::submit); }
From source file:net.solarnetwork.central.dras.dao.ibatis.test.IbatisUserDaoTest.java
@Test public void insertUser() { User user = new User(); user.setAddress(new String[] { "One", "Two" }); user.setDisplayName("Test User"); user.setEnabled(Boolean.TRUE); user.setPassword(DigestUtils.sha256Hex("password")); user.setUsername("foouser"); user.setVendor("vendor"); logger.debug("Inserting new User: " + user); Long id = userDao.store(user); assertNotNull(id);//from www. j a v a 2s. c om User entity = userDao.get(id); validateUser(user, entity); lastUserId = id; }
From source file:it.greenvulcano.gvesb.gviamx.service.internal.PasswordResetManager.java
public PasswordResetRequest retrievePasswordResetRequest(String email, String token) { PasswordResetRequest signupRequest = repository.get(email.toLowerCase(), PasswordResetRequest.class) .orElseThrow(() -> new IllegalArgumentException("No password reset request found for this email")); if (DigestUtils.sha256Hex(token).equals(signupRequest.getToken())) { if (System.currentTimeMillis() > signupRequest.getIssueTime().getTime() + signupRequest.getExpireTime()) { repository.remove(signupRequest); throw new SecurityException("No password reset request found for this email"); }/*from w ww .ja v a 2 s .co m*/ return signupRequest; } else { throw new SecurityException("Token missmatch"); } }
From source file:com.whizzosoftware.hobson.bootstrap.api.hub.OSGIHubManager.java
@Override public boolean authenticateAdmin(String userId, String hubId, String password) { String adminPassword = null;/* ww w .j a va2s. co m*/ Configuration config = getConfiguration(); // if there's configuration available, try to obtain the encrypted admin password if (config != null) { Dictionary d = config.getProperties(); if (d != null) { adminPassword = (String) d.get(ADMIN_PASSWORD); } } // if it hasn't been set, default to the "admin" password if (adminPassword == null) { adminPassword = DigestUtils.sha256Hex("admin"); } return (adminPassword.equals(password)); }
From source file:co.cask.hydrator.plugin.HasherTest.java
@Test public void testHasherSHA256() throws Exception { Transform<StructuredRecord, StructuredRecord> transform = new Hasher(new Hasher.Config("SHA256", "a,b,e")); transform.initialize(null);// ww w .j a v a 2 s.co m MockEmitter<StructuredRecord> emitter = new MockEmitter<>(); transform.transform(StructuredRecord.builder(INPUT).set("a", "Field A").set("b", "Field B") .set("c", "Field C").set("d", 4).set("e", "Field E").build(), emitter); ; Assert.assertEquals(5, emitter.getEmitted().get(0).getSchema().getFields().size()); Assert.assertEquals(DigestUtils.sha256Hex("Field A"), emitter.getEmitted().get(0).get("a")); Assert.assertEquals(DigestUtils.sha256Hex("Field B"), emitter.getEmitted().get(0).get("b")); Assert.assertEquals("Field C", emitter.getEmitted().get(0).get("c")); Assert.assertEquals(4, emitter.getEmitted().get(0).get("d")); Assert.assertEquals(DigestUtils.sha256Hex("Field E"), emitter.getEmitted().get(0).get("e")); }
From source file:io.apiman.common.auth.AuthTokenUtil.java
/** * Generates a signature for the given token. * @param token// w w w .j a va 2 s. c om */ private static String generateSignature(AuthToken token) { StringBuilder builder = new StringBuilder(); builder.append(token.getPrincipal()); builder.append("||"); //$NON-NLS-1$ builder.append(token.getExpiresOn().getTime()); builder.append("||"); //$NON-NLS-1$ builder.append(token.getIssuedOn().getTime()); builder.append("||"); //$NON-NLS-1$ TreeSet<String> roles = new TreeSet<String>(token.getRoles()); boolean first = true; for (String role : roles) { if (first) { first = false; } else { builder.append(","); //$NON-NLS-1$ } builder.append(role); } builder.append("||"); //$NON-NLS-1$ builder.append(sharedSecretSource.getSharedSecret()); return DigestUtils.sha256Hex(builder.toString()); }
From source file:com.supinfo.supfriends.ejb.controller.UserController.java
public String register() { FacesContext context = FacesContext.getCurrentInstance(); if (userFacade.findByUsername(username) != null) { FacesMessage message = new FacesMessage("Username dj existant."); context.addMessage(getMybutton().getClientId(context), message); return null; }/* w w w.ja va 2 s.c o m*/ UserEntity user = new UserEntity(); user.setUserName(username); String passwordCrypted = DigestUtils.sha256Hex(password); user.setPassword(passwordCrypted); user.setFirstName(firstname); user.setLastName(lastname); user.setEmail(email); user.setPhoneNumber(getPhonenumber()); user.setGroups(new ArrayList<GroupEntity>()); user.setLatitude(Double.valueOf(latitude)); user.setLongitude(Double.valueOf(longitude)); Long id = userFacade.create(user); if (null == id) { FacesMessage message = new FacesMessage("Un problme est survenu lors de la sauvegarde."); context.addMessage(getMybutton().getClientId(context), message); return null; } else { HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext() .getRequest(); FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("username", user.getUserName()); FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("id", user.getId()); FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("password", passwordCrypted); req.getSession().setAttribute("username", user.getUserName()); req.getSession().setAttribute("id", user.getId()); req.getSession().setAttribute("password", passwordCrypted); return "connected_home?faces-redirect=true"; } }
From source file:net.solarnetwork.central.dras.dao.ibatis.test.AbstractIbatisDaoTestSupport.java
/** * Insert a test user into the solardras.dras_user table. * /*from ww w . j av a2s.co m*/ * @param id the user ID * @param username the user username */ protected void setupTestUser(Long id, String username) { simpleJdbcTemplate.update( "insert into solardras.dras_user (id,username,passwd,disp_name,enabled) values (?,?,?,?,?)", id, username, DigestUtils.sha256Hex("password"), "Unit Test", Boolean.TRUE); }
From source file:com.vaushell.gfmongodb.MongoDbUserRealm.java
/** * Authenticate user.// w w w .j av a 2s . c om * * @param username Username. * @param givenPassword Password * @return List of groups. * @throws LoginException */ String[] authenticate(final String username, final char[] givenPassword) throws LoginException { if (username == null || username.length() <= 0 || givenPassword == null || givenPassword.length <= 0) { throw new LoginException("username or password is empty"); } final QueryBuilder builder = QueryBuilder.start(getProperty(PARAM_USERNAME)).is(username); final DBObject user = usersCollection.findOne(builder.get()); if (user == null) { throw new LoginException("cannot find user with username '" + username + "'"); } final String databasePassword = (String) user.get(getProperty(PARAM_PASSWORD)); if (databasePassword == null || databasePassword.length() <= 0) { throw new LoginException("cannot find nonempty password for username '" + username + "'"); } final String transformedPassword = DigestUtils.sha256Hex(new String(givenPassword)); if (!databasePassword.equals(transformedPassword)) { throw new LoginException("password is wrong for username '" + username + "'"); } final List<String> groups = getGroups(user); return groups.toArray(new String[groups.size()]); }
From source file:com.livgrhm.kansas.resources.UserResource.java
@POST @Timed// w ww.j a v a 2s . co m public Response addUser(User user) { // POST e.g. '{"firstName":"test", "lastName":"tester", "email":"test", "userStatus":"N", "userPasswordHash":"1234"}' // Create authentication hash java.sql.Date now = new java.sql.Date((new java.util.Date()).getTime()); String userAuthHash = DigestUtils.sha256Hex(user.getUserPasswordHash() + now.getTime()); user.setUserAuthHash(userAuthHash); user.setUserAuthTimestamp(now); try { int userId = this.dao.createUser(user.getFirstName(), user.getLastName(), user.getEmail(), user.getUserStatus(), user.getUserPasswordHash(), user.getUserAuthHash(), user.getUserAuthTimestamp()); user.setUserId(userId); return Response.status(Response.Status.CREATED).entity(user).build(); } catch (Exception e) { System.out.println("Exception creating user: " + e.getMessage()); return Response.status(Response.Status.NOT_IMPLEMENTED).build(); } }