将.net客户端升级到TSL1.2以与安全服务进行通信

时间:2015-09-08 10:36:05

标签: c# web-services rest security ssl

我正试图从asp.net客户端获得一个宁静的服务。我正在制作Web请求并设置代理和其他参数。 Web服务器将只接受安全的密码套件集,基本上是最新的OpenSSL补丁版本。

这是代码:

            //string acadiaPath = "https://Test/AP/get?v=1&sk=0";
            //string User = "****";
            //string Pword = "******";

            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;

            System.Net.WebRequest request = System.Net.HttpWebRequest.Create(acadiaPath);

            request.Method = "GET";

            request.UseDefaultCredentials = true;

            request.ContentLength = 0;

            Uri newUri = new Uri(proxyAddress);

            myProxy.Address = newUri;

            myProxy.Credentials = CredentialCache.DefaultCredentials;

            request.Proxy = myProxy;

            request.Credentials = new NetworkCredential(acadiaUser, acadiaPword);

            System.Net.HttpWebResponse response = request.GetResponse() as System.Net.HttpWebResponse;

            Stream objResponseStream = response.GetResponseStream();

            StreamReader reader = new StreamReader(objResponseStream);

            string objResponseString = reader.ReadToEnd();

            MessageBox.Show(objResponseStream.ToString());

但是没有通过以下错误:

“基础连接已关闭:发送时发生意外错误。”

原因是:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;

这不提供TSL1.2,因为我的客户端代码是4.0。

如果不从我的c#代码升级到4.5,我如何使用TSL1.2。我的意思是使用4.5提供的system.net DLL或任何其他东西

任何建议?

0 个答案:

没有答案