自定义Saml2SecurityTokenHandler - 令牌序列化程序无法序列化

时间:2011-07-25 15:14:56

标签: wif saml

为简单起见,我实现了以下类:

public class CustomUserNamePasswordValidatorSecurityTokenHandler : UserNameSecurityTokenHandler {}

我已启用它配置(并启用了正确的configSection):

  <microsoft.identityModel>
    <service>
      <securityTokenHandlers>
        <clear />
        <add type="CustomUserNamePasswordValidatorSecurityTokenHandler" />       
      </securityTokenHandlers>
    </service>
  </microsoft.identityModel>

对我的STS执行实际的RP调用(在服务跟踪查看器中):

令牌序列化程序无法序列化“Microsoft.IdentityModel.Tokens.SessionSecurityToken”。如果这是自定义类型,则必须提供自定义序列化程序。

如果我注释掉配置(所以没有令牌处理程序适用),一切正常。如何提供此自定义序列化程序?

注意:在this thread中有几个引用该问题,但我没有看到解决方案。

1 个答案:

答案 0 :(得分:1)

删除securityTokenHandler部分上的<clear />就足够了(我编辑后可能会相应地回复other question,抱歉)。

<clear />删除所有默认注册处理程序(例如,对于SessionSecurityToken)。