ADFS 2.0 .net 3.5 でパッシブ フェデレーション用に別の Saml2SecurityTokenHandler を構成する方法

ADFS 2.0 .net 3.5 でパッシブ フェデレーション用に別の Saml2SecurityTokenHandler を構成する方法

ADFS 2.0 サーバー上のパッシブ フェデレーション用に別の Saml2SecurityTokenHandler (Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenHandler) クラスを構成するにはどうすればよいですか?

現在、次の構成を試しています:

<configuration>
  <configSections>
<section name="microsoft.identityModel" type="Microsoft.IdentityModel.Configuration.MicrosoftIdentityModelSection, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
   ...
  </configSections>
  <microsoft.identityModel>
    <service>       
      <securityTokenHandlers>
        <remove type="Microsoft.IdentityModel.Tokens.Saml2.Saml2SecurityTokenHandler, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        <remove type="Microsoft.IdentityModel.Tokens.Saml11.Saml11SecurityTokenHandler, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        <add type="ClassLibrary1.Class1, ClassLibrary1" />
      </securityTokenHandlers>
    </service>
  </microsoft.identityModel>
  ...
</configuration>

<remove> 要素を削除すると、ADFS 2.0 Windows サービスの起動時に例外が発生します (同じキーを持つ項目が既に追加されています)。そのため、構成が正常に読み込まれたことが確実にわかります。ただし、パッシブ フェデレーションを使用する場合、デフォルトの MSISSaml2TokenHandler が引き続き使用されていることがわかります。

System.IdentityModel.Tokens.SecurityTokenException: MSIS3120: SubjectConfirmationData の受信者が間違っています。'https://secure.mydomain.com/adfs/ls/' しかし、受け取ったもの: 'https://secure.proxy.mydomain.com/adfs/ls/'。 でMicrosoft.IdentityServer.Service.Tokens.MSISSaml2TokenHandler.ValidateConfirmationData(Saml2SubjectConfirmationData 確認データ)

msdnドキュメントを読むとき(http://msdn.microsoft.com/en-us/library/gg638730.aspx) 適切に構成されているようです。名前のない <service> 要素はデフォルトの構成であり、パッシブ フェデレーション シナリオで使用されます。

助けてください!これは数週間にわたる作業の最後のハードルです。

関連情報