説明
必要な権限が異なる関数でIAM実行ロールを共有すると、他の関数だけが必要とする権限も付与される場合があります。各関数の処理に合わせてロールとポリシーを分離してください。
想定される影響
侵害された関数が、その処理に関係のないAWSリソースにアクセスできる可能性があります。
対処方法
専用の role または対応する関数単位のIAM設定を使用してください。ロールを分けた場合も、各ポリシーのアクションとリソースを必要な範囲に限定してください。
例
次の例では、hello に専用ロールを割り当てています。例示のARNを実際のロールに置き換え、Lambda用の信頼ポリシーと必要な実行権限を構成してください。
変更前
yaml
service: service
frameworkVersion: "4"
provider:
name: aws
runtime: nodejs22.x
functions:
hello:
handler: handler.hello
変更後
yaml
service: service
frameworkVersion: "4"
provider:
name: aws
runtime: nodejs22.x
functions:
hello:
handler: handler.hello
role: arn:aws:iam::123456789012:role/hello-function-role