0

我有一个简单的 REST Web 服务。我试图实现 SimpleWebToken 安全性,因此我创建了一个自定义 SecurityTokenHandler 并覆盖了 CanreadToken 和 ReadToken 然后我在 web.cofig 文件中注册了它。

<system.identityModel>
  <identityConfiguration>
    <securityTokenHandlers>
      <clear/>
      <add type="TestTokens.SimpleWebTokenHandler, TestTokens"></add>
    </securityTokenHandlers>    
 <audienceUris>
    <clear/>
    <add value="http://mytestrealm/"/>
 </audienceUris>
</identityConfiguration>

我认为 CanReadToken() 总是被调用,以确保可以处理传入的请求。为什么不叫它?

4

2 回答 2

0

IFAIK,此安全处理程序集合仅在 WIF 管道需要时调用。当您提供 WS-Trust 服务时,这可能是 pe。并非所有请求都调用它。

于 2013-10-15T13:42:06.760 回答
0

没错,WIF 管道可用于对用户进行身份验证。看起来您正在寻找更多的 WebAPI 解决方案。我建议使用 Jwt 代币,因为每个人似乎都倾向于这种方式。看看这里: http ://www.cloudidentity.com/blog/2013/06/06/the-json-web-token-handler-for-net-4-5-reaches-ga/

我们添加了一些有助于验证 WebAPI 的 jwt 的功能。

于 2013-10-15T15:13:22.080 回答