programing

VB.net : SSL을 사용하도록 설정한 상태에서 mysql( mariadb)에 연결할 수 없습니다.

newstyles 2023. 10. 31. 20:36

VB.net : SSL을 사용하도록 설정한 상태에서 mysql( mariadb)에 연결할 수 없습니다.

나는 내 윈폼 앱(VB.net , mysql 커넥터 8.0.26이 있는 W10 컴퓨터)을 SSL이 활성화된 Mariadb 데이터베이스(Debian 10에서)에 연결하려고 시도하고 있지만 많은 검색 후에도 해결책을 찾지 못했습니다.SSL을 사용하지 않으면 앱이 정상적으로 실행됩니다.

같은 컴퓨터에서 DBeaver를 가지고 있고 ssl 연결은 db로 잘 됩니다. (PEM 인증서)

내 연결 매개 변수가 잘못된 것 같은데 어디서...

여기서 예를 들어봤습니다. https://www.connectionstrings.com/mysql-connector-net-mysqlconnection/ssl-with-a-file-based-certificate/

아마도 .pfx 파일이 문제를 일으킬 수도 있습니다. 누구나 PEM 인증서로 예를 들어줄 수 있습니다.

내 앱에서 error is auth failed...

CertificateFile 경로가 무엇을 의미합니까? 컴퓨터 실행 앱에 D:\client.pfx를 저장했습니다.

stringCmd = "SELECT name FROM hosts WHERE state = '0' AND enabled = '1'"
stringConn = "server=xxx.xxx.xxx.xxx;user id=xxxxx;password=xxxxxxx;database=xxxxxxxxx;SSL Mode=Required;CertificateFile=D:\client.pfx;CertificatePassword=xxxxxxxxx"
myConn = New MySqlConnection(stringConn)
myCmd = New MySqlCommand(stringCmd, myConn)
myConn.Open()

스택 트레이스

편집 26/07:

윈도우 인증서 스토어에 인증서를 저장하고 사용하였습니다.Certificate Store Location=CurrentUser;SslMode=Required

(Oracle Mysql Data Connector 이전) 다른 Mysql Connector도 사용했습니다. https://github.com/mysql-net/MySqlConnector

McAfee에서 PEM 인증서를 차단하는 것 같습니다.

이제는 작동하지만 첫번째 연결을 시작하는 것이 매우 느립니다. 문제가 없는 것 같습니다. mysql 타임아웃이 증가했습니다.

많은 검색 끝에 해결책을 찾았습니다.저는 다른 관리자들을 돕고 싶습니다.이제 모든 커넥터가 정상적으로 작동합니다(Oracle 등).

수정해야 할 Windows 설정입니다.

  1. Win+R을 눌러 "Run" 대화상자를 엽니다.

  2. 따옴표 없이 "gpedit.msc"를 입력하고 Enter 키를 누릅니다.

  3. "로컬 그룹 정책 편집기"에서 "컴퓨터 구성", "관리 템플릿", "시스템", "인터넷 통신 관리"를 차례로 확장한 다음 "인터넷 통신 설정"을 클릭합니다.

  4. 세부 정보 패널에서 "자동 루트 인증서 업데이트 해제"를 두 번 클릭하고 "사용"을 클릭한 다음 "확인"을 클릭합니다.이 변경 내용은 재시작하지 않고도 즉시 적용됩니다.

언급URL : https://stackoverflow.com/questions/68510150/vb-net-cant-connect-to-mysql-mariadb-with-ssl-enabled