具有基于声明的身份验证和多个角色的Windows Identity Foundation



我们正在实现一种安全令牌服务(STS),该服务使用Windows Identity Foundation来提供基于声明的身份验证和授权。

我的问题实际上是关于最佳实践,以及我们应该如何处理给定身份的多个角色。

在用户成功登录后为其创建声明时,我们需要能够在返回依赖方之前将用户所属的角色添加到声明中。

Claim对象不接受字符串的集合,所以我想知道应该如何做到这一点。我能想到两种方法:

  1. 我可以添加ClaimTypes.Role类型的多个ClaimTypes.角色具有不同的值,这些值可以在另一边读取(我已经测试过了,这似乎没有任何错误)
  2. 我也可以将这些角色放在一个单独的声明中,并通过以下方式对它们进行划界:;或者类似的东西

我的问题实际上是上面哪一个更好,还是我错过了更好的东西?这两种解决方案都不是完美的,因为它需要在另一端进行解析。

谢谢,约翰·

如果使用ADFS作为STS,它会在声明中插入多个角色

例如

  • 。。。声明/角色编辑器
  • 。。。索赔/角色审批人

等。

这样做的优点是WIF可以使用标准的IsInRole构造等

相关内容

  • 没有找到相关文章

最新更新