OAuth2 - 在Spring Security中处理密码更改

时间:2015-10-19 10:11:05

标签: java spring security spring-security oauth-2.0

我正在Spring安全模块的帮助下为我的REST服务(密码授予类型)实现OAuth2。我'使用postgreSQL作为我的令牌存储。一切正常,但我需要添加更改用户密码的可能性。如果用户更改了密码,则应删除/忘记旧令牌。

我使用JdbcTokenStore Spring服务实现此功能:

public void updatePassword(User user, String newPassword) {
    ...
    // Update password in database

    clearUserTokens(user.getUsername());
}

private void clearUserTokens(String userName) {
    Collection<OAuth2AccessToken> tokens = jdbcTokenStore.findTokensByUserName(userName);
    tokens.stream().forEach(jdbcTokenStore::removeAccessToken);
}

这种做法是否正确?是否有处理这种情况的标准方法?

0 个答案:

没有答案