설명
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"