我想为一个用户的相同凭证维护一个以上的访问令牌,这样我们是否可以覆盖DefaultTokenServices的createAccessToken方法来做到这一点。
我想要的是,当一个用户的访问令牌从一台设备过期时,它不应影响从另一台设备登录的同一用户的访问令牌(即为一个用户维护与该数量相同的访问令牌)该用户的登录次数)
答案 0 :(得分:0)
您能否详细说明您真正需要实现什么?无论客户端如何,都应允许您同时进行身份验证。 Spring Security允许maximumSessions属性允许多个会话 例如:
@Bean
@Primary
DataSource dataSource() throws SQLException {
//Init
OracleDataSource dataSource = new OracleDataSource();
dataSource.setUser(username);
dataSource.setPassword(password);
dataSource.setURL(url);
dataSource.setImplicitCachingEnabled(true);
dataSource.setFastConnectionFailoverEnabled(true);
return dataSource;
}
很有可能扩展 DefaultTokenService ,请参阅Spring Boot Oauth2 Extending DefaultTokenServices。