簡體   English   中英

如何配置 wcf 服務客戶端以在消息級別同時使用證書和用戶名憑據?

[英]How to configure a wcf service client to use both certificate and username credentials at the message level?

我使用的 WCF 在消息級別需要用戶名和證書身份驗證。 有沒有辦法通過代碼或更改 app.config 文件將客戶端配置為使用證書和用戶名身份驗證?

編輯:用戶名和證書憑據必須在發送到單個端點的單個消息中,而不是一個端點需要用戶名憑據而另一個端點需要證書身份驗證

這是我添加服務引用時自動生成的 app.config 文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
    </startup>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="BasicHttpBinding_IEfmUserService" messageEncoding="Mtom">
                    <security mode="TransportWithMessageCredential">
                        <message clientCredentialType="Certificate" />
                    </security>
                </binding>
                <binding name="BasicHttpBinding_IEfmUserService1" messageEncoding="Mtom">
                    <security mode="Transport" />
                </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="endpointaddress.svc"
                binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IEfmUserService"
                contract="EfmUserService.IEfmUserService" name="BasicHttpBinding_IEfmUserService" />
        </client>
    </system.serviceModel>
</configuration>

對於相同的綁定類型,您可能有不同的綁定配置,並根據您的需要將相同的綁定關聯到不同的端點。試試這個鏈接,也許它會解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM