Microsoft MVP성태의 닷넷 이야기
오류 유형: 857. Microsoft.Data.SqlClient.SqlException - 0x80131904 [링크 복사], [링크+제목 복사],
조회: 14765
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 3개 있습니다.)

Microsoft.Data.SqlClient.SqlException - 0x80131904

다음과 같이 연결 문자열을 주면,

Password=...;Integrated Security=false;User ID=...;Initial Catalog=...;Data Source=192.168.100.50;

현재의 Microsoft.Data.SqlClient에서는 이런 예외가 발생합니다.

Unhandled exception. Microsoft.Data.SqlClient.SqlException (0x80131904): A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.)
---> System.ComponentModel.Win32Exception (0x80090325): The certificate chain was issued by an authority that is not trusted.
at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
...[생략]...
at Microsoft.Data.SqlClient.SqlConnection.Open()
at ConsoleApp1.Program.Main(String[] args) in C:\temp\ConsoleApp1\ConsoleApp1\Program.cs:line 13


윈도우 환경에서 위와 같이 오류가 발생하는데요, "The certificate chain was issued by an authority ...." 메시지를 통해 SSL 통신 문제라는 것을 알 수 있고, 아래의 문서에 따른 해결책을 따르면 됩니다.

"The certificate chain was issued by an authority that is not trusted" error after upgrading SNAC applications
; https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/connect/certificate-chain-not-trusted

가령, 3번째 방법을 택한다면 연결 문자열에 TrustServerCertificate 설정만 추가하면 됩니다.

TrustServerCertificate=true;Password=...;Integrated Security=false;User ID=...;Initial Catalog=...;Data Source=192.168.100.50

그런데, (버전 차이일지 모르겠지만) 제가 가진 Container의 리눅스 환경에서는 오류 메시지가 다음과 같이 나옵니다.

Unhandled exception. Microsoft.Data.SqlClient.SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 40 - Could not open a connection to SQL Server: Could not open a connection to SQL Server)


그래서 얼핏 오류 메시지만 봐서는 서버로의 연결에 문제가 있다고 잘못 생각할 수 있습니다. ^^;




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 5/8/2023]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 166  167  168  [169]  170  171  172  173  174  175  176  177  178  179  180  ...
NoWriterDateCnt.TitleFile(s)
908정성태8/17/201028129개발 환경 구성: 82. Windows Virtual PC의 네트워크 유형 (3)
907정성태8/14/201025585개발 환경 구성: 81. Windows Virtual PC의 네트워크 유형 (2)
906정성태8/13/201033257개발 환경 구성: 80. Windows Virtual PC의 네트워크 유형 (1)
905정성태8/8/201037366Team Foundation Server: 39. 배치 파일로 팀 빌드 구성 [2]파일 다운로드1
904정성태8/8/201039569오류 유형: 101. SignTool Error: No certificates were found that met all the given criteria. [2]
903정성태8/6/201036519Team Foundation Server: 38. TFS 소스 코드 관리 기능 (4) - Branch
902정성태8/5/201028926Team Foundation Server: 37. TFS 2010의 소스 서버 수작업 구성
901정성태8/4/201028124Team Foundation Server: 36. TFS 소스 코드 관리 기능 (3) - Label
900정성태8/3/201031049Team Foundation Server: 35. TFS 소스 코드 관리 기능 (2) - Shelveset
899정성태8/2/201032595Team Foundation Server: 34. TFS 소스 코드 관리 기능 (1) - Changeset
898정성태7/31/201032753.NET Framework: 182. WCF의 InactivityTimeout [1]파일 다운로드1
897정성태7/26/201133705.NET Framework: 181. AssemblyVersion, AssemblyFileVersion, AssemblyInformationalVersion [4]
896정성태7/25/201040758.NET Framework: 180. C# Singleton 인스턴스 생성 [2]
895정성태7/25/201024443VS.NET IDE: 68. Visual Studio 2010 - .NET 1.1 원격 디버깅
894정성태7/25/201030365오류 유형: 100. Could not find the Database Engine startup handle. [1]
893정성태7/25/201031290오류 유형: 99. .NET 4.0 설치된 윈도우 7에서 SQL Server 2008 R2 설치 오류
892정성태7/9/201032437오류 유형: 98. 영문 윈도우에 한글 SQL Server 2008 R2 설치할 때 오류 [4]
891정성태7/8/201028909오류 유형: 97. MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{...}'. Error code: 1605. [2]
889정성태7/5/201030760.NET Framework: 179. Dictionary.Get(A) 대신 Dictionary.Get(A.GetHashCode())를 사용해서는 안 되는 이유 [1]
888정성태6/30/201028338오류 유형: 96. Hyper-V 연결 오류 - A connection will not be made because credentials may not be sent to the remote computer
887정성태6/23/201038216개발 환경 구성: 79. Hyper-V의 가상 머신에서 소리 재생 방법 [2]
886정성태6/23/201026195제니퍼 .NET: 14. ASMX, WCF 호출 모니터링 및 누수 확인
885정성태6/20/201028112개발 환경 구성: 78. COM+ 서버에서 COM+ 서버를 호출하는 방법
884정성태6/20/201030799제니퍼 .NET: 13. COM+ 서버 모니터링 [2]
883정성태6/18/201032787개발 환경 구성: 77. Appinit_Dlls로 구현한 환경 변수 설정 DLL [5]파일 다운로드1
882정성태6/17/201035774개발 환경 구성: 76. JKS(Java Key Store)에 저장된 인증서를 ActiveX 코드 서명에 사용하는 방법 [1]
... 166  167  168  [169]  170  171  172  173  174  175  176  177  178  179  180  ...