IAM 利用者のパスワード変更権限の確認

IAM 利用者が必要なときに自分のパスワードを変更できる手段を用意してください。

説明

パスワード変更権限のない利用者は、初期パスワードや漏えいしたパスワードの変更を管理者に依頼する必要があります。allow_pw_change: false はアカウントポリシーで変更権限を付与しない設定であり、別の IAM ポリシーで自分のパスワード変更を許可できます。

想定される影響

  • 適切な変更手段がないと、漏えいしたパスワードが使われ続けるおそれがあります。
  • 管理者の対応を待つことで、アカウント復旧やインシデント対応が遅れる場合があります。

対処方法

  • すべての IAM 利用者に許可する場合は、allow_pw_change: true または別名の allow_password_change: true を設定してください。同じタスクでは一方の名前を一貫して使用してください。
  • 一部の利用者に許可する場合は、自分のパスワードに対する iam:ChangePassword と iam:GetAccountPasswordPolicy を適切に付与してください。適用される拒否ポリシー、MFA、パスワード強度の要件も確認してください。

例

アカウント単位の変更許可だけを比較します。amazon.aws.iam_password_policy または community.aws のリダイレクトに対応するコレクションで使用してください。他の値は組織の基準に合わせて確認してください。

変更前

yaml
- name: パスワードポリシーを設定する
  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: false
    pw_max_age: 60
    pw_reuse_prevent: 5
    pw_expire: false

- name: 別名を使ってパスワードポリシーを設定する
  community.aws.iam_password_policy:
    state: present
    min_pw_length: 8
    require_symbols: false
    require_numbers: true
    require_uppercase: true
    require_lowercase: true
    allow_password_change: false
    pw_max_age: 60
    pw_reuse_prevent: 5
    pw_expire: false

変更後

yaml
- name: パスワードポリシーを設定する
  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: 60
    pw_reuse_prevent: 5
    pw_expire: false

補足:

  • 変更前: アカウントポリシーでは、自分のパスワードを変更する権限を付与していません。別の IAM ポリシーによる許可も確認する必要があります。
  • 変更後: アカウントポリシーで、自分のパスワードの変更を許可します。

参考資料