获取HTTPS以使用WCF

时间:2017-05-15 20:06:41

标签: c# wcf ssl

我正在尝试连接到wcf服务。我无法访问它。它有凭据和SSL(https)。

        try
        {
            var stub = new ServiceReference1.ServiceClient();
            stub.ClientCredentials.UserName.UserName = "user";
            stub.ClientCredentials.UserName.Password = "pass";
            stub.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.PeerOrChainTrust;
            stub.getData("Test");
        }
        catch (Exception ee)
        {
        }

的app.config:

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/>
</startup>
<system.serviceModel>
<bindings>
    <basicHttpBinding>
        <binding name="BasicHttpBinding_IService">
            <security mode="Transport">
                <transport clientCredentialType="Basic" proxyCredentialType="Basic" />
            </security>
        </binding>
    </basicHttpBinding>
</bindings>
<client>
    <endpoint address="https://address/path/service.svc"
        binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService"
        contract="ServiceReference1.IService" name="BasicHttpBinding_IService" />
</client>
</system.serviceModel>

我得到的错误:

https://address/path/Service.svc发出HTTP请求时发生错误。这应该是由于在HTTPS情况下未使用HTTP.SYS正确配置服务器证书。这也可能是由于客户端和服务器之间的安全绑定不匹配造成的。

我做错了什么?我需要添加到app.config的东西吗?我猜证书的东西不好???

0 个答案:

没有答案