TLS 연결 강제가 비활성화된 Azure PostgreSQL

Azure PostgreSQL 연결에 TLS를 요구하고 서버 인증서를 검증하세요.

설명

Azure PostgreSQL에서 TLS 연결 강제를 끄면 암호화되지 않은 연결이 허용될 수 있습니다. 과거 Single Server는 enforce_ssl을 사용했으며, 현재 Flexible Server는 require_secure_transport를 사용합니다.

잠재적 영향

평문으로 전송되는 데이터베이스 요청과 응답이 노출되거나 변조될 수 있습니다.

해결 방법

Flexible Server의 require_secure_transport를 on으로 유지하고, 클라이언트에서 TLS와 서버 인증서 검증을 사용하세요.

예시

변경 전은 지원이 종료된 Single Server의 과거 설정입니다. 변경 후는 이미 준비된 Flexible Server testserver의 매개변수를 변경하며, 서버나 데이터 이전은 별도로 수행해야 합니다.

변경 전

yaml
- name: PostgreSQL 서버 생성
  azure.azcollection.azure_rm_postgresqlserver:
    resource_group: myResourceGroup
    name: testserver
    location: eastus
    storage_mb: 5120
    enforce_ssl: no
    admin_username: cloudsa
    admin_password: "{{ postgresql_admin_password }}"
  no_log: true

변경 후

yaml
- name: PostgreSQL TLS 설정
  azure.azcollection.azure_rm_postgresqlflexibleconfiguration:
    resource_group: myResourceGroup
    server_name: testserver
    name: require_secure_transport
    value: "on"

참조