如何实现处理在DB中存储refreshToken的Oauth 2.0 Client?

时间:2015-09-03 08:47:06

标签: java oauth-2.0 gmail-api google-api-java-client google-oauth2

因此,在我的情况下,我将使用Gmail API从我的后端服务器获取电子邮件。在阅读了oauth 2.0机制之后,似乎为了在没有用户在线时获取访问权限,我们使用“离线”accessType。因此,用户应该在开始时进行一次授权,其余过程会将accessTokenrefreshToken提供给我的后端服务器。

看看google oauth api客户端样本,我认为他们没有给出如何存储和加载refreshToken的任何灵活性。相反,他们通过将refreshToken存储在文件中来提供完整的解决方案,这不是我想要的。 是否有任何java oauth 2.0客户端库提供这种灵活性(存储和加载refreshToken)?

2 个答案:

答案 0 :(得分:0)

查看官方OAuth 2 page。有一些OAuth 2客户端框架可供选择。

我不会存储服务提供商提供的访问令牌,它可能会过期。如果访问令牌过期,我会发送一个授权请求来刷新令牌。

答案 1 :(得分:0)

您计划使用的后端API服务器是什么。您可以使用内部具有OAuth2实现的WSO2 IS。

https://docs.wso2.com/display/IS500/OpenID+Connect+with+the+WSO2+Identity+Server+and+WSO2+OAuth2+Playground

他们公开了restful-webservices并且可以实现安全性