如何配置Kentor.AuthServices以使用WIF中的颁发者注册表?具体来说,要根据指纹进行检查,如下例所示:
<system.identityModel>
<identityConfiguration>
<securityTokenHandlers>
<securityTokenHandlerConfiguration>
<issuerNameRegistry type="System.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089">
<trustedIssuers>
<add thumbprint="1111111111111" name="http://some.domain/adfs/services/trust" />
</trustedIssuers>
</issuerNameRegistry>
<certificateValidation certificateValidationMode="None"/>
</securityTokenHandlerConfiguration>
</securityTokenHandlers>
</identityConfiguration>
</system.identityModel>
我尝试了这个(在发布之前删除了除<identityProviders>
元素之外的所有内容):
<kentor.authServices>
<identityProviders>
<add entityId="http://some.domain/adfs/services/trust" destinationUrl="https://some.domain/adfs/ls" allowUnsolicitedAuthnResponse="true" binding="HttpPost">
<signingCertificate findValue="1111111111111" x509FindType="FindByThumbprint" />
</add>
</identityProviders>
</kentor.authServices>
但是这给了我&#34;在Idp http://some.domain/adfs/services/trust&#34;
上缺少签名证书配置有没有办法在Kentor中做相同的工作,或者(更好的是)有没有办法将这个现有的WIF配置提供给Kentor?
答案 0 :(得分:2)
不,目前(版本0.12.0),无法设置自己的IssuerNameRegistry
。然而,这是我正在研究的问题,作为#145的一部分。
然而,更改并非易事,因为它不仅仅是将已配置的IssuerNameRegistry
提供给WIF,因为这仅涵盖了断言本身已签名的情况。如果签名位于消息级别,则验证由AuthServices本身完成,因此还必须更改代码以使用IssuerNameRegistry
。