@Override public void verify(Map<String, Object> claims) throws InvalidTokenException { for (JwtClaimsSetVerifier jwtClaimsSetVerifier : this.jwtClaimsSetVerifiers) { jwtClaimsSetVerifier.verify(claims); } } }
@Override public OAuth2Authentication readAuthentication(String token) { return jwtTokenEnhancer.extractAuthentication(jwtTokenEnhancer.decode(token)); }
public KeyPair getKeyPair(String alias) { return getKeyPair(alias, password); }
@Bean public JwtTokenStore tokenStore() throws Exception { JwtAccessTokenConverter enhancer = new JwtAccessTokenConverter(); // N.B. in a real system you would have to configure the verifierKey (or use JdbcTokenStore) enhancer.afterPropertiesSet(); return new JwtTokenStore(enhancer); }
private TokenStore tokenStore() { if (tokenStore == null) { if (accessTokenConverter() instanceof JwtAccessTokenConverter) { this.tokenStore = new JwtTokenStore((JwtAccessTokenConverter) accessTokenConverter()); } else { this.tokenStore = new InMemoryTokenStore(); } } return this.tokenStore; }
@Bean public JwtAccessTokenConverter tokenEnhancer() { return new JwtAccessTokenConverter(); }
@Bean public JdbcTokenStore tokenStore() { return new JdbcTokenStore(dataSource); }
private OAuth2AccessToken convertAccessToken(String tokenValue) { return jwtTokenEnhancer.extractAccessToken(tokenValue, jwtTokenEnhancer.decode(tokenValue)); }
@Override public OAuth2Authentication readAuthenticationForRefreshToken(OAuth2RefreshToken token) { return readAuthentication(token.getValue()); }
@Override public OAuth2AccessToken readAccessToken(String tokenValue) { OAuth2AccessToken accessToken = convertAccessToken(tokenValue); if (jwtTokenEnhancer.isRefreshToken(accessToken)) { throw new InvalidTokenException("Encoded token is a refresh token"); } return accessToken; }
private void flush() { TokenExpiry expiry = expiryQueue.poll(); while (expiry != null) { removeAccessToken(expiry.getValue()); expiry = expiryQueue.poll(); } }
public OAuth2Authentication mapRow(ResultSet rs, int rowNum) throws SQLException { return deserializeAuthentication(rs.getBytes(2)); } }, extractTokenKey(token));
private void removeAccessTokenUsingRefreshToken(String refreshToken) { String accessToken = this.refreshTokenToAccessTokenStore.remove(refreshToken); if (accessToken != null) { removeAccessToken(accessToken); } }
public OAuth2RefreshToken mapRow(ResultSet rs, int rowNum) throws SQLException { return deserializeRefreshToken(rs.getBytes(2)); } }, extractTokenKey(token));
public void removeAccessTokenUsingRefreshToken(String refreshToken) { jdbcTemplate.update(deleteAccessTokenFromRefreshTokenSql, new Object[] { extractTokenKey(refreshToken) }, new int[] { Types.VARCHAR }); }
public int compareTo(Delayed other) { if (this == other) { return 0; } long diff = getDelay(TimeUnit.MILLISECONDS) - other.getDelay(TimeUnit.MILLISECONDS); return (diff == 0 ? 0 : ((diff < 0) ? -1 : 1)); }
@Override public void removeRefreshToken(OAuth2RefreshToken token) { remove(token.getValue()); }
@Bean public JwtAccessTokenConverter accessTokenConverter() { return new JwtAccessTokenConverter(); }
@Override public OAuth2Authentication readAuthentication(OAuth2AccessToken token) { return readAuthentication(token.getValue()); }
public OAuth2Authentication mapRow(ResultSet rs, int rowNum) throws SQLException { return deserializeAuthentication(rs.getBytes(2)); } }, extractTokenKey(value));