説明
IAM パスワードの再利用防止がない場合や、履歴が組織の基準より少ない場合、利用者は以前のパスワードに戻せます。漏えいしたパスワードを再利用すると、変更の効果が失われるおそれがあります。履歴の確認は最近のパスワードを制限するもので、類似する文字列や他のサービスのパスワードまで検証するものではありません。
想定される影響
- 以前に漏えいしたパスワードが再利用されるおそれがあります。
- 変更しても同じ秘密値に戻すことを繰り返すと、アカウント保護が弱まる場合があります。
対処方法
- pw_reuse_prevent または対応する別名に必要な履歴数を設定してください。AWS は過去 1~24 個のパスワードの再利用制限に対応し、0 は制限を無効にします。
- 十分な長さ、MFA、漏えい時の即時変更手順も適用してください。この設定は IAM コンソールパスワードを対象とし、アクセスキーを交換するものではありません。
例
pw_reuse_prevent の別名は password_reuse_prevent と prevent_reuse です。同じタスクでは一方の名前を使用してください。省略時のモジュール既定値は 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_max_age: 60
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: 60
password_reuse_prevent: 0
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: 60
pw_reuse_prevent: 5
pw_expire: false
補足:
- 変更前: 値を省略するか 0 に設定し、履歴によるパスワード再利用制限を適用していません。
- 変更後: 直近 5 個のパスワードの再利用を制限します。必要な履歴数は組織の基準に合わせて決める必要があります。