/** * @see {@link #loadUserDetailsById(Object)} */ default UserDetails loadUserDetailsByIdString(String idString) { return loadUserDetailsById(getObjectId(idString)); }
/** * @see {@link #findAndCheckUserDetails(Object)} */ default UserDetails findAndCheckUserDetailsByIdString(String idString) throws IllegalStateException { return findAndCheckUserDetails(getObjectId(idString)); } }
public String getName() { if(null == name) { if(null != firstName) { name = firstName + " " + lastName; }else{ name = getLoginName(); } } return name; }
protected AuthzUserInfo createAuthzUserInfo(Request request, Response response, UserDetails details){ SimpleAuthzUserInfo userInfo = new SimpleAuthzUserInfo(); userInfo.setSubject(details.getIdAsString()); userInfo.setFullName(details.getName()); userInfo.putExtProperty("login_name",details.getLoginName()); return userInfo; }
/** * Returns the {@link UserDetails} or <code>null</code>. * * <p> * Checks the returned {@link UserDetails} is not <code>null</code>. * * @throws IllegalStateException if {@link UserDetails#getLoginName()} or {@link UserDetails#getName()} is null. */ default UserDetails findAndCheckUserDetails(Object userId) throws IllegalStateException { UserDetails ud = loadUserDetailsById(userId); if(null != ud) { Assert.notNull(ud.getName(), "The 'name' in 'UserDetails:" + ud.getClass() + "' cannot be null"); Assert.notNull(ud.getLoginName(),"The 'loginName' in 'UserDetails:" + ud.getClass() + "' cannot be null"); } return ud; }
protected AuthzAccessToken createAccessTokenFromEntity(AuthzAccessTokenEntity entity) { SimpleAuthzAccessToken token = new SimpleAuthzAccessToken(); // add user login name UserDetails ud = sc.getUserStore().loadUserDetailsById(entity.getUserId()); if(ud != null){ token.setUsername(ud.getLoginName()); } token.setToken(entity.getToken()); token.setClientId(entity.getClientId()); token.setUserId(entity.getUserId()); token.setRefreshToken(entity.getRefreshToken()); token.setScope(entity.getScope()); token.setCreated(entity.getCreatedMs()); token.setExpiresIn(entity.getExpiresIn()); token.setAuthenticated(entity.getAuthenticated()); token.setExtendedParameters(entity.getExData()); return token; }
@Override public boolean authenticate(CredentialsAuthenticationContext context, Credentials credentials, Out<UserPrincipal> principal) throws AuthenticationException { if(credentials instanceof UsernamePasswordCredentials){ UsernamePasswordCredentials usernamePassword = (UsernamePasswordCredentials)credentials; UserDetails details = resolveUserDetails(context, usernamePassword.getUsername(), usernamePassword.getParameters()); if(null == details) { return true; } //Check password String rawPassword = Strings.nullToEmpty(usernamePassword.getPassword()); if(!sc.getPasswordEncoder().matches(rawPassword, details.getPassword())){ log.debug("Incorrect password of user '{}'",usernamePassword.getUsername()); context.validation().addError(UsernamePasswordCredentials.PASSWORD, INCORRECT_PASSWORD_MESSAGE_KEY,"Incorrect password"); }else{ principal.set(details); } return true; } return false; } }
protected UserDetails resolveUserDetails(ValidationContext context, String username, Map<String, Object> params) { UserDetails details = sc.getUserStore().loadUserDetailsByLoginName(username); //User not found if(null == details){ log.debug("User '{}' not found",username); context.validation().addError(UsernamePasswordCredentials.USERNAME, USER_NOT_FOUND_MESSAGE_KEY, "User not found"); return null; } //Check enabled if(!details.isEnabled()){ log.debug("User '{}' was disabled",username); context.validation().addError(UsernamePasswordCredentials.USERNAME, USER_NOT_ENABLED_MESSAGE_KEY,"User was disabled"); return null; } return details; }
@Override public Result<Authentication> createAuthenticationByUserId(String userid) { UserDetails details = sc.getUserStore().loadUserDetailsByIdString(userid); if(null == details) { return Result.empty(); } return Result.of(new SimpleAuthentication(details, new TrustedUserIdCredentials(userid))); } }
@Override public UserDetails loadUserDetails(String userId) { return sc.getUserStore().loadUserDetailsById(userId); }
@Override public Result<Authentication> createAuthenticationByUsername(String username) { UserDetails details = sc.getUserStore().loadUserDetailsByLoginName(username); //TODO : check user enabled? if(null == details) { return Result.empty(); } return Result.of(new SimpleAuthentication(details, new TrustedLoginNameCredentials(username))); }
public AuthzAuthentication createAuthzAuthentication(OAuth2Params oauthParam,AuthzClient client,AuthzCode authzCode){ AuthzAuthentication authc=createAuthzAuthenticationFromHandler(oauthParam,client,authzCode); if(authc==null){ UserStore us = sc.getUserStore(); UserDetails userDetails = us.loadUserDetailsByIdString(authzCode.getUserId()); if(null == userDetails) { return null; } return new SimpleAuthzAuthentication(oauthParam, client, userDetails); } return authc; }
public String getDisplayName() { return getName(); }
protected Map<String, Object> createClaims(Authentication authentication) { return createDefaultClaims(authentication); }
public InMemoryUserStore add(User user) { users.put(user.getLoginName(), user); return this; }
public InMemoryUserStore add(String username, String encryptedPassword) { users.put(username, new User(username, encryptedPassword)); return this; }
@Override public String generateAuthenticationToken(Request request, Response response, Authentication authc) { return signer.sign(createClaims(authc)); }
protected AuthzUserInfo createAuthzUserInfo(Request request, Response response, AuthzAccessToken at, UserDetails details){ SimpleAuthzUserInfo userInfo = new SimpleAuthzUserInfo(); userInfo.setSubject(details.getIdAsString()); userInfo.setFullName(details.getName()); userInfo.putExtProperty("login_name",details.getLoginName()); return userInfo; }
protected AuthzAccessToken createAccessTokenFromEntity(AuthzAccessTokenEntity entity) { SimpleAuthzAccessToken token = new SimpleAuthzAccessToken(); // add user login name UserDetails ud = sc.getUserStore().loadUserDetailsById(entity.getUserId()); if(ud != null){ token.setUsername(ud.getLoginName()); } token.setToken(entity.getToken()); token.setClientId(entity.getClientId()); token.setUserId(entity.getUserId()); token.setRefreshToken(entity.getRefreshToken()); token.setScope(entity.getScope()); token.setCreated(entity.getCreatedMs()); token.setExpiresIn(entity.getExpiresIn()); token.setAuthenticated(entity.getAuthenticated()); token.setExtendedParameters(entity.getExData()); return token; }
@Override public UserDetails getUserDetails(UserPrincipal user) { if(user instanceof UserDetails) { return (UserDetails)user; } return sc.getUserStore().loadUserDetailsById(user.getId()); }