설명
Azure PostgreSQL의 연결 제한 기능은 같은 IP에서 잘못된 암호로 로그인이 반복해서 실패할 때 연결을 일시적으로 제한합니다. 이 보호가 없으면 반복적인 인증 시도를 억제하는 수단이 줄어듭니다. 전체 동시 연결 수를 제한하거나 모든 서비스 거부 공격을 방지하는 기능은 아닙니다.
잠재적 영향
- 암호 추측과 반복적인 실패 요청이 지속될 수 있습니다.
- 과도한 인증 요청으로 운영 부하와 조사 부담이 증가할 수 있습니다.
해결 방법
- Flexible Server의 지원되는 매개변수에서
connection_throttle.enable을on으로 설정하세요. - 네트워크 접근을 제한하고 인증 실패를 모니터링하세요. 일반 연결 수는 연결 풀과 별도의 용량 설정으로 관리하세요.
- 잘못된 암호를 반복 사용하는 클라이언트를 수정하고, 같은 IP를 공유하는 정상 사용자의 영향도 확인하세요.
예시
첫 예제는 2025년 3월 28일 종료된 Single Server의 기존 매개변수입니다. 두 번째는 기존 Flexible Server와 azure.azcollection 3.18.0 이상을 사용합니다.
변경 전
yaml
- name: PostgreSQL 설정 변경
azure.azcollection.azure_rm_postgresqlconfiguration:
resource_group: myResourceGroup
server_name: myServer
name: connection_throttling
value: "off"
실패한 로그인에 대한 기존 연결 제한을 끕니다. 이 값은 일반적인 최대 동시 연결 수를 지정하지 않습니다.
변경 후
yaml
- name: PostgreSQL 설정 변경
azure.azcollection.azure_rm_postgresqlflexibleconfiguration:
resource_group: myResourceGroup
server_name: myServer
name: connection_throttle.enable
value: "on"
Flexible Server의 IP별 로그인 실패 제한을 활성화합니다. 사용 중인 PostgreSQL 버전에서 매개변수를 지원하는지 확인하고 정상 접속도 검증하세요.