2

谁能告诉我如何创建一个自定义绑定,该绑定从 WCF 中的以下内容中重现完全相同的行为?

<netTcpBinding>
        <binding name="SecureTcp" >
          <security mode="TransportWithMessageCredential">
            <transport clientCredentialType="Certificate" />
            <message clientCredentialType="UserName" />
          </security>
        </binding>
      </netTcpBinding>

我发现的所有谷歌解决方案似乎都出于某种原因而不起作用。我找到了很多关于 httpTransport 的解决方案,但很少有关于 nettcptransport 的解决方案。

上面的配置目前正在运行,但我需要修改 maxClockSkew,而完成此操作的唯一方法是使用自定义绑定。

在此先感谢,布赖恩

4

1 回答 1

2

好吧,这就是我能想到的。它们的关键是 secureConversationBoostrap 部分中的 authenticationMode:

<binding name="CustomSecureTcp">
    <transactionFlow  />
    <security authenticationMode="SecureConversation"requireSecurityContextCancellation="true">
      <secureConversationBootstrap
        authenticationMode="UserNameOverTransport">
      </secureConversationBootstrap>
    </security>
    <binaryMessageEncoding/>
    <sslStreamSecurity requireClientCertificate="false" />
    <tcpTransport/>
  </binding>
 </customBinding>

编辑:我很确定 'transactionProtocol="OleTransactions"' 是不必要的

于 2009-09-11T16:20:43.033 回答