Windows Identity Foundation要求AD FS声明



我的问题归结为,当我在应用程序之间切换时,我可以刷新用户的声明吗?据我所知,答案很可能是"不"。我已经做了添加"claimTypeRequired"的舞蹈,但这没有帮助。

假设我有多个应用程序,App1、App2、App3、App4、App5。

一旦你通过任何应用程序的身份验证,AD FS似乎都不会再次受到攻击,除了注销之外,别无选择,是吗?因此,有了这种想法,无论我登录哪个应用程序,我都必须获得所有应用程序的所有索赔。附带说明一下,我将通过AD FS中的SQL存储过程创建这些声明。usp_GetAppClaims @AppID = 1, @UserGuid = 'GUID'

我将每个应用程序的一组声明存储在各自的URI中,该URI包含多个值。类似于"角色"声明。例如:

  • http://schemas.MyCompany.com/identity/claims/App1
    --价值1
    --价值2
  • http://schemas.MyCompany.com/identity/claims/App2
    --价值1
    --值2
    --价值3
  • http://schemas.MyCompany.com/identity/claims/App3
  • http://schemas.MyCompany.com/identity/claims/App4
  • http://schemas.MyCompany.com/identity/claims/App5

我是不是让这件事变得更加困难了?如果我被要求拥有所有索赔,我有点担心代币的大小。20个应用程序,每个应用程序有10-50个索赔。。。最大4kb Cookie,对吧?也许这在大多数情况下都无关紧要。

如果您在最后一个"发布转换规则"中进行索赔查询,那么每个应用程序总是会获得自己的索赔集。

如果你有一个发卡行链,并且索赔来自链中的第一个,那么我不知道有任何方法可以区分每个RP(在链的末尾)。为了避免巨大的索赔集,一些人(如果可能的话)在RP中使用WIF ClaimsAuthenticationManager进行索赔。

Wrt,"刷新",即Value1的值在访问App1和App2之间发生变化,然后否-尽管"在后台",但您必须注销。

就大型cookie而言,从前(WIF 3.5)有"会话模式",即在ASP中切换到WIF会话模式。NET。

问题最终是两个应用程序使用了相同的cookie。发现您必须在web.config中为cookie指定一个唯一的名称,否则在应用程序之间切换时将无法重定向回AD FS。

相关内容

  • 没有找到相关文章

最新更新