首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >OAuth令牌:我可以链接到一个用户表吗?

OAuth令牌:我可以链接到一个用户表吗?
EN

Stack Overflow用户
提问于 2011-08-02 16:28:30
回答 1查看 791关注 0票数 0

我正在开发一个YouTube应用程序,该应用程序需要有一个用户表,其中包含数据库中通常与其相关的数据。我决定为这个应用程序选择OAuth路由,并有两个表,一个是AccessToken,一个是RequestToken。

我不确定将什么链接到某种类型的用户表,是访问令牌还是请求令牌?

  1. ,如果令牌过期了,我会只查找哪个用户有这个令牌,然后更新它吗?
  2. ,以签出用户,我只是为用户删除令牌,并从会话中清除令牌吗?

编辑:换句话说,我基本上希望用户不必注册到我的站点,而是通过OAuth登录,让我的应用程序在user表中创建一个用户条目,这样我的所有其他数据都可以链接到它。

EN

回答 1

Stack Overflow用户

发布于 2011-08-02 17:00:31

其中有两个部分:登录和资源。

如果您只想使用YouTube登录,则根本不需要存储访问令牌。当用户带着访问令牌从YouTube返回时,只需调用一次以获取他们的YouTube id (不确定YouTube是否支持带有令牌响应中的id的扩展参数)并丢弃访问令牌。如果还想进行其他调用来访问用户的YouTube数据,则需要保留访问令牌。

实现这一目标的一个常见方法是:

  1. 当用户访问您的站点时,您会使用一些随机字符串设置会话cookie,我们称之为状态。用户单击“登录YouTube‘
  2. ,然后从YouTube获得请求令牌,然后将其存储在本地缓存中(如果这是一个小规模的应用程序、memcache等),可以是数据库、红包、内存。”或者对其进行加密,并将其存储在客户端的另一个cookie中。当您进行请求令牌调用时,在回调中包含一个'state‘参数,并在#1中将值设置为cookie。这是针对CSRF的关键安全防御措施。另外,您的重定向端点应该使用SSL。
  3. 您用请求令牌(还有加密的请求令牌秘密cookie)将用户重定向到YouTube,用户登录到YouTube中,批准应用程序,然后获得重定向
  4. ,您可以通过比较传入状态参数的值和来自用户的会话cookie的值来检查返回重定向端点的用户是否与您最初发送的用户匹配。
  5. 从本地缓存中获取请求令牌秘密,或者通过解密先前使用的令牌秘密cookie (您决定使用的方法),并使用访问令牌请求访问令牌
  6. ,发出一个YouTube API调用,以使数据库中的用户
  7. 查看是否已经有一个具有该YouTube id的用户。如果您这样做了,这只是一个登录,如果不是,这是一个新的用户注册,所以在您的用户表中为他们创建一个新的记录。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6915350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档