如何解决由于 SSL/TLS 无法连接到 SQL Server
自从我将 Linux 服务器设置为托管 dotnet 应用程序后,我一直收到此错误,该应用程序尝试连接到在 Windows 环境(2012 版)上运行的数据库引擎 sql Server。 linux 服务器正在运行 .Net 5,我尝试在 /usr/local/share/ca-certificates
文件夹下创建证书,但到目前为止没有运气。我也将 Nginx 配置为使用 ssl:
server {
listen 80;
listen 443 ssl;
server_name 111.111.111.111;
ssl on;
ssl_certificate /usr/local/share/ca-certificates/cert.crt;
ssl_certificate_key /usr/local/share/ca-certificates/cert.key;
location /core/ {
proxy_pass https://127.0.0.1:7001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
//错误
A connection was successfully established with the server,but then an error occurred during the pre-login handshake. (provider: SSL Provider,error: 31 - Encryption(ssl/tls) handshake Failed)
//连接字符串
"Server=111.111.111.111\\TESTDB4;Initial Catalog=Core;User ID=demo;Password=password;Integrated Security=False;TrustServerCertificate=False;Trusted_Connection=True;Encrypt=True;"
解决方法
您需要在您的网络服务器上使用该证书。我不知道确切地在哪里添加它,但我想它应该包含在您的数据库连接字符串中
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。