用于授权和身份验证的 Oauth2?
Oauth2 for Authorization and Authentication?
Oauth2可以用于授权和身份验证吗?
据我了解,Oauth2 授权 消费者应用程序访问提供商(例如 Facebook、Google、Twitter 等)的用户信息。
但是 Oauth2 可以用来验证 用户吗?例如,假设我们有一个由本机移动前端和后端组成的应用程序 api - Oauth2 是否可用于在 之上验证和维护 身份验证 来自 Facebook、Google、Twitter 等提供商的授权?
如果是,怎么样?例如,我们是否持久化身份验证令牌并将其用作会话令牌?或者是否需要 OpenId Connect 才能通过第三方提供商 对 用户进行 "consumer" 应用程序的身份验证?
符合规范的 OAuth 2.0 不能用于用户身份验证。话虽如此,可以开发 OAuth 2.0 的扩展,以允许用户身份验证。一些提供商,例如Facebook,已经做到了。
但是还有一个允许用户身份验证的 OAuth 2.0 标准化扩展,称为 OpenID Connect。如果您想以 标准化 方式通过第三方提供商向消费者应用程序验证用户身份,则确实需要 OpenID Connect。 OpenID Connect 的令牌格式是 JWT,令牌本身称为 id_token
。您可以使用 id_token
作为会话令牌。
有关 OAuth 2.0 和用户身份验证的详尽文章,请参阅 http://oauth.net/articles/authentication/
Oauth2可以用于授权和身份验证吗?
据我了解,Oauth2 授权 消费者应用程序访问提供商(例如 Facebook、Google、Twitter 等)的用户信息。
但是 Oauth2 可以用来验证 用户吗?例如,假设我们有一个由本机移动前端和后端组成的应用程序 api - Oauth2 是否可用于在 之上验证和维护 身份验证 来自 Facebook、Google、Twitter 等提供商的授权?
如果是,怎么样?例如,我们是否持久化身份验证令牌并将其用作会话令牌?或者是否需要 OpenId Connect 才能通过第三方提供商 对 用户进行 "consumer" 应用程序的身份验证?
符合规范的 OAuth 2.0 不能用于用户身份验证。话虽如此,可以开发 OAuth 2.0 的扩展,以允许用户身份验证。一些提供商,例如Facebook,已经做到了。
但是还有一个允许用户身份验证的 OAuth 2.0 标准化扩展,称为 OpenID Connect。如果您想以 标准化 方式通过第三方提供商向消费者应用程序验证用户身份,则确实需要 OpenID Connect。 OpenID Connect 的令牌格式是 JWT,令牌本身称为 id_token
。您可以使用 id_token
作为会话令牌。
有关 OAuth 2.0 和用户身份验证的详尽文章,请参阅 http://oauth.net/articles/authentication/