gpt4 book ai didi

authentication - SAML 与使用 OAuth 的联合登录

转载 作者:行者123 更新时间:2023-12-03 04:54:15 24 4
gpt4 key购买 nike

SAML 和使用 OAuth 的联合登录有何区别?如果公司想要使用第三方 Web 应用程序,并且还想要单点登录并成为身份验证机构,哪种解决方案更有意义?

最佳答案

他们解决不同的问题。

<强> SAML 是一组标准,其定义是为了共享有关用户是谁、他的属性集是什么的信息,并为您提供一种授予/拒绝对某些内容的访问甚至请求身份验证的方法。

<强> OAuth 更多的是关于委派对某些内容的访问权限。你基本上是在允许某人“扮演”你的角色。它最常用于授予可以代表您执行某些操作的 API 的访问权限。

它们是两个完全不同的东西。

<小时/>

一些可能有帮助的示例。

OAuth 类似于 Twitter。假设您正在使用 Google Buzz和 Twitter,并且您希望编写一个应用程序来保持两者同步。您基本上可以在您的应用程序和 Twitter 之间建立信任。第一次将应用程序链接到 Twitter 时,您会按照经典提示登录 Twitter,然后弹出确认框并询问“您想授予对“您的应用程序名称”的访问权限吗?”一旦您单击"is",信任就已建立,现在您的应用程序可以在 Twitter 上充当您的角色。它可以读取您的帖子,也可以创建新帖子。

SAML - 对于 SAML,请考虑两个不相关的成员资格系统之间的某种类型的“协议(protocol)”。在我们的例子中,我们可以使用全美航空和赫兹航空。没有一组共享的凭据可以将您从一个站点带到另一个站点,但假设 Hertz 希望向全美航空提供“交易”。 (当然我知道这是一个极端的例子,但请耐心等待)。购买航类后,他们将为主席成员(member)提供免费租车服务。全美航空和赫兹将建立某种形式的信任,以及某种方式来识别用户。在我们的例子中,我们的“联合 ID”将是电子邮件地址,这将是 Hertz 信任的一组单向信任,全美航空身份提供商将提供准确且安全的 token 。预订航类后,全美航空身份提供商将生成一个 token 并填充他们如何验证用户身份,以及有关该人的“属性”,在我们的例子中,最重要的属性将是他在全美航空的状态级别。一旦 token 被填充,它就会通过某种类型的引用传递它,或者在 URL 中编码,一旦我们到达 Hertz,它就会查看 token ,验证它,现在可以允许免费租赁汽车。

此 SAML 示例的问题在于它只是众多特殊用例中的一个。 SAML 是一个标准,实现它的方法几乎有太多。

<小时/>

或者,如果您不关心授权,您几乎可以认为通过 SAML 和 OpenID 断言身份验证。 .

关于authentication - SAML 与使用 OAuth 的联合登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2837553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com