【问题标题】:Can we use a single Service Provider or Relying Party to authenticate multiple web apps我们可以使用单个服务提供商或依赖方来验证多个 Web 应用程序吗
【发布时间】:2021-11-15 03:53:30
【问题描述】:

我面临的设计问题是,我们有多个 Web 应用程序,例如 webapp1、webapp2、webapp3,并且不想创建一个使用专用依赖方来验证专用应用程序的专用服务提供商,而不是想要创建一个公共服务提供者(在 ADFS 中创建为依赖方),所有不同的 Web 应用程序都将联系到该服务提供者以获取用户身份验证,并作为回报获取声明/令牌。 通过这样的设计,我将摆脱为每个 Web 应用程序创建多个 SP(或依赖方),说将有一个 Web api 源进行身份验证。

但是这样做我不确定这是否是正确的方法,到目前为止我知道的是,单一应用程序与它的专用服务提供商进行对话,该服务提供商与专门的依赖方对话。 我使用 SAML 作为身份验证语言。

【问题讨论】:

  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: saml-2.0 adfs service-provider


【解决方案1】:

• 您不能为多个 SaaS 应用程序创建公共(单一)依赖方信任,因为每个 SaaS 应用程序/平台都与 ADFS 联合,以便使用 Active Directory 属性向该 SaaS 平台提供单点登录身份验证从某种意义上说,每个 SaaS 应用程序都有一个不同(唯一)的域名,一个由 IANA 在公共和全球 DNS 注册中心分配的不同(唯一)公共 IP 地址。

• 因此,由于每个 SaaS 应用程序/平台都是唯一的,因此它们包含联合配置信息的联合元数据 URL 是不同且唯一的,因为每个 SaaS 应用程序都是在特定业务和所需平台构建上为不同目的托管和构建的。因此,本地 Active Directory 和 Service Provider 之间形成的依赖方信任,即 SaaS 应用通过 ADFS 是平台之间的一对一信任连接,让 Active Directory 授权的身份能够登录到SaaS 平台。

• 此外,针对从 Active Directory 请求的用于身份验证的属性生成的声明将是唯一的,并且根据创建的依赖方信任和用于该目的的加密协议,对于每个 SaaS 应用程序都是不同的。

请找到以下文档链接以获取更多信息:-

https://docs.microsoft.com/en-us/azure/architecture/multitenant-identity/adfs

【讨论】:

  • 这意味着,这不是一种正确的设计方法,因此作为最佳实践,依赖方和 Web 应用程序之间必须建立一对一的关系......顺便感谢您的反馈.
  • 是的,正确的,应该是这样的!
  • 您好 @Vlogs 和 Eraj Raj 的视频,如果我的回答对您有帮助,您可以投票并接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为填充在。)。这对其他社区成员可能是有益的。谢谢。
猜你喜欢
  • 2019-02-17
  • 2018-09-30
  • 1970-01-01
  • 1970-01-01
  • 2021-05-11
  • 1970-01-01
  • 2019-11-01
  • 2017-08-20
  • 1970-01-01
相关资源
最近更新 更多