고급 연결 설정

SSL/TLS, SSH 터널, 프록시를 사용한 보안 연결과 Connection Properties, Renamer 설정 방법을 안내합니다.

SSL/TLS 연결

데이터베이스와의 통신을 암호화하여 안전하게 연결합니다. 커넥션 설정 화면의 SSL/SSH 탭에서 SSL/TLS 토글을 활성화하면 설정 패널이 표시됩니다.

항목설명
모드SSL 연결 수준을 선택합니다. disable, prefer, require, verify-ca, verify-full 중 선택할 수 있습니다.
CA 인증서서버의 인증서를 검증하기 위한 CA(인증 기관) 인증서 파일입니다. .pem, .crt, .cer 등의 형식을 지원합니다.
클라이언트 인증서서버가 클라이언트 인증을 요구하는 경우 사용합니다. 업로드 버튼을 클릭하여 파일을 선택합니다.
클라이언트 키클라이언트 인증서에 대응하는 개인 키 파일입니다.
클라이언트 키 비밀번호클라이언트 키 파일이 암호화되어 있는 경우 해당 비밀번호를 입력합니다.
서버 인증서 검증서버가 제시하는 인증서의 유효성을 검증할지 여부입니다. 운영 환경에서는 활성화를 권장합니다.
Public Key Retrieval 허용MySQL/MariaDB에서 caching_sha2_password 인증 시 서버로부터 공개 키를 자동으로 가져올 수 있도록 허용합니다.

SSL 모드별 동작

모드암호화서버 인증서 검증설명
disable안 함안 함SSL을 사용하지 않습니다.
prefer가능하면안 함서버가 지원하면 SSL을 사용하고, 아니면 비암호화 연결합니다.
require필수안 함반드시 암호화 연결을 사용하지만, 서버 인증서는 검증하지 않습니다.
verify-ca필수CA만 검증서버 인증서가 신뢰할 수 있는 CA에서 발급되었는지 확인합니다.
verify-full필수CA + 호스트명CA 검증에 더해 인증서의 호스트명이 실제 서버와 일치하는지 확인합니다.
Tip

AWS RDS 등 클라우드 DB 연결 시에는 해당 클라우드 제공사의 CA 인증서를 다운로드하여 CA 인증서 항목에 업로드하세요.

SSH 터널 연결

SSH 터널을 통해 외부에서 직접 접속할 수 없는 데이터베이스에 안전하게 연결합니다. SSH Tunnel 토글을 활성화하면 설정 패널이 표시됩니다.

SSH 서버 정보

항목설명기본값
호스트SSH 서버(Bastion Host) 주소-
포트SSH 서비스 포트22
사용자SSH 접속 계정-

인증 방법

두 가지 인증 방식 중 하나를 선택합니다:

  • 비밀번호 — SSH 계정의 비밀번호를 직접 입력합니다.
  • Public Key — SSH 개인 키 파일(.pem)을 업로드합니다. 키 파일에 Passphrase가 설정된 경우 함께 입력합니다.

포트 포워딩

SSH 터널을 통한 포트 포워딩 설정입니다. 일반적으로 기본값을 사용하면 됩니다.

항목설명기본값
로컬 호스트로컬 바인딩 주소127.0.0.1
로컬 포트로컬 바인딩 포트 (0이면 자동 할당)0
원격 호스트SSH 서버에서 접근할 DB 호스트 (비워두면 커넥션의 호스트 사용)-
원격 포트SSH 서버에서 접근할 DB 포트 (0이면 커넥션의 포트 사용)0

고급 설정

항목설명기본값
Keep-Alive (초)SSH 연결 유지를 위한 패킷 전송 주기 (0이면 비활성)0
타임아웃 (초)SSH 연결 시도 제한 시간30
호스트 키 검증SSH 서버의 호스트 키를 검증할지 여부 (Strict Host Key Checking)비활성
Tip

AWS RDS 등 클라우드 DB에 접속할 때 Bastion Host를 SSH 터널로 사용하면 보안을 유지하면서 연결할 수 있습니다. 원격 호스트에 RDS 엔드포인트를, 원격 포트에 DB 포트를 입력하세요.

프록시 연결

프록시 서버를 경유하여 데이터베이스에 연결합니다. 프록시 토글을 활성화하면 설정 패널이 표시됩니다.

항목설명기본값
유형프록시 프로토콜: SOCKS5, SOCKS4, HTTPSOCKS5
호스트프록시 서버 주소-
포트프록시 서버 포트1080
사용자프록시 인증이 필요한 경우 사용자명-
비밀번호프록시 인증이 필요한 경우 비밀번호-

Connection Properties

JDBC 연결에 사용할 추가 속성을 key-value 형태로 지정합니다. 커넥션 설정 화면의 Properties 탭에서 설정할 수 있습니다.

입력 필드에 key와 value를 입력한 후 ADD 버튼을 클릭하면 속성이 추가됩니다. 추가된 속성은 하단 목록에 표시되며, 각 항목을 삭제할 수 있습니다.

사용 예시

keyvalue설명
connectTimeout10000연결 타임아웃 (밀리초)
useUnicodetrue유니코드 지원 활성화
characterEncodingutf8mb4문자 인코딩 설정
serverTimezoneAsia/Seoul서버 타임존 설정

참고: 각 DBMS별 기본 연결 속성은 자동으로 적용됩니다. 여기서 지정한 속성은 기본값을 덮어씁니다. 사용 가능한 속성은 각 JDBC 드라이버 문서를 참조하세요.

Renamer

Reverse Engineering(DB → ERD) 시 테이블명과 컬럼명을 자동으로 변환하는 규칙을 설정합니다. 커넥션 설정 화면의 Renamer 탭에서 설정할 수 있습니다.

Table Renamer와 Column Renamer를 각각 독립적으로 설정할 수 있으며, 각 Renamer에 여러 규칙을 추가하면 목록 순서대로 순차 적용됩니다.

Renamer 유형

regexp (정규표현식)

정규표현식을 사용하여 이름의 특정 패턴을 찾아 치환합니다.

항목설명
regexp찾을 패턴 (JavaScript 정규표현식)
replace치환할 문자열 (비워두면 매칭된 부분을 제거)

예시: 테이블명 접두사 제거

  • regexp: /^[^_]*_/, replace: (빈 값)
  • TBL_USERUSER, TB_ORDER_ITEMORDER_ITEM
case-format (대소문자 변환)

이름의 대소문자 형식을 변환합니다.

형식예시설명
SNAKEorder_item소문자 + 언더스코어
SNAKE_UPPERORDER_ITEM대문자 + 언더스코어
CAMELorderItemcamelCase (첫 글자 소문자)
CAMEL_UPPEROrderItemPascalCase (첫 글자 대문자)

활용 예시

DB 테이블명이 TBL_ORDER_ITEM이고, ERD에서는 OrderItem으로 표시하고 싶은 경우:

  1. Table Renamer에 regexp 규칙 추가: regexp /^[^_]*_/, replace (빈 값) → ORDER_ITEM
  2. Table Renamer에 case-format 규칙 추가: CAMEL_UPPEROrderItem

규칙은 위에서 아래 순서로 적용되며, 목록의 화살표 버튼으로 순서를 변경할 수 있습니다.

참고: Renamer는 Reverse Engineering 시에만 적용됩니다. Forward Engineering(ERD → DB)에서는 ERD에 표시된 이름이 그대로 사용됩니다.