OAuth2刷新令牌。如何在客户端存储它

时间:2016-02-19 13:56:49

标签: javascript oauth oauth-2.0 token access-token

授权OAuth2服务器以获取访问权限+刷新令牌。 据我所知,访问令牌可以存储在客户端上,因为它有短暂的实时圈子。但刷新令牌可以存储在那里吗?根据我读过的信息,没有安全的方法(here)

所以,我必须实现单独的服务器端服务,只需存储刷新令牌

我是对的吗?它只是存储刷新令牌的一种可能方式吗?

P.S。客户端:angularJS

1 个答案:

答案 0 :(得分:1)

是的,你是对的。如果您无法通过授权服务器进行身份验证(即传递客户端ID和密钥),那么您将只获得一个短期访问令牌。

由于Angular代码在客户端上,因此保密客户端是不安全的。因此,您无法将客户端密钥传递给Auth服务器,因此无法进行身份验证。

此外,您的服务器代码不仅会存储令牌,还应该托管一个接受授权代码的端点,然后使用该代码(以及您的客户端凭据)调用Auth服务器以获取令牌和刷新令牌。

在成功登录用户并允许用户授予对您应用的访问权限后,auth代码将通过来自auth服务器的呼叫通过http重定向提供给您的服务器端点。