MariaDB Connector/J를 사용하여 MySQL에 SSL 연결을 설정하는 방법
다음 지침에 따라 생성된 인증서와 SSL을 사용하여 MySQL 5.7.10을 사용하고 있습니다.Java 7 응용 프로그램은 MariaDB Connector/J를 사용하며 JDBC URL에서 SSL이 활성화됩니다.
jdbc:mysql://dbservername:3306/dbname?useSSL=true&trustServerCertificate=false
단, 다음과 같이 접속에 실패합니다.
Caused by: java.lang.RuntimeException: Could not generate DH keypair
...
Caused by: java.security.InvalidAlgorithmParameterException: Prime size must be multiple of
64, and can only range from 512 to 1024 (inclusive)
이 블로그 투고에 따르면 이 문제는 다음 방법으로 해결할 수 있습니다.
- Java 8(또는 그 이후)로의 업그레이드.
- MySQL 5.7.5(또는 그 이전)로 다운그레이드합니다.
- Diffie-Hellman(DH) 암호 제외.
(1) 현재 진행 중인 프로젝트에는 옵션이 없습니다.(2) 제한적이고 향후 MySQL 개선에 접근할 수 없게 됩니다.(3) 가장 유망한 것 같습니다.MySQL connector/J에서 동작하는 것을 확인했지만 안타깝게도 GPL 라이선스로 인해 프로젝트에서 사용할 수 없습니다.
MariaDB Connector/J는 다음과 같은 속성을 가지고 있습니까?enabledSSLCipherSuites
아니면 접속할 때 DH 암호를 사용하지 않도록 하는 다른 방법이 있나요?
요청된 기능 옵션이 MariaDB Connector/J 버전 1.5.0-RC에 구현되었습니다.
enabledSslProtocolSuites 특정 TLS 버전 세트(콤마 구분 목록)에 TLS/SSL 프로토콜을 적용합니다.예: "TLSv1, TLSv1.1, TLSv1.2" 기본값: TLSv1, TLSv1.1.1.5.0 이후
enabledSslCipherSuites TLS/SSL 암호(콤마 구분 목록)를 사용합니다.예: "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_DSS_WITH_AES_256_GCM_SHA384" 기본값: JRE 암호를 사용합니다.1.5.0 이후
(아래 질문, 릴리즈 노트 및 이 Jira 티켓을 참조하십시오.)
언급URL : https://stackoverflow.com/questions/37394016/how-to-make-an-ssl-connection-to-mysql-using-mariadb-connector-j
'programing' 카테고리의 다른 글
다차원 배열의 하위 배열에 있는 특정 키에 특정 값이 있는지 확인합니다. (0) | 2022.11.24 |
---|---|
com.jcraft.jsch를 클릭합니다.JSch Exception:알 수 없는 호스트 키 (0) | 2022.11.24 |
XAMPP InnoDB에서 MySQL을 시작할 때 오류 발생 (0) | 2022.11.06 |
다중 테이블 MariaDB 데이터베이스 파티셔닝 솔루션 (0) | 2022.11.06 |
어떤 Gradle 스크립트를 다른 스크립트로 Import하려면 어떻게 해야 합니까? (0) | 2022.11.06 |