他の AWS アカウント、組織、およびサービスに、Lambda リソースにアクセスするためのアクセス許可を付与するには、いくつかのオプションがあります。
-
ID ベースのポリシーを使用して、Lambda リソースへのアクセス権を他のユーザーに付与することができます。アイデンティティベースのポリシーは、ユーザーに直接適用するか、ユーザーに関連付けられているグループおよびロールに適用することができます。
-
リソースベースのポリシーを使用して、Lambda リソースにアクセスするためのアクセス許可を他のアカウントや AWS のサービスに付与することができます。ユーザーが Lambda リソースへのアクセスを試みた際、Lambda は、ユーザーのアイデンティティベースのポリシーと、リソースのリソースベースのポリシーの両方を認識しようとします。Amazon Simple Storage Service (Amazon S3) などの AWS のサービスが Lambda 関数を呼び出す際。Lambda はリソースベースのポリシーのみを認識しようとします。
-
属性ベースのアクセス制御 (ABAC) モデルを使用して、Lambda 関数へのアクセスを制御できます。ABAC を使用すると、Lambda 関数にタグをアタッチしたり、特定の API リクエストでタグを渡したり、リクエストを実行する IAM プリンシパルにタグをアタッチしたりすることができます。IAM ポリシーの条件要素で同じタグを指定して、関数アクセスを制御します。
最小特権アクセスを実現するためにアクセス許可を微調整できるように、Lambda ではポリシーに含めることができるいくつかの追加条件が用意されています。詳細については、「ポリシーのリソースセクションと条件セクションの微調整」を参照してください。