在 AD 中处理帐户以针对不同应用程序进行 SSO 的正确方法

The right way to handle accounts in AD to have SSO for different applications

如果您有 4 个应用程序,您希望使用来自 ADFS 的 OpenID Connect 令牌来保护它们,SSO 将如何工作?

这 4 个应用程序没有用户注册,但是它们需要来自 IdP (ADFS) 的不同声明。您是否需要为每个用户创建 4 个不同的用户帐户才能登录所有 4 个应用程序?

如果每个用户需要 4 个不同的用户帐户,那么用户是否需要先从 app_1 注销并在 app_2 上登录?

感谢所有建议。

假设每个应用程序在 OIDC 模式下从 ADFS 接收 ID 令牌,那么作为该 ID 令牌的一部分的每个应用程序都将有权访问 subject/user id,并可以将该 ID 令牌交换为用户配置文件。 ADFS 运行 作为 OIDC OP 需要配置为发布每个应用程序的正确声明,当然每个应用程序都应该在初始身份验证时请求适当的所需范围,以便 ADFS 可以授予所需的声明。

每个应用程序都会收到一个 ID 令牌,并开始建立与该用户相关联的自己的会话。由于应用程序会话独立于 SSO 会话,因此如果您需要实施单点注销,则需要协调一致。