c3.5 IAM を最小権限に向けて見直す
ロールは、特に納期のプレッシャー下で、必要以上の権限で作られがちです。IAM Access Analyzer で未使用アクセスを見つけ、実際のアクティビティから絞り込んだポリシーを生成し、IAM ポリシーを定期的に最小権限へと適正化します。
実装ガイダンス
権限を適正なサイズにする
納期のプレッシャー下では、ロールは使われない権限を蓄積しがちで、これは最小権限に反します。ロールを定期的に見直し、不要な権限を削除します。特にワイルドカード("Action": "" や "Resource": "")に注意します。これらは通常、絞り込まれなかったポリシーのサインです。IAM のベストプラクティスに従ってください。
IAM Access Analyzer を使う
IAM Access Analyzer はこの作業の多くを担います。
- 未使用アクセス: 組織アナライザーを構成し、削除すべき未使用のロール・権限・認証情報を見つけます。
- ポリシー生成: CloudTrail のアクティビティから最小権限ポリシーを生成します。実践的な流れ: dev アカウントで広い権限を付けて実行し、アプリを動かし、絞り込んだポリシーを生成し、本番まで通してテストします。
CLI でポリシーを生成する
ロールの CloudTrail アクティビティからポリシー生成ジョブを開始し、生成された最小権限ポリシーを取得します:
aws accessanalyzer start-policy-generation \
--policy-generation-details '{"principalArn":"arn:aws:iam::111122223333:role/my-role"}' \
--cloud-trail-details file://cloudtrail-details.json
aws accessanalyzer get-generated-policy --job-id <job-id>
パートナー製品とオープンソースのツール
AWS Marketplace の Cloud Infrastructure Entitlement Management(CIEM)ツールは大規模に役立ちます。オープンソースでは Cloudsplaining がポリシーを可視化し、過剰に許可されたポリシーのリスクを浮き彫りにします。
How to validate
- IAM ロールを定期的に見直し、未使用の権限を削除していますか?
- ポリシー内のワイルドカード(*)のアクションとリソースに対処しましたか?
- 未使用アクセスの検出とポリシー生成に IAM Access Analyzer を使っていますか?
Threats addressed
- 過剰に許可されたロールは、侵害されたアイデンティティの影響範囲を拡大します。アイデンティティができることが多いほど、それを盗んだ攻撃者ができることも増えます。
Cloud Security Maturity Model