OpenID Connect 和 Oauth 2.0 有什么区别? 当应用程序在 docker 容器中运行时,建议使用哪一个? 有人可以用例子简单解释一下吗?
我使用过 openid connect 。无法在 docker 中部署。 我不是说因为 openid 但我想知道这些事情
OAuth 2.0:
OAuth 2.0 是一个授权框架,允许第三方应用程序获得对用户资源的有限访问权限(通常在不同的服务上),而无需公开用户的凭据。 它广泛用于委托授权,例如允许第三方应用程序代表用户访问资源(例如,从第三方应用程序访问网站)。
OpenID 连接(OIDC):
OpenID Connect 是构建在 OAuth 2.0 之上的身份验证层,提供身份验证和单点登录 (SSO) 功能。 它用于用户身份验证,允许用户使用一组凭据 (SSO) 登录多个应用程序。
Docker 推荐:
OAuth 2.0 和 OpenID Connect 都可以在 Docker 容器中使用,因为它们是可以在任何环境中实现的标准协议。 OAuth 2.0 和 OIDC 之间的选择取决于您应用程序的具体要求:
示例:
假设您有一个在 Docker 容器中运行的 Web 应用程序,允许用户通过任何 IDP 访问其网站(例如:Google)
OAuth 2.0:您的应用程序可以使用 OAuth 2.0 从 IDP 授权服务器获取访问令牌。访问令牌允许您的应用程序代表用户访问网站。
OpenID Connect:如果您的应用程序还需要用户身份验证(例如,使用 Google 登录),您可以使用 OpenID Connect。用户使用其 IDP 凭据登录后,您的应用程序会收到一个 ID 令牌,其中包含有关用户的信息,例如姓名和电子邮件地址。