oauth 如何与主要平台一起工作,例如。 FB和Google?

How oauth works with major platforms eg. FB and Google?

我们已经看到许多移动应用程序允许我们使用第三方社交媒体平台登录他们的服务,例如。 Google、脸书

但是,当我寻求构建我自己的使用第三方 SSO 的平台时,我一直在阅读需要身份验证服务器的 OAuth。这个图(强调我的)

我不确定 Google 和 FB 从哪里来?

在您描述的场景中,{Google,Facebook} 充当身份提供商。更准确地说,它们充当 OAuth 2.0 授权服务器。 在 Google 的情况下,他们还使 Oauth2 实现符合 OpenId 规范,从而允许他们为您提供身份验证和授权。

无需了解 Oauth2 协议的来龙去脉,只需记住它是一种保证您通过正确权限进行身份验证的协议。

Google 提供了很好的 documentation of the protocol flow and most importantly a playground 现场理解。

请注意,我们还有不同类型的身份提供者来实施 SSO。我们有 SAML 身份提供者,例如 Okta 或 Keycloak。不同的协议,不同的目的(更面向企业)。