protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationException { UsernamePasswordToken upToken = (UsernamePasswordToken) token; SimpleAccount account = (SimpleAccount) getAuthorizationCache().get(upToken.getUsername()); if (account.isLocked()) { throw new LockedAccountException("Account [" + account + "] is locked."); } if (account.isCredentialsExpired()) { String msg = "The credentials for account [" + account + "] are expired"; throw new ExpiredCredentialsException(msg); } return account; }
@Override protected AuthenticationInfo queryForAuthenticationInfo( AuthenticationToken token, LdapContextFactory ldapContextFactory) throws NamingException { UsernamePasswordToken upToken = (UsernamePasswordToken) token; String username = upToken.getUsername(); String pass = String.valueOf(upToken.getPassword()); try { this.ldapManager.authenticateUser(username, pass); return this.buildAuthenticationInfo(username, null); } catch (org.sonatype.security.authentication.AuthenticationException e) { if (this.logger.isDebugEnabled()) { this.logger.debug("User: "******" could not be authenticated ", e); } throw new org.jsecurity.authc.AuthenticationException(e.getMessage()); } }