你好!
我有一个WCF服务,它通过TCP运行,证书安全性如下:
<binding name="netTcpUserNameMessageSecurity" portSharingEnabled="True" transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions" hostNameComparisonMode="StrongWildcard" listenBacklog="10" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxConnections="10" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
<reliableSession ordered="true" inactivityTimeout="infinite" enabled="false" />
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="Windows" />
<message clientCredentialType="UserName" />
</security>
</binding>
在检查TraceViewer中的日志时,我可以看到数据是清晰的xml(没有加密)。 TraceViewer是解密数据还是我真的用clear xml发送我的所有数据,即使我使用证书安全性?
请注意我在同一台机器上运行服务和客户端,我正在分析的日志来自服务。
最诚挚的问候
答案 0 :(得分:1)
您正在使用在WCF外部进行的传输级别加密,因此您的邮件日志记录会以纯文本格式记录邮件。如果您使用消息级加密,那么WCF将从传输通道获取加密消息并将其记录(加密),然后它将在安全通道中处理该消息并记录(解密)。可以在消息日志记录配置中控制此日志记录 - logMessagesAtTransportLevel和logMessagesAtServiceLevel。