使用 ADFS 实施 SSO

Implementing SSO using ADFS

我对 ADFS 还很陌生。我们需要在我们的应用程序 (A) 和客户端应用程序 (B) 之间启用 SSO。 B 配置为针对 ADFS 进行身份验证。我们需要将 A 与 B 集成并启用 SSO。用户将始终从 B 登录并将 link 连接到 A。当用户单击 link 时,他应该被导航到 A 中的页面。我们希望通过集中式模块(可能是服务)。

我有两个问题。 1. 如果我们从客户端 ADFS 获取相关信息,如依赖方 ID、ADFS 端点和证书详细信息,以实施一项服务,负责将声明传递给我们的应用程序 A,是否可能。

  1. 一旦用户在 B 中点击 link,如果 A 未 "Hardcoded" 配置客户端的 ADFS,我们如何获得 A 中的声明。

请多指教

有多种方式:

  • A 和 B 都与您的 ADFS 联合并使用 ws-fed,因此从 B 导航到 A 涉及 ADFS,但这种情况发生得很快并且无需用户交互
  • B 充当依赖 STS,以便 A 使用 ws-fed 在 B 中进行身份验证。如果你以前没有做过这件事,这很难
  • B 使用另一种完全自定义的方式将用户凭据传递给 A。我们的一个应用程序(你的 B)显示一个二维码,另一个应用程序(你的 A)扫描并使用二维码编码的一次性 guid 直接询问 B 该 guid 属于谁

我的建议是第一种,如果第一种不适用,最后一种。