【问题标题】:OAuth Vs SAML for Modern Web and Native apps现代 Web 和本机应用程序的 OAuth 与 SAML
【发布时间】:2016-07-10 22:26:44
【问题描述】:

我在一个项目中可能需要提出问题/原因,为什么应该采用 OAuth(甚至 OpenID Connect)作为未来任何 Web 和本机应用程序使用 SAML 的方式.

我浏览过的文档说明了 OAuth 的简单性(我可以证明),但并没有说它不能在 SAML 中完成。我使用过 OAuth,我可以证明它的简单性,但使用 SAML 并没有那么多,但我仍然知道它可以使用 SAML 来完成,但我认为在这种情况下它要复杂得多。

任何人都可以向我指出一个可以提出该声明并提供任何支持 OAuth 的数字/文档的权威来源吗?

【问题讨论】:

标签: oauth saml openid-connect


【解决方案1】:

SAML 和 WS-Fed 是企业协议。他们有复杂的密码学标准。在最常用的配置文件中,它们需要浏览器功能,因为协议是通过浏览器重定向驱动的。使用的令牌是基于 XML 的 SAML 令牌,并且可以很大。

如果您想与 SaaS 应用程序联合,例如Salesforce、Workday 他们只支持 SAML。

SAML 和 WS-Fed 支持 SOAP 和 WCF,没有 Web API。

OAuth 是一种轻量级协议,适用于本机设备(无头、桌面、WPF)、移动应用程序等。此处没有浏览器功能,因此无法使用 SAML 等。这些设备也不适合复杂的密码学

OAuth 具有一系列配置文件,例如授权代码授予(OpenID Connect 发挥作用)和客户端机密(取决于密钥的相互了解)。

它仅支持 Web API。

使用的令牌是 JWT - 带宽要少得多。

选择取决于用例。一个并不比另一个“更好”。

参考这里的场景 - Authentication Scenarios for Azure AD

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2012-09-06
  • 2011-02-03
  • 2014-03-25
  • 1970-01-01
  • 1970-01-01
  • 2015-01-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多