開発者が IAM ロールを作成するときに、どの権限を付与する必要があるかわからず、できるだけ早くデプロイしようと急いでいると、必要のない追加の権限が必要になることがよくあります。しかし、これは最小原則の原則に沿っていません。IAMロールの不要な権限を削除して、可能な限り最小権限の原則に近づけるように努めましょう。
IAM ロールを定期的に確認して、機能の実行に必要な最低限の権限 (最小権限) のみが付与されていることを確認することをお勧めします。
AWS IAM ベストプラクティス: 最小特権アクセス許可を適用する
特に、ポリシーのアスタリスクを確認してください。
… “Action”: “service-prefix”: “*” … または … “Resource”: “*” …
これらの広範な許可が与えられるのは、多くの場合、より具体的な IAM ポリシーの作成に時間や労力をかけていないためです。
IAM Access Analyzer は IAM ロールの未使用の権限を検出できます。組織全体のアナライザーを設定し、使用されていないアクセスを削減しましょう。
IAM Access Analyzer には、ユーザーのアクティビティ (AWS CloudTrail に記録される) に基づいてポリシーを生成する機能 があります。この機能を使用して、長期間使用されていない過剰な権限を持つポリシーを改善しましょう。
開発者に対し、より広い権限を持つ開発アカウントで IAM Access Analyzer のポリシー生成を設定し、アプリケーションをテストして最小権限のポリシーを生成し、そのポリシーを本番環境に移行する前にテスト環境でテストすることを提案してください。
IAM Access Advisor
を使用して、未使用のアクセスを特定します。
AWS IAM ユーザーガイド: IAM アイデンティティベースのポリシーの例
Ermetic や Sonrai などのクラウドインフラストラクチャ権限管理 (CIEM) ソリューションを検討することもできます。
過剰または意図しない権限を発見するのに役立つオープンソースツールの1つに、CloudSplaining があります。これはポリシーをグラフィック形式で表示し、過度に許可されたポリシーに関連するリスクを理解するのに役立ちます。
最小限の権限を大規模に達成するための戦略: [パート1] [パート2]