DVAセキュリティ

開発者はAWS CLIを使用して新しいAWS Lambda関数を作成し、その関数にAmazon S3バケットへの読み取りアクセス権を持つIAM実行ロールを割り当てようとしています。しかし、関数の作成コマンドを実行した際に権限エラーが発生しました。開発者が使用しているIAMユーザーに不足している可能性が最も高いIAMアクション権限はどれですか。

A
iam:PassRole
✓ 正解
LambdaなどのAWSサービスに既存のIAMロールを割り当てる操作を行うには、呼び出し側のユーザーに iam:PassRole 権限が必須となります。
B
iam:CreateRole
ロールを新しく「作成」するわけではなく、すでに存在するロールをLambdaに「割り当てる」操作で失敗しているため、ロール作成権限は直接関係ありません。
C
sts:AssumeRole
sts:AssumeRoleは、エンティティ(ユーザーやサービス)が一時的に別のロールの権限を引き受けるためのものであり、ロールをAWSサービスに割り当てるための権限ではありません。
D
lambda:AddPermission
lambda:AddPermissionは、Lambda関数のリソースベースポリシーを変更して外部からの呼び出し(例: API GatewayやS3からのトリガー)を許可するためのものであり、実行ロールの付与とは異なります。

解説

ユーザーがAWSサービス(LambdaやEC2など)に対して既存のIAMロールを割り当てる(渡す)場合、その操作を行うユーザー自身に `iam:PassRole` 権限が明示的に付与されている必要があります。これにより、権限のない一般ユーザーが特権を持つロールをサービスに勝手に割り当てて、不正に権限昇格を行うことを防ぎます。Lambda関数の作成や更新時にロールを指定して権限エラーが発生した場合、この `iam:PassRole` が不足していることが主な原因です。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
DVA の問題一覧に戻る