我有网络服务器。每个客户都进入服务器,他们可以访问他们的谷歌驱动器文件。
我写了谷歌驱动器API的实现,但我有令牌的问题。
然后,如果同一个人再次出现,服务器看到她的刷新令牌,并自动生成一个新的访问令牌。用户不必再次单击“允许访问”,因为我们可以使用刷新令牌生成访问令牌。正确吗?因为如果我们不手动撤消刷新令牌,它将永远存在(我不知道如何撤消,但我知道如果我们不做任何事情,它将永远存在)
问题2如果上面是正确的-如何在服务器上保存刷新令牌?另一方面,我需要用户的标识符,不是吗?。因为如果另一个人来了,我应该使用她的刷新令牌生成她的访问令牌。我应该在数据库里找到她的刷新令牌。但如何查看我是否没有任何标识符?
我在API上没有任何用户标识符:https://developers.google.com/drive/v2/reference/about#resource
1)正确的是,您的应用程序在用户第一次授予访问权时会收到一个访问令牌和一个刷新令牌。访问令牌是短暂的,而刷新令牌很少过期,除非用户手动撤销它。当用户回到您的应用程序时,如果您有存储的刷新令牌,您可以使用它来检索访问令牌,而无需任何用户交互
2)您应该使用永久存储解决方案,如数据库。密钥应该是从用户信息服务中检索的用户ID。
有关详细信息,请查看https://developers.google.com/drive/about-auth
授权服务器可以给Web应用客户端和本机应用程序客户端颁发刷新令牌。 刷新令牌在传输和储存时必须保持机密性,并只与授权服务器和刷新令牌被颁发的客户端共享。授权服务器必须维护刷新令牌和它被颁发给的客户端之间的绑定。刷新令牌必须只能使用带有RFC2818定义的服务器身份验证的1.6所述的TLS 传输。 授权服务器必须验证刷新令牌和客户端身份之间的绑定,无论客户端身份是否能被验证。当无法进行客户端身份验证
刷新令牌是用于获取访问令牌的凭据。刷新令牌由授权服务器颁发给客户端,用于在当前访问令牌失效或过期时,获取一个新的访问令牌,或者获得相等或更窄范围的额外的访问令牌(访问令牌可能具有比资源所有者所授权的更短的生命周期和更少的权限)。颁发刷新令牌是可选的,由授权服务器决定。如果授权服务器颁发刷新令牌,在颁发访问令牌时它被包含在内(即图1中的步骤D)。 刷新令牌是一个代表由资源所有者给客户端许可的授权的字
我对oauth2中的刷新令牌有点困惑。如它所说的访问令牌限制了黑客可以使用用户凭证的1小时的时间窗口,刷新令牌是万岁令牌,可以用来重新创建访问令牌。 我很困惑,如果有人从cookie中窃取了访问令牌,他也可以窃取刷新令牌,并可以使用刷新令牌创建新的访问令牌,因为我在JQuery中有ajax请求(客户端)
我在自己的Web API上使用Oauth2,在Web应用程序上使用ASP.NET C#来使用该API。在我的web应用程序上,我正在进行HttpWebRequests。当我的访问令牌过期时,我调用一个方法“refreshToken”,该方法发出请求以获取新的访问令牌。这工作很好,没有问题...除了我得到的响应包含一个新的刷新令牌???我在等新的访问令牌。我甚至认为在没有再次传递凭据的情况下这是不可
我正在构建一个移动应用程序,并且正在使用JWT进行身份验证。 最好的方法似乎是将JWT访问令牌与刷新令牌配对,这样我就可以根据需要频繁地使访问令牌过期。 刷新令牌是什么样子的?是随机字符串吗?那串加密了吗?是另一个JWT吗? 刷新令牌将存储在用户模型的数据库中以便访问,对吗?在这种情况下似乎应该加密 在用户登录后,我是否会将刷新令牌发送回,然后让客户端访问单独的路由来检索访问令牌?
我不熟悉,它代表。我混淆了它的两个术语:访问令牌和刷新令牌。 用户注册/登录站点后,我创建和。 将刷新标记保存在数据库或cookie中。 15分钟后,用户标记访问令牌过期。 如果用户空闲2小时,我将从cookie或DB中删除刷新令牌,否则我将使用刷新令牌续订访问令牌。 有什么优化的方法可以达到这个目的吗?