인프런 커뮤니티 질문&답변

임태현님의 프로필 이미지
임태현

작성한 질문수

Blazor로 빠르게 홈페이지 만들기 ASP.NET core 6

Blazor에서 SQL 서버를 사용하기 위한 사전 작업

update-database 에러

작성

·

1.1K

·

수정됨

0

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 - 신뢰되지 않은 기관에서 인증서 체인을 발급했습니다.)

---> System.ComponentModel.Win32Exception (0x80090325): 신뢰되지 않은 기관에서 인증서 체인을 발급했습니다.

이런 에러가 발생하는데 원인을 알수있을까요 ?

구글링으로 찾아보고 TrustServerCertificate=True을 추가하라는 말이 있어서 추가하면 열, 매개 변수 또는 변수 #13: 데이터 형식 datetimeoffset을(를) 찾을 수 없습니다.

이렇게 나옵니다.

강사님이 설치하셨던 2019가 아니고 2012버전을 사용하고있고, 회사에서 사용하는 pc라 포트를 51433으로 변경했습니다.

답변 1

0

백승철님의 프로필 이미지
백승철
지식공유자

보통 비주얼 스튜디오로 개발을 할 때 인증서 문제가 생기는 경우는 2가지가 있습니다.

  1. HTTPS 개발을 위한 프로젝트 SSL 인증서 문제

  2. ASP.NET 프로젝트와 MS SQL 간의 SSL 인증서 연결 문제

보내주신 사진으로 보았을 때는 2번에 해당 되는 사항인 것 같습니다. 1번과 2번 모두다 프로젝트는 그대로 둔 상태에서 닷넷을 업그레이드 하거나 비주얼 스튜디오 또는 mssql을 업데이트 할 때 생기는 것으로 알고 있습니다. 포트도 가능성이 있습니다.
기존에 있던 로컬 인증서를 삭제하고 다시 재발급을 받는 과정이 필요할 것으로 생각됩니다. 해당 과정은

https://learn.microsoft.com/en-us/troubleshoot/developer/visualstudio/installation/warnings-untrusted-certificate#method-2-configure-computers-to-trust-the-iis-express-certificate

여기를 참고해 주세요.

*trustcertificationtrue 는 아마 임시방편일 것으로 생각됩니다. 어렵지만 로컬에 있는 인증서를 재등록하는 것이 근본적인 해결책일 것 같고 비주얼 스튜디오에서 연결 확인이 어렵다면 ssms 에서 확인해 보셔도 됩니다. mssql 서버 매니지먼트 스튜디오를 설치해주시고 연결 -> 옵션 -> 연결 속성에서 해당 부분을 체크하고 연결 시도해 보세요. 이 부분이 trustcertificationtrue 와 동일합니다.

image

그리고... datetimeoffset의 경우는 인증서 문제랑은 전혀 별개의 것으로 생각됩니다. 자세한 내용은 코드를 확인해 봐야 알겠지만 해당 코드는 꽤 이전 .NET 부터 지원했던 것이라 버전 문제는 아닐 것 같습니다. .NET core 1 때부터 지원을 했었군요!
image

오타나 대소문자 구별, 잘못된 선언 등을 확인해 보셔야 할 것 같습니다.

임태현님의 프로필 이미지
임태현

작성한 질문수

질문하기