2010-07-22 57 views
4

无处不在的示例显示如何通过WCF执行Kerberos令牌配置文件1.1,但它使用消息安全性。实际上,WCF实现默认为签名+加密。我有使用SSL的要求,而是使用KTP进行身份验证和签名,而不是加密。可能通过WCF通过SSL使用Kerberos令牌配置文件?

如果我将模式更改为TransportWithMessageCredential,它不再签署请求。任何人都知道这是可能的,理想情况下,任何配置?谢谢

+0

更新:我一直在读那它似乎可能不支持通过wsHttpBinding,所以我创建一个customBinding,做我所需要的 - 但被证明是非常棘手和乏味。如果我再取得进展,我会在这里回复。 – 2010-07-22 18:56:31

回答

2

Ugg。留给我来让事情过分复杂化!我尝试了一些bajillion设置的组合,并最终开始将它们设置为简单。

首先,这里是customBinding等价的wsHttpBinding的,开箱即用:

http://webservices20.blogspot.com/2009/04/wcf-custombinding-equivalent-to.html

从那里,我开始建立,和下面的配置最终做到了。我将ServiceContract属性指定为仅签名。然后在配置中,“Kerberos”模式负责Kerberos令牌配置文件,并且httpsTransport负责SSL!那样做了!也许这可以帮助别人的未来:

<customBinding> 
    <binding name="KerberosTokenProfileSignAndSslBinding"> 
     <security authenticationMode="Kerberos" /> 
     <httpsTransport /> 
    </binding> 
<customBinding> 

编辑:我最后写一篇博客文章的详细信息,万一有人读这需要他们 - http://robertseder.spaces.live.com/blog/cns!587F478B9240C01E!773.entry