Our .Net Code base is set up to target .Net 4.6.2 which supports TLS1.2 by default. We are using the AuthorizeNet Nuget Package 1.9.2 (latest) to communicate with Authorize.Net. I believe the Nuget package is not yet upgraded to support TLS1.2. This is affecting our Dev, Test and UAT environments very severely right now. How soon can we expect a new upgraded package? Is there a workaraound that we can use for the time being?
I tried the solution described here and it seemed to solve the issue:
I am targeting .NET 4.5.0 and adding this line of code:
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
solved the issue. I added it right before the request to get the AuthNetHostToken. Now I just gotta figure out where it's actually supposed to go in order for all the AuthNet API requests to use TLS1.2
I also updated to the latest AuthNetSDK package available via NugetPackageManager.
Another developer on GitHub suggested you can update your code to specify the default and fallback TLS versions, assuming you're using .NET 4.5.2 or greater: https://github.com/AuthorizeNet/sdk-dotnet/issues/178
Thanks for the solution. That worked. But I would still like to know if there is a chance that this would be fixed in the Nuget Package itself. I see that there is a PR up for it. (https://github.com/AuthorizeNet/sdk-dotnet/pull/177) Just wondering if there would be a updated package with the TLS fix up anytime soon.