0

我们有一个网站,我们的用户通过从 ADFS 获取 STS 来访问该网站。ADFS 通过检查用户在 Active Directory 中的组成员身份来发出声明。该网站使用 WIF 访问声明和处理身份验证。

有没有办法,当用户的 AD 数据更改(例如,他们删除了所有组成员身份)时,在他们对 RP 的声明中立即反映这些更改(相同的会话,至少来自用户的 PoV)?目前,如果我们撤销 AD 中的成员资格,则该用户对 RP 的声明(在其当前会话中)不受影响。他们拥有与撤销之前相同的声明和访问权限,直到用户的 ADFS 会话过期(可能需要数小时)。

例如,用户 U1 通过 ADFS 登录到我们的网站 W1,浏览了一下,然后在 AD 中取消了他的会员资格。我们需要 U1 在很短的时间段(分钟)内自动退出 W1。如果未注销,也可以将其在 WIF 中的声明集重置以反映其现在为空的 AD 组成员身份。

这可能吗?我能找到的所有文档似乎都假设网站本身(W1)知道用户何时应该终止他们的会话——在我们的例子中,W1 不知道,会话到期的“触发器”(或至少索赔修正)将来自公元。

4

1 回答 1

1

开箱即用 - 不。

声明不是动态的 - 它们仅在登录时创建。

我能想到的唯一方法是为您的应用程序。不时轮询 AD,如果成员资格被删除,则“在后台”执行应用程序注销。

下次用户尝试做某事时,WIF 会看到他们没有会话,会去 ADFS 登录,ADFS 会看到他们仍然登录并自动授予访问权限,即整个过程将是透明的。

由于再次登录使用,索赔将被更新,会员资格将不再是索赔。

于 2012-07-29T18:55:22.470 回答