手动创建和验证SessionSecurityToken

时间:2016-08-11 11:34:15

标签: c# asp.net wif ws-federation

我的网站是在Microsoft身份模型联合身份验证下运行的,最近我一直在尝试在其中一个中创建API并从另一个中使用它,我遇到的基本问题是此身份不会&# 39;没有模仿选项,因此我无法确定通话是否安全。

因此我目前正在尝试手动生成并在标头中传递令牌,这就是我最终在客户端做的事情

var claimsPrincipal = new ClaimsPrincipal();
claimsPrincipal.Identities.Add(new ClaimsIdentity());
IClaimsIdentity ci = (claimsPrincipal.Identity as IClaimsIdentity);
ci.Claims.Add(new Claim(ClaimTypes.Name, User.Identity.Name));

var token = FederatedAuthentication.SessionAuthenticationModule.CreateSessionSecurityToken(claimsPrincipal,"Api Test", DateTime.UtcNow, DateTime.UtcNow.AddMinutes(30), true);

using(var client = new WebClient())
{
    client.Headers.Add("Authentication-Token",token.Id);
}

但我无法找到一种方法来检查令牌在API中是否合法。

0 个答案:

没有答案