有一个应用想要使用 oAuth2 向我的用户进行身份验证。
因此,他们打开一个窗口,其中包含授权
URL 和参数(例如重定向 uri)
喜欢:https://my-website.com/api/authLauncherauthorize?redirect=SOME_URI
现在我有了自己的 firebase-login,当用户登录时,我从 firebase 获取他们的访问 token 。这就是我想回应的。
但是,在 oAuth2 指南/解释中,例如 https://aaronparecki.com/oauth-2-simplified/我发现我应该返回授权码,但我不明白从哪里可以获得该授权码?
我能做的就是生成一个废话代码,将其在数据库中与访问 token 配对,然后在“ token ”请求中发送正确的访问 token 。这是我应该做的吗?
需要明确的是,这是我第一次自己编写 oAuth2 服务。
最佳答案
OAuth 是一个提供对资源进行身份验证的访问的系统。该资源可以是例如用户页面或该用户页面的编辑权限。因此,您的目标是向正确的人员提供访问权限。
当有人登录时,他们会获得一个 token 。您的职责是根据需要生成该 token ,它可以是某种形式的用户数据到 Base64 或完全随机。获取此 token 并将其与权限相关联,例如查看页面、编辑页面,甚至更简单的操作,例如查看用户的电子邮件。
OAuth2 token 和/或权限应该可以撤销,而无需删除用户。您不应该使用 OAuth2 来识别某人的身份。
如果我正确理解你的问题:
- 用户访问某个网站
- 用户想要使用您的网站 OAuth2 注册或登录
- 您重定向回原始页面并发送生成的 token
- 页面可以使用此 token 访问您网站上的内容
关于Firebase - 自定义 oAuth2 服务 - 授权代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49127092/