ログイン失敗に対する接続制限が無効な PostgreSQL

ログイン失敗の繰り返しに対する接続制限は、PostgreSQL へのパスワード推測の抑制に役立ちます。

説明

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

参考資料