説明
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 バージョンで対応していることと、正規の接続が成功することを確認してください。