不同的认证技术

Posted

技术标签:

【中文标题】不同的认证技术【英文标题】:Different authentication techniques 【发布时间】:2017-10-18 07:07:58 【问题描述】:

谁能以简洁的方式告诉我OAuth2、Auth0、JWT的区别,以及何时使用其中一种,哪一种更好?

【问题讨论】:

附带说明,JWT 和 OAuth 是实现身份验证/授权的方式,而 Auth0 是服务提供者; here's an example of using Auth0's service and JWT to provide auth for a Flask app in Python. 【参考方案1】:

OAuth2.0 是您可以用来获取可用于代表用户执行操作的令牌的协议名称。现在这些令牌可用于访问某些 3rd 方 API 或您自己的服务。

例如,如果您想为正在构建的应用访问 someones emails on Outlook,OAuth2.0 允许您代表最终用户获取访问令牌(由 Microsoft 颁发)(他们必须登录到身份提供者),可用于承载请求(只是带有访问令牌的 HTTP 请求)。

强烈建议浏览 RFC 以了解可以使用 OAuth2.0 的不同场景,此处的示例只是一种情况。

JWT(JSON Web 令牌)是许多身份提供者使用的令牌的标准格式。上面的那些访问令牌可能采用这种格式。这是一个small site,您可以使用它来解码 JWT 令牌(尝试点击示例令牌)。

Auth0 是一家在身份领域工作的私人公司。

【讨论】:

以上是关于不同的认证技术的主要内容,如果未能解决你的问题,请参考以下文章

华为防火墙认证技术

华为防火墙认证技术

配置两个不同kerberos认证中心的集群间的互信

面向对象之多态

配置不同的授权/认证方案

目前双因素认证厂商有哪些?该怎么选?