实现spring-oauth RandomValueProviderTokenServices类的提示

时间:2009-11-30 15:10:22

标签: java oauth spring-security

我需要为RandomValueProviderTokenServices类实现oauth spring持久性。 需要根据RandomValueProviderTokenServices的抽象保护方法存储的类是OAuthProviderTokenImpl。但是,此类包含对Authentication接口的引用,该接口具有各种实现。

我认为这些方法的实现是由任何使用spring-oauth库进行项目的人完成的。

有没有通常的做法来实现这一目标? (不使用Java构建它的序列化机制)。

1 个答案:

答案 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;
}