【问题标题】:How can I add additional claims to a Security Token in WCF如何在 WCF 中向安全令牌添加其他声明
【发布时间】:2013-05-03 16:03:45
【问题描述】:

我有一个 WCF 服务,它通过 ws2007FederationHttpBinding 绑定获取安全令牌。这很好用,在我的服务中,我可以使用以下代码来获取有关在令牌中传递的用户的信息。

 var claimsPrincipal = ClaimsPrincipal.Current;
 var claimsIdentity = (ClaimsIdentity)claimsPrincipal.Identity;
 string s;
 foreach (var claim in claimsIdentity.Claims)
 {
         s += "\r\n\t" + claim.Type;
         s += "\r\n\t\t" + claim.Value;
     }
 }

我确定我在某处看到过一种方法,我可以在 WCF 管道中重写,以便在读入令牌时以及在将其保存到 ClaimsPrincipal.Current 之前向声明标识添加额外的自定义声明。举个例子,一旦 WCF 收到此令牌,我希望它转到自定义数据库查找用户名并添加一些额外的声明。

任何人都可以为我指明正确的方向,以实现这一目标吗?

谢谢

【问题讨论】:

    标签: wcf .net-4.5 wif


    【解决方案1】:

    派生自一个名为 ClaimsAuthenticationManager 的类并将其注册到 . Authenticate 方法将在令牌到达之后调用服务之前调用。您可以在此处更改/添加/删除声明。

    【讨论】:

      猜你喜欢
      • 2021-03-19
      • 2013-07-02
      • 1970-01-01
      • 2011-05-06
      • 2019-11-14
      • 2017-12-14
      • 2021-11-14
      • 2017-05-14
      • 2019-04-07
      相关资源
      最近更新 更多