我正在尝试弄清楚 SSO 是什么。据我了解,SSO 允许您登录一次并访问多个应用程序。
所以我有我的反应应用程序,我只有一种身份验证模式,即使用 Firebase 进行电子邮件和密码身份验证 - 没有 google/facebook 登录方法。 (我在前端收到 JWT 令牌,该令牌存储在我的 cookie 中)
我想将 https://circle.so/ 与我的应用程序集成,这样如果我登录我的应用程序并通过按钮将用户重定向到 https://circle.so/,它就不会要求再次登录他们有一个文档来设置自定义 SSO
我浏览了文档,但无法理解一件事,为了实现 SSO,我是否需要在我的应用程序端使用 Google/Facebook 登录方法,或者 SSO 是否也适用于 Firebase 电子邮件和密码身份验证方法?
单点登录是一个概念,您登录到单个身份验证提供商,并让多个应用程序连接到该提供商。大多数情况下,您会在拥有 Microsoft/Azure ActiveDirectory 或 Okta 等身份验证系统的企业(公司)中看到这种情况,他们在该单一系统中维护其用户/角色/权限,然后配置他们部署给用户的所有应用程序利用该身份验证系统的单点登录。
这种方法的主要好处是用户和应用程序管理的集中化。他们可以在一处禁用用户,并禁用该用户访问所有支持 SSO 的应用程序。
使用 Firebase 构建并利用 Firebase 身份验证的应用程序可以参与 SSO 配置。您可以将 Firebase 身份验证配置为通常通过 SAML 执行 SSO。
这里有一篇文章(有点旧,但仍然相关)描述了这样的设置。
以上不正确,也不是问题。 问题是相反的 - 我的应用程序如何通过 firebase 登录,而不是如何配置我的 firebase 以允许通过 SAML、OIDC 等登录。
令人惊讶的是,Firebase 本身无法充当 OIDC 或 SAML 提供商,从而限制了其作为完整 SSO 实现的使用。