Search in sources :

Example 16 with AuthToken

use of org.summerb.microservices.users.api.dto.AuthToken in project summerb by skarpushin.

the class AuthTokenServiceDbImplTest method testIsAuthTokenValid_whitebox_expectFalseForUnmatchedAuthTOken.

@Test
public void testIsAuthTokenValid_whitebox_expectFalseForUnmatchedAuthTOken() throws Exception {
    AuthTokenServiceImpl fixture = AuthTokenServiceDbImplFactory.createAuthTokenServiceDbImpl();
    AuthToken result = fixture.isAuthTokenValid(UserFactory.EXISTENT_USER, AuthTokenFactory.AUTH_TOKEN_EXPIRED, "...");
    assertNull(result);
}
Also used : AuthToken(org.summerb.microservices.users.api.dto.AuthToken) Test(org.junit.Test)

Example 17 with AuthToken

use of org.summerb.microservices.users.api.dto.AuthToken in project summerb by skarpushin.

the class AuthTokenServiceDbImplTest method testIsAuthTokenValid_blackbox_expectFalseEvenForNonExistentToken.

@Test
public void testIsAuthTokenValid_blackbox_expectFalseEvenForNonExistentToken() throws Exception {
    AuthTokenServiceImpl fixture = AuthTokenServiceDbImplFactory.createAuthTokenServiceDbImpl();
    AuthToken result = fixture.isAuthTokenValid(UserFactory.EXISTENT_USER, AuthTokenFactory.AUTH_TOKEN_NOT_EXISTENT, "...");
    assertNull(result);
}
Also used : AuthToken(org.summerb.microservices.users.api.dto.AuthToken) Test(org.junit.Test)

Example 18 with AuthToken

use of org.summerb.microservices.users.api.dto.AuthToken in project summerb by skarpushin.

the class AuthTokenServiceDbImplTest method testCreateAuthToken_blackbox_expectNewAuthToken.

@Test
public void testCreateAuthToken_blackbox_expectNewAuthToken() throws Exception {
    AuthTokenService fixture = AuthTokenServiceDbImplFactory.createAuthTokenServiceDbImpl();
    AuthToken result = fixture.authenticate(UserFactory.EXISTENT_USER_EMAIL, PasswordFactory.RIGHT_PASSWORD_FOR_EXISTENT_USER, "0.0.0.0");
    assertNotNull(result);
}
Also used : AuthToken(org.summerb.microservices.users.api.dto.AuthToken) AuthTokenService(org.summerb.microservices.users.api.AuthTokenService) Test(org.junit.Test)

Example 19 with AuthToken

use of org.summerb.microservices.users.api.dto.AuthToken in project summerb by skarpushin.

the class PersistentTokenRepositoryDefaultImpl method getTokenForSeries.

@Override
public PersistentRememberMeToken getTokenForSeries(String seriesId) {
    try {
        AuthToken authToken = authTokenService.getAuthTokenByUuid(seriesId);
        User user = userService.getUserByUuid(authToken.getUserUuid());
        return new PersistentRememberMeToken(user.getEmail(), authToken.getUuid(), authToken.getTokenValue(), new Date(authToken.getLastVerifiedAt()));
    } catch (Throwable e) {
        log.info("Persistent auth token wasn't found for seriesId " + seriesId);
        return null;
    }
}
Also used : PersistentRememberMeToken(org.springframework.security.web.authentication.rememberme.PersistentRememberMeToken) User(org.summerb.microservices.users.api.dto.User) AuthToken(org.summerb.microservices.users.api.dto.AuthToken) Date(java.util.Date)

Example 20 with AuthToken

use of org.summerb.microservices.users.api.dto.AuthToken in project summerb by skarpushin.

the class UserDetailsServiceDefaultImpl method loadUserByUsername.

@Override
public UserDetails loadUserByUsername(String userEmail) throws UsernameNotFoundException {
    try {
        User user = userService.getUserByEmail(userEmail);
        List<String> permissions = permissionService.findUserPermissionsForSubject(SecurityConstants.DOMAIN, user.getUuid(), null);
        AuthToken authToken = null;
        UserDetailsImpl ret = new UserDetailsImpl(user, null, permissions, authToken);
        return ret;
    } catch (UserNotFoundException e) {
        throw new UsernameNotFoundException("User not found", e);
    } catch (FieldValidationException e) {
        throw new UsernameNotFoundException("Email provided in invalid format", e);
    } catch (Throwable t) {
        throw new UsernameNotFoundException("Failed to get user by email", t);
    }
}
Also used : UserDetailsImpl(org.summerb.approaches.springmvc.security.dto.UserDetailsImpl) UserNotFoundException(org.summerb.microservices.users.api.exceptions.UserNotFoundException) UsernameNotFoundException(org.springframework.security.core.userdetails.UsernameNotFoundException) FieldValidationException(org.summerb.approaches.validation.FieldValidationException) User(org.summerb.microservices.users.api.dto.User) AuthToken(org.summerb.microservices.users.api.dto.AuthToken)

Aggregations

AuthToken (org.summerb.microservices.users.api.dto.AuthToken)28 Test (org.junit.Test)12 User (org.summerb.microservices.users.api.dto.User)11 Transactional (org.springframework.transaction.annotation.Transactional)3 FieldValidationException (org.summerb.approaches.validation.FieldValidationException)3 UserNotFoundException (org.summerb.microservices.users.api.exceptions.UserNotFoundException)3 UserServiceUnexpectedException (org.summerb.microservices.users.api.exceptions.UserServiceUnexpectedException)3 File (java.io.File)2 Date (java.util.Date)2 AuthTokenNotFoundException (org.summerb.microservices.users.api.exceptions.AuthTokenNotFoundException)2 BufferedReader (java.io.BufferedReader)1 FileReader (java.io.FileReader)1 FileWriter (java.io.FileWriter)1 PrintWriter (java.io.PrintWriter)1 ArrayList (java.util.ArrayList)1 LinkedList (java.util.LinkedList)1 UsernameNotFoundException (org.springframework.security.core.userdetails.UsernameNotFoundException)1 PersistentRememberMeToken (org.springframework.security.web.authentication.rememberme.PersistentRememberMeToken)1 PagerParams (org.summerb.approaches.jdbccrud.api.dto.PagerParams)1 PaginatedList (org.summerb.approaches.jdbccrud.api.dto.PaginatedList)1