説明
IAM パスワードの最小文字数が不足すると、短く推測しやすいパスワードが許可される場合があります。設定の省略が文字数制限の不在を意味するわけではないため、実際のアカウントポリシーを確認してください。このポリシーは IAM 利用者のコンソールパスワードに適用され、ルートのパスワードやアクセスキーには適用されません。
想定される影響
- 短く弱いパスワードが推測攻撃で悪用されるおそれがあります。
- 文字数のポリシーを変えても既存のパスワードは直ちに変更されません。
対処方法
- min_pw_length または別名の minimum_password_length に、組織の十分な最小文字数を明示してください。同じオプションの名前は一貫して使用してください。
- 必要な文字種の条件も確認し、コンソール利用者に MFA を適用してください。新しい文字数の要件は、利用者が次にパスワードを変更するときに適用されます。
例
AWS のカスタム最小文字数の許容範囲は 6~128 です。モジュールの既定値は 6 で、例の 8 文字がすべての組織に十分という意味ではありません。
変更前
yaml
- name: IAM パスワードポリシーを設定する
community.aws.iam_password_policy:
state: present
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
- name: IAM パスワードポリシーの別の設定例
community.aws.iam_password_policy:
state: present
min_pw_length: 6
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
変更後
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
補足:
- 変更前: 最小文字数を省略したタスクと、6 を明示したタスクです。実際に適用されるポリシーを確認してください。
- 変更後: 最小文字数を 8 に明示しています。必要な文字数は組織の基準に合わせて決める必要があります。