Azure SQL 数据库错误自 v12 升级后 TLS 握手失败
Azure SQL Database error TLS Handshake failed since v12 upgrade
我从今天早上开始收到这个错误,新的 v12 更新服务器/Azure SQL 数据库:
TLS Handshake failed: x509: certificate is valid for
tr12.northcentralus1-a.worker.database.windows.net,
*.tr12.northcentralus1-a.worker.database.windows.net, not [server-name].database.windows.net
在本地连接到 Azure SQL 数据库没有问题。在 Azure Web App 上无法建立连接。
与本地相同的连接字符串 - 在 v12 更新之前工作正常。
我正在使用这个 SQL 驱动程序 github.com/denisenkom/go-mssqldb/
任何指针,不相信我应该更改连接字符串?为什么它在本地而不是在 Azure Web 应用程序上工作。
编辑 1:刚刚尝试用 tr12 替换 [server-name].database.windows.net
...但是无法建立 tcp 连接。
编辑 2:这里是连接字符串,如果它有帮助的话,底线,为什么它在本地工作,相同的驱动程序包版本,我在本地构建可执行文件并通过 FTP 部署,所以不使用 Kudo 部署对于这个应用程序。一直在 A1 工作,直到 Azure 自动升级到 v12。
Server=[server-name].database.windows.net;Port=1433;Database=[dbname];User
ID=[user];Password=[pass];Trusted_Connection=False;Encrypt=True;Connection
Timeout=30;
可信连接应该是真的吗?或加密错误?将尝试更改那些以查看....
编辑 3:我查看了 Azure 门户的连接字符串,v12 似乎有这个新参数:TrustServerCertificate=False
但没有机会,没有解决问题
基于这个已关闭的问题,我将 TrustServerCertificate
从 False
更改为 True
并将此参数 hostNameInCertificate
添加到连接字符串,现在可以正常工作了:
https://github.com/denisenkom/go-mssqldb/issues/55
TrustServerCertificate=True;hostNameInCertificate=*.database.windows.net;
Azure 门户建议有 TrustServerCertificate=False
而没有 hostNameInCertificate
。
我从今天早上开始收到这个错误,新的 v12 更新服务器/Azure SQL 数据库:
TLS Handshake failed: x509: certificate is valid for tr12.northcentralus1-a.worker.database.windows.net, *.tr12.northcentralus1-a.worker.database.windows.net, not [server-name].database.windows.net
在本地连接到 Azure SQL 数据库没有问题。在 Azure Web App 上无法建立连接。
与本地相同的连接字符串 - 在 v12 更新之前工作正常。
我正在使用这个 SQL 驱动程序 github.com/denisenkom/go-mssqldb/
任何指针,不相信我应该更改连接字符串?为什么它在本地而不是在 Azure Web 应用程序上工作。
编辑 1:刚刚尝试用 tr12 替换 [server-name].database.windows.net
...但是无法建立 tcp 连接。
编辑 2:这里是连接字符串,如果它有帮助的话,底线,为什么它在本地工作,相同的驱动程序包版本,我在本地构建可执行文件并通过 FTP 部署,所以不使用 Kudo 部署对于这个应用程序。一直在 A1 工作,直到 Azure 自动升级到 v12。
Server=[server-name].database.windows.net;Port=1433;Database=[dbname];User ID=[user];Password=[pass];Trusted_Connection=False;Encrypt=True;Connection Timeout=30;
可信连接应该是真的吗?或加密错误?将尝试更改那些以查看....
编辑 3:我查看了 Azure 门户的连接字符串,v12 似乎有这个新参数:TrustServerCertificate=False
但没有机会,没有解决问题
基于这个已关闭的问题,我将 TrustServerCertificate
从 False
更改为 True
并将此参数 hostNameInCertificate
添加到连接字符串,现在可以正常工作了:
https://github.com/denisenkom/go-mssqldb/issues/55
TrustServerCertificate=True;hostNameInCertificate=*.database.windows.net;
Azure 门户建议有 TrustServerCertificate=False
而没有 hostNameInCertificate
。