IAM パスワードの有効期限ポリシーの確認

有効期限の有無と期間を、組織の認証・復旧方針に合わせて決めてください。

説明

pw_max_age は IAM コンソールパスワードの最大使用期間を指定し、0 は自動失効を無効にする有効な設定です。組織で有効期限を要求する場合は、実際の設定と利用者の変更手順がその要件を満たす必要があります。このポリシーはアクセスキーを失効させません。

想定される影響

  • 適切な交換手順がないと、漏えいしたパスワードが使われ続けるおそれがあります。
  • 短すぎる期間や急なポリシー変更で、正常なサインインが妨げられる場合があります。

対処方法

  • 有効期限が必要な場合は、pw_max_age または別名の password_max_age に組織の基準に合う 1~1095 日を設定し、変更・復旧手順を用意してください。
  • MFA を維持し、漏えいしたパスワードは期限を待たずに直ちに変更してください。pw_expire は、期限切れ後に利用者が自分で変更できるかを制御する別の設定です。

例

変更前の二つのタスクは、最大期間の省略と 180 日設定の別案です。モジュールで pw_max_age を省略した場合の既定値は 0 です。有効期限を適用すると、すでにその期間を超えたパスワードも影響を受けます。

変更前

yaml
- name: IAM パスワードポリシーを設定する
  community.aws.iam_password_policy:
    state: present
    min_pw_length: 8
    require_symbols: false
    require_numbers: true
    require_uppercase: true
    require_lowercase: true
    allow_pw_change: true
    pw_reuse_prevent: 5
    pw_expire: false

- name: IAM パスワードポリシーの別の設定例
  community.aws.iam_password_policy:
    state: present
    min_pw_length: 8
    require_symbols: false
    require_numbers: true
    require_uppercase: true
    require_lowercase: true
    allow_pw_change: true
    pw_max_age: 180
    pw_reuse_prevent: 5
    pw_expire: false

変更後

yaml
- name: IAM パスワードポリシーを設定する
  community.aws.iam_password_policy:
    state: present
    min_pw_length: 8
    require_symbols: false
    require_numbers: true
    require_uppercase: true
    require_lowercase: true
    allow_pw_change: true
    pw_max_age: 20
    pw_reuse_prevent: 5
    pw_expire: false

補足:

  • 変更前: 最初のタスクは自動失効を設定せず、次は 180 日を指定しています。適切かどうかは組織の方針によります。
  • 変更後: 最大期間を 20 日にしています。例示用の値であり、すべての組織への推奨ではありません。pw_expire: false でも、この有効期限はなくなりません。

参考資料