/** * 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; }
claims.put(JWT.CLAIM_EXPIRATION_TIME, System.currentTimeMillis()/1000L+expiresIn); claims.put("name", user.getName()); claims.put("username", user.getLoginName());
claims.put(JWT.CLAIM_EXPIRATION_TIME, System.currentTimeMillis()/1000L+expiresIn); claims.put("name", user.getName()); claims.put("login_name", user.getLoginName());
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 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; }
@Override public void onOAuth2LoginSuccess(Request request, Response response, AuthzAuthentication authc) throws Throwable { if(!config.isSingleLoginEnabled()) { return; } Authentication secAuthc = authc.getAuthentication(); String token = secAuthc.getToken(); if(null == token) { throw new IllegalStateException("The authentication token must be exists"); } AuthzSSOStore ss = config.getSSOStore(); AuthzSSOSession session = ss.loadSessionByToken(authc.getUserDetails().getLoginName(), token); if(null == session) { //Creates a new sso session and save it. session = newSession(request, response, authc); AuthzSSOLogin login = newLogin(request, response, authc, session, true); ss.saveSession(session, login); setCurrentSSOLogin(login,request,authc); }else{ //Creates a new login and save it in session. AuthzSSOLogin login = newLogin(request, response, authc, session, false); ss.saveLogin(session, login); setCurrentSSOLogin(login,request,authc); } setSSOSession(session,request,authc); }
@Override public void onOAuth2LoginSuccess(Request request, Response response, AuthzAuthentication authc) throws Throwable { if(!config.isSingleLoginEnabled()) { return; } Authentication secAuthc = authc.getAuthentication(); String token = secAuthc.getToken(); if(null == token) { throw new IllegalStateException("The authentication token must be exists"); } AuthzSSOStore ss = config.getSSOStore(); AuthzSSOSession session = ss.loadSessionByToken(authc.getUserDetails().getLoginName(), token); if(null == session) { //Creates a new sso session and save it. session = newSession(request, response, authc); AuthzSSOLogin login = newLogin(request, response, authc, session, true); ss.saveSession(session, login); setCurrentSSOLogin(login,request,authc); }else{ //Creates a new login and save it in session. AuthzSSOLogin login = newLogin(request, response, authc, session, false); ss.saveLogin(session, login); setCurrentSSOLogin(login,request,authc); } setSSOSession(session,request,authc); }
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; }
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; }
at.setUserId(user.getId().toString()); rt.setUserId(at.getUserId()); at.setUsername(user.getLoginName());
at.setUserId(user.getId().toString()); rt.setUserId(at.getUserId()); at.setUsername(user.getLoginName());