Firebase - 自定义 oAuth2 服务 - 授权代码?

标签 firebase oauth-2.0 firebase-authentication

有一个应用想要使用 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 来识别某人的身份。

如果我正确理解你的问题:

  1. 用户访问某个网站
  2. 用户想要使用您的网站 OAuth2 注册或登录
  3. 您重定向回原始页面并发送生成的 token
  4. 页面可以使用此 token 访问您网站上的内容

关于Firebase - 自定义 oAuth2 服务 - 授权代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49127092/

相关文章:

angular - 服务器端网络应用程序的 Google Oauth2 的 CORS 问题

firebase - 使用 redux 在 react-native 应用程序中保存访问 token 的最佳做法是什么?

java - 如何在Firebase中获取 child 的数据

oauth-2.0 - 引用 token 是否需要刷新 token ?

reactjs - 我应该如何在我的案例中使用 OAuth 2.0 授权授权(React 前端,Spring Boot 后端)

ios - 类型 ViewController 不符合协议(protocol) GIDSignInDelegate

javascript - 从 firebase 接收数据

javascript - 使用 AngularJS 和 Firebase 更新 ng-repeat 中的值

firebase - 如何限制对 Firestore 中用户拥有的文档的写入?

ios - 如何在 swift 3 中使用 FirebaseAuthUI