我需要为RandomValueProviderTokenServices
类实现oauth spring持久性。
需要根据RandomValueProviderTokenServices
的抽象保护方法存储的类是OAuthProviderTokenImpl
。但是,此类包含对Authentication
接口的引用,该接口具有各种实现。
我认为这些方法的实现是由任何使用spring-oauth库进行项目的人完成的。
有没有通常的做法来实现这一目标? (不使用Java构建它的序列化机制)。
答案 0 :(得分:0)
我现在正在研究这个问题,我只是使用他们的id在数据库中存储对用户的引用。然后我使用以下命令生成基于该用户对象的Authentication对象:
public Authentication getAuthentication(User user) {
Object credentials = user.getUsername(); // the username of your user
GrantedAuthority[] authorities = {new GrantedAuthorityImpl(user.getRole().getName())}; // an array of their role names
UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(user, credentials, authorities);
auth.setDetails(user);
return auth;
}