use of com.auth0.flickr2.domain.User in project gravitee-management-rest-api by gravitee-io.
the class UserServiceImpl method resetPassword.
private void resetPassword(final String id, final String resetPageUrl) {
try {
LOGGER.debug("Resetting password of user id {}", id);
Optional<User> optionalUser = userRepository.findById(id);
if (!optionalUser.isPresent()) {
throw new UserNotFoundException(id);
}
final User user = optionalUser.get();
if (!isInternalUser(user)) {
throw new UserNotInternallyManagedException(id);
}
// do not perform this check if the request comes from an authenticated user (ie. admin or someone with right permission)
if (!isAuthenticated() || !canResetPassword()) {
AuditQuery query = new AuditQuery();
query.setEvents(Arrays.asList(User.AuditEvent.PASSWORD_RESET.name()));
query.setFrom(Instant.now().minus(1, ChronoUnit.HOURS).toEpochMilli());
query.setPage(1);
query.setSize(100);
MetadataPage<AuditEntity> events = auditService.search(query);
if (events != null) {
if (events.getContent().size() == 100) {
LOGGER.warn("More than 100 reset password received in less than 1 hour", user.getId());
}
Optional<AuditEntity> optReset = events.getContent().stream().filter(evt -> user.getId().equals(evt.getProperties().get(USER.name()))).findFirst();
if (optReset.isPresent()) {
LOGGER.warn("Multiple reset password received for user '{}' in less than 1 hour", user.getId());
throw new PasswordAlreadyResetException();
}
}
}
final Map<String, Object> params = getTokenRegistrationParams(convert(user, false), RESET_PASSWORD_PATH, RESET_PASSWORD, resetPageUrl);
notifierService.trigger(PortalHook.PASSWORD_RESET, params);
auditService.createOrganizationAuditLog(Collections.singletonMap(USER, user.getId()), User.AuditEvent.PASSWORD_RESET, new Date(), null, null);
emailService.sendAsyncEmailNotification(new EmailNotificationBuilder().to(user.getEmail()).template(EmailNotificationBuilder.EmailTemplate.TEMPLATES_FOR_ACTION_USER_PASSWORD_RESET).params(params).build(), GraviteeContext.getCurrentContext());
} catch (TechnicalException ex) {
final String message = "An error occurs while trying to reset password for user " + id;
LOGGER.error(message, ex);
throw new TechnicalManagementException(message, ex);
}
}
use of com.auth0.flickr2.domain.User in project CollectiveOneWebapp by CollectiveOne.
the class AppUserService method addUserToLocalDB.
@Transactional
private AppUser addUserToLocalDB(String auth0Id) {
/* retrieve from Auth0 */
AppUser appUser = null;
User auth0User = null;
if (auth0Id.equals("anonymousUser")) {
return null;
}
try {
auth0User = mgmt.users().get(auth0Id, null).execute();
/* check if this email is already registered. */
appUser = appUserRepository.findByEmail(auth0User.getEmail());
if (appUser == null) {
// if (auth0User.isEmailVerified()) {
if (true) {
/* create a new user if not */
appUser = new AppUser();
appUser.getAuth0Ids().add((auth0User.getId()));
appUser.setEmail(auth0User.getEmail());
appUser.setEmailNotificationsEnabled(true);
AppUserProfile profile = new AppUserProfile();
if (auth0User.getIdentities().get(0).getProvider().equals("auth0")) {
profile.setNickname(auth0User.getNickname());
} else {
profile.setNickname(auth0User.getName());
}
profile.setUser(appUser);
profile.setPictureUrl(auth0User.getPicture());
profile = appUserProfileRepository.save(profile);
appUser.setProfile(profile);
/* create global subscriber */
Subscriber subscriber = new Subscriber();
subscriber.setType(SubscriptionElementType.COLLECTIVEONE);
subscriber.setUser(appUser);
subscriber.setInheritConfig(SubscriberInheritConfig.CUSTOM);
activityService.initDefaultSubscriber(subscriber);
subscriberRepository.save(subscriber);
}
} else {
/* just add the auth0id to the existing user */
appUser.getAuth0Ids().add(auth0Id);
}
appUser = appUserRepository.save(appUser);
} catch (APIException exception) {
System.out.println(exception.getMessage());
} catch (Auth0Exception exception) {
System.out.println(exception.getMessage());
}
return appUser;
}
use of com.auth0.flickr2.domain.User in project CollectiveOneWebapp by CollectiveOne.
the class AppUserService method updateUserDataInLocalDB.
@Transactional
public Boolean updateUserDataInLocalDB(UUID c1Id) {
AppUser appUser = appUserRepository.findByC1Id(c1Id);
try {
User auth0User = mgmt.users().get(appUser.getAuth0Ids().get(0), null).execute();
appUser.getProfile().setPictureUrl(auth0User.getPicture());
appUserRepository.save(appUser);
return true;
} catch (APIException exception) {
System.out.println(exception.getMessage());
} catch (Auth0Exception exception) {
System.out.println(exception.getMessage());
}
return false;
}
use of com.auth0.flickr2.domain.User in project CollectiveOneWebapp by CollectiveOne.
the class TestElementOrder method setUp.
@SuppressWarnings("serial")
@Before
public void setUp() throws Exception {
AuthAPI auth = new AuthAPI(auth0Domain, clientId, clientSecret);
AuthRequest request = auth.login(testEmail1, testPwd1).setScope("openid contacts");
try {
TokenHolder holder = request.execute();
authorizationTokenUser1 = holder.getIdToken();
} catch (APIException exception) {
System.out.println(exception);
} catch (Auth0Exception exception) {
System.out.println(exception);
}
MvcResult result = this.mockMvc.perform(get("/1/user/myProfile").header("Authorization", "Bearer " + authorizationTokenUser1)).andReturn();
assertEquals("error in http request: " + result.getResponse().getErrorMessage(), 200, result.getResponse().getStatus());
GetResult<AppUserDto> getResultUser = gson.fromJson(result.getResponse().getContentAsString(), new TypeToken<GetResult<AppUserDto>>() {
}.getType());
user1 = getResultUser.getData();
logger.debug("Test user created:" + result.getResponse().getContentAsString());
request = auth.login(testEmail2, testPwd2).setScope("openid contacts");
try {
TokenHolder holder = request.execute();
authorizationTokenUser2 = holder.getIdToken();
} catch (APIException exception) {
System.out.println(exception);
} catch (Auth0Exception exception) {
System.out.println(exception);
}
result = this.mockMvc.perform(get("/1/user/myProfile").header("Authorization", "Bearer " + authorizationTokenUser2)).andReturn();
assertEquals("error in http request: " + result.getResponse().getErrorMessage(), 200, result.getResponse().getStatus());
getResultUser = gson.fromJson(result.getResponse().getContentAsString(), new TypeToken<GetResult<AppUserDto>>() {
}.getType());
user2 = getResultUser.getData();
logger.debug("Test user created: " + result.getResponse().getContentAsString());
/**
* create initiative
*/
NewInitiativeDto initiativeDto = new NewInitiativeDto(initiativeName, "");
MemberDto member = new MemberDto();
member.setRole("ADMIN");
member.setUser(user1);
initiativeDto.getMembers().add(member);
result = this.mockMvc.perform(post("/1/initiative/create").header("Authorization", "Bearer " + authorizationTokenUser1).contentType(MediaType.APPLICATION_JSON).content(gson.toJson(initiativeDto))).andReturn();
assertEquals("error in http request: " + result.getResponse().getErrorMessage(), 200, result.getResponse().getStatus());
PostResult postResult = gson.fromJson(result.getResponse().getContentAsString(), PostResult.class);
initiativeId = postResult.getElementId();
logger.debug("Initiative created: " + initiativeId);
result = this.mockMvc.perform(get("/1/initiative/" + initiativeId).header("Authorization", "Bearer " + authorizationTokenUser1)).andReturn();
GetResult<InitiativeDto> getResultInit = gson.fromJson(result.getResponse().getContentAsString(), new TypeToken<GetResult<InitiativeDto>>() {
}.getType());
initiative = getResultInit.getData();
logger.debug("Initiative retrieved: " + result.getResponse().getContentAsString());
}
use of com.auth0.flickr2.domain.User in project nexus-public by sonatype.
the class JwtHelperTest method assertJwt.
private void assertJwt(final String jwt) {
DecodedJWT decode = decodeJwt(jwt);
Claim user = decode.getClaim(USER);
Claim userId = decode.getClaim(USER_SESSION_ID);
Claim issuer = decode.getClaim("iss");
Claim realm = decode.getClaim(REALM);
assertEquals("admin", user.asString());
assertNotNull(userId.asString());
assertEquals(ISSUER, issuer.asString());
assertEquals("NexusAuthorizingRealm", realm.asString());
}
Aggregations