【问题标题】:Oauth2 for Authorization and Authentication?Oauth2 用于授权和身份验证?
【发布时间】:2015-05-12 05:56:14
【问题描述】:

Oauth2 可以用于授权身份验证吗?

据我了解,Oauth2 授权消费者应用程序从提供商(例如 Facebook、Google、Twitter 等)访问用户信息。

但是 Oauth2 可以用于验证用户吗?例如,假设我们有一个由原生移动前端和后端 api 组成的应用程序 - Oauth2 是否可以在 Facebook 等提供商的授权之上验证和维护身份验证 、谷歌、推特等?

如果是,怎么做?例如,我们是否持久化身份验证令牌并将其用作会话令牌?或者通过第三方提供商验证用户到“消费者”应用程序是否需要 OpenId Connect?

【问题讨论】:

    标签: django oauth-2.0 google-oauth openid-connect


    【解决方案1】:

    符合规范的 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/

    猜你喜欢
    • 2018-07-14
    • 2018-01-01
    • 2010-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-02
    相关资源
    最近更新 更多