我目前正在尝试使用Thinktecture IdentityServer作为我的STS(令牌发行者)。当我从IdentityServer获回加密的令牌时,如何解密令牌以便我可以从中推断出声明信息?
谢谢你的帮助。
答案 0 :(得分:1)
如果配置正确,WIF应该为您处理解密,然后您应该能够访问当前声明主体的声明。
依赖方WIF配置部分,用于定义应使用哪个证书进行解密:
<federationConfiguration>
<serviceCertificate>
<certificateReference findValue="the-encryption-certificate-thumbprint" storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint" />
</serviceCertificate>
</federationConfiguration>
从上下文访问声明的代码:
HttpContext.Current.User.Identity.Name
或者
Claim myClaim = (HttpContext.Current.User as ClaimsPrincipal).FindFirst("http://identityserver.thinktecture.com/claims/profileclaims/myclaim");