oAuth2.0实施

时间:2020-06-09 07:47:59

标签: javascript oauth oauth-2.0

有两个不同的站点。第一个是存储的用户名/密码(存储在MySQL数据库中)。 在第二个上,将基于第一个站点的用户名/密码实施oAuth2.0。 在第一个站点的基础上,将开发一个Web服务来验证用户名/密码。 工作方案将如下所示: 用户转到第二个站点的页面,输入第一个站点的用户名/密码,然后单击“登录”。 单击按钮后,请求将从用户名/密码发送到验证Web服务(第一个站点),如果用户名/密码正确,则Web服务将返回唯一的用户ID。 我是否正确理解,为了生成访问令牌,仍然有必要在第二个站点上创建用户(这不利于安全)?

1 个答案:

答案 0 :(得分:0)

是的,我会这样说。这是因为任何一个站点都不了解另一个站点的用户。同一用户在每个用户中都作为单独的实体存在。

但是,如果两个站点都归您所有,那么您可以执行以下操作...

  • 让您的用户登录Site2.com
  • 验证后,您将获得提供商(例如google)的一些身份信息
  • 使用电子邮件ID创建到Site1.com的会话(无需登录)
  • 并且用户未通过“单一登录”登录两个网站:)

OAuth(与版本无关)涵盖了更大的用例范围。

问题是,为什么要使用OAuth并让用户多次登录。您的网站是否充当其他应用程序的门户?那将是不错的:),但很难实现。