【发布时间】:2021-12-11 00:24:11
【问题描述】:
我目前在Docker 上运行.Net Core 3.1 应用程序(使用Nginx 作为反向代理),在 EC2 实例上。
我有一个本地数据库(以及我的 VPC 和我的本地路由器之间的 VPN 隧道),但是当我尝试连接到数据库时,我遇到了一个错误,我找不到在哪里它来自以及如何解决它。
这是堆栈跟踪:
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | fail: Microsoft.EntityFrameworkCore.Database.Connection[20004]
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | An error occurred using the connection to database 'TEST_MANHATTAN' on server '192.168.1.7\sql2012'.
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | fail: Microsoft.EntityFrameworkCore.Query[10100]
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | An exception occurred while iterating over the results of a query for context type 'ManhattanPlatform.Areas.Identity.Data.OnPremiseContext'.
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | Microsoft.Data.SqlClient.SqlException (0x80131904): A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 35 - An internal exception was caught)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception.
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ---> Interop+OpenSsl+SslException: SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL.
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ---> Interop+Crypto+OpenSslCryptographicException: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | --- End of inner exception stack trace ---
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Interop.OpenSsl.DoSslHandshake(SafeSslHandle context, Byte[] recvBuf, Int32 recvOffset, Int32 recvCount, Byte[]& sendBuf, Int32& sendCount)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStreamPal.HandshakeInternal(SafeFreeCredentials credential, SafeDeleteContext& context, ArraySegment`1 inputBuffer, Byte[]& outputBuffer, SslAuthenticationOptions sslAuthenticationOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | --- End of inner exception stack trace ---
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.ProcessAuthentication(LazyAsyncResult lazyResult, CancellationToken cancellationToken)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.AuthenticateAsClient(SslClientAuthenticationOptions sslClientAuthenticationOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.AuthenticateAsClient(String targetHost, X509CertificateCollection clientCertificates, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.AuthenticateAsClient(String targetHost)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SNI.SNITCPHandle.EnableSsl(UInt32 options)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.TdsParser.ConsumePreLoginHandshake(Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, Boolean& marsCapable, Boolean& fedAuthRequired)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, Boolean withFailover, SqlAuthenticationMethod authType, SqlAuthenticationProviderManager sqlAuthProviderManager)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool, SqlAuthenticationProviderManager sqlAuthProviderManager)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlConnection.Open()
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.InitializeReader(DbContext _, Boolean result)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.MoveNext()
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ClientConnectionId:8e308087-4105-4b69-bd4b-ae51089678c4
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | Microsoft.Data.SqlClient.SqlException (0x80131904): A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 35 - An internal exception was caught)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception.
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ---> Interop+OpenSsl+SslException: SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL.
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ---> Interop+Crypto+OpenSslCryptographicException: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | --- End of inner exception stack trace ---
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Interop.OpenSsl.DoSslHandshake(SafeSslHandle context, Byte[] recvBuf, Int32 recvOffset, Int32 recvCount, Byte[]& sendBuf, Int32& sendCount)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStreamPal.HandshakeInternal(SafeFreeCredentials credential, SafeDeleteContext& context, ArraySegment`1 inputBuffer, Byte[]& outputBuffer, SslAuthenticationOptions sslAuthenticationOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | --- End of inner exception stack trace ---
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.ProcessAuthentication(LazyAsyncResult lazyResult, CancellationToken cancellationToken)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.AuthenticateAsClient(SslClientAuthenticationOptions sslClientAuthenticationOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.AuthenticateAsClient(String targetHost, X509CertificateCollection clientCertificates, SslProtocols enabledSslProtocols, Boolean checkCertificateRevocation)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at System.Net.Security.SslStream.AuthenticateAsClient(String targetHost)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SNI.SNITCPHandle.EnableSsl(UInt32 options)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.TdsParser.ConsumePreLoginHandshake(Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, Boolean& marsCapable, Boolean& fedAuthRequired)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, Boolean withFailover, SqlAuthenticationMethod authType, SqlAuthenticationProviderManager sqlAuthProviderManager)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, Boolean withFailover)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString connectionOptions, SqlCredential credential, TimeoutTimer timeout)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(TimeoutTimer timeout, SqlConnectionString connectionOptions, SqlCredential credential, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, Boolean applyTransientFaultHandling, String accessToken, DbConnectionPool pool, SqlAuthenticationProviderManager sqlAuthProviderManager)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.Data.SqlClient.SqlConnection.Open()
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.InitializeReader(DbContext _, Boolean result)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.MoveNext()
Base_backend.1.l4u8imxbglsf@ip-192-168-100-188 | ClientConnectionId:8e308087-4105-4b69-bd4b-ae51089678c4
【问题讨论】:
-
您能分享您的连接字符串(敏感信息已编辑)吗?也许你需要
TrustServerCertificate=True设置? -
这是我的连接字符串: "OnPremiseContextConnection": "Server=192.168.1.7\\sql2012;Database=[XXXX];User id=[XXXX];Password=[XXXX]TrustServerCertificate=True; "但正如你所见,我已经尝试过 TrustServerCertificate(大声笑),但似乎一切都来自自 2018 年以来未更新的 SQL Server(因此它不支持 TLSv1.2)
-
您的评论中可能存在复制粘贴错误,但密码和
TrustServerCertificate之间缺少分号。 -
是的,我误删了,对不起^^'
标签: sql-server amazon-web-services docker asp.net-core