翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Lambda のアクション、リソース、および条件キー
AWS Lambda (サービスプレフィックス: lambda) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
リファレンス:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
AWS Lambda で定義されるアクション
IAM ポリシーステートメントの Action エレメントでは、以下のアクションを指定できます。ポリシーを使用して、 AWSでオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
アクションテーブルの [アクセスレベル] 列では、アクションの指定方法 (リスト、読み取り、アクセス許可管理、タグ付け) について説明します。このように分類することで、ポリシーで使用する際にアクションで付与するアクセスレベルを理解しやすくなります。アクセスレベルの詳細については、「ポリシー概要内のアクセスレベル」を参照してください。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource 要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition 要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
Actions テーブルの [依存アクション] 列には、アクションを正常に呼び出すために必要な追加のアクセス許可が表示されます。これらのアクセス許可は、アクション自体のアクセス許可に加えて必要になる場合があります。アクションが依存アクションを指定すると、それらの依存関係は、テーブルにリストされている最初のリソースだけでなく、そのアクションに定義された追加のリソースに適用される場合があります。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
| アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
|---|---|---|---|---|---|
| AddLayerVersionPermission | AWS Lambda レイヤーのバージョンのリソースベースのポリシーにアクセス許可を追加するアクセス許可を付与します | 権限の管理 | |||
| AddPermission | AWS Lambda 関数を使用するアクセス許可を AWS サービスまたは別のアカウントに付与するアクセス許可を付与します | 権限の管理 | |||
| CheckpointDurableExecution | AWS Lambda の永続的な実行の進行状況を保存するアクセス許可を付与します | 書き込み | |||
| CreateAlias | Lambda 関数バージョンのエイリアスを作成する許可を付与。 | 書き込み | |||
| CreateCapacityProvider | AWS Lambda キャパシティープロバイダーを作成するアクセス許可を付与します | 書き込み |
iam:CreateServiceLinkedRole iam:PassRole kms:DescribeKey |
||
| CreateCodeSigningConfig | AWS Lambda コード署名設定を作成する許可を付与 | 書き込み | |||
| CreateEventSourceMapping | イベントソースと AWS Lambda 関数間のマッピングを作成するアクセス許可を付与します | 書き込み | |||
| CreateFunction | AWS Lambda 関数を作成するアクセス許可を付与します | 書き込み |
iam:PassRole lambda:PassCapacityProvider |
||
| CreateFunctionUrlConfig | Lambda 関数の関数 URL 設定を作成するアクセス許可を付与 | 書き込み | |||
| DeleteAlias | AWS Lambda 関数エイリアスを削除するアクセス許可を付与します | 書き込み | |||
| DeleteCapacityProvider | AWS Lambda キャパシティープロバイダーを削除するアクセス許可を付与します | 書き込み | |||
| DeleteCodeSigningConfig | AWS Lambda コード署名設定を削除する許可を付与 | 書き込み | |||
| DeleteEventSourceMapping | AWS Lambda イベントソースマッピングを削除する許可を付与 | 書き込み | |||
| DeleteFunction | AWS Lambda 関数を削除するアクセス許可を付与します | 書き込み | |||
| DeleteFunctionCodeSigningConfig | AWS Lambda 関数からコード署名設定をデタッチする許可を付与 | 書き込み | |||
| DeleteFunctionConcurrency | AWS Lambda 関数から同時実行制限を削除するアクセス許可を付与します | 書き込み | |||
| DeleteFunctionEventInvokeConfig | AWS Lambda 関数、バージョン、またはエイリアスの非同期呼び出しの設定を削除するアクセス許可を付与します | 書き込み | |||
| DeleteFunctionUrlConfig | Lambda 関数の関数 URL 設定を削除するアクセス許可を付与 | 書き込み | |||
| DeleteLayerVersion | AWS Lambda レイヤーのバージョンを削除するアクセス許可を付与します | 書き込み | |||
| DeleteProvisionedConcurrencyConfig | AWS Lambda 関数のプロビジョニングされた同時実行設定を削除するアクセス許可を付与します | 書き込み | |||
| DisableReplication [アクセス許可のみ] | Lambda@Edge 関数のレプリケーションを無効にする許可を付与。 | Permissions management | |||
| EnableReplication [アクセス許可のみ] | Lambda@Edge 関数のレプリケーションを有効にする許可を付与。 | 権限の管理 | |||
| GetAccountSettings | でのアカウントの制限と使用状況に関する詳細を表示するアクセス許可を付与します AWS リージョン | 読み取り | |||
| GetAlias | AWS Lambda 関数エイリアスの詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetCapacityProvider | AWS Lambda キャパシティープロバイダーの詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetCodeSigningConfig | AWS Lambda コード署名設定の詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetDurableExecution | AWS Lambda の永続的な実行の詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetDurableExecutionHistory | AWS Lambda の永続的な実行の実行履歴を表示するアクセス許可を付与します | 読み取り | |||
| GetDurableExecutionState | AWS Lambda の永続的な実行の現在の状態を表示するアクセス許可を付与します | 読み取り | |||
| GetEventSourceMapping | AWS Lambda イベントソースマッピングの詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetFunction | AWS Lambda 関数の詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetFunctionCodeSigningConfig | AWS Lambda 関数にアタッチされたコード署名設定 ARN を表示する許可を付与 | 読み取り | |||
| GetFunctionConcurrency | 関数の予約済み同時実行設定の詳細を表示する許可を付与。 | 読み取り | |||
| GetFunctionConfiguration | AWS Lambda 関数またはバージョンのバージョン固有の設定に関する詳細を表示するアクセス許可を付与します | 読み取り | |||
| GetFunctionEventInvokeConfig | 関数、バージョン、またはエイリアスの非同期呼び出しの設定を表示する許可を付与。 | 読み取り | |||
| GetFunctionRecursionConfig | AWS Lambda 関数の再帰設定を表示するアクセス許可を付与します | 読み取り | |||
| GetFunctionScalingConfig | キャパシティープロバイダーで実行されている AWS Lambda 関数のスケーリング設定を表示するアクセス許可を付与します | 読み取り | |||
| GetFunctionUrlConfig | Lambda 関数の関数 URL 設定を読み取るアクセス許可を付与 | 読み取り | |||
| GetLayerVersion | AWS Lambda レイヤーのバージョンに関する詳細を表示するアクセス許可を付与します。このアクションは、GetLayerVersionByArn API もサポートしていることに注意してください | 読み取り | |||
| GetLayerVersionPolicy | AWS Lambda レイヤーのバージョンに対するリソースベースのポリシーを表示するアクセス許可を付与します | 読み取り | |||
| GetPolicy | AWS Lambda 関数、バージョン、またはエイリアスのリソースベースのポリシーを表示するアクセス許可を付与します | 読み取り | |||
| GetProvisionedConcurrencyConfig | AWS Lambda 関数のエイリアスまたはバージョンのプロビジョニングされた同時実行設定を表示するアクセス許可を付与します | 読み取り | |||
| GetRuntimeManagementConfig | AWS Lambda 関数のランタイム管理設定を表示するアクセス許可を付与します | 読み取り | |||
| InvokeAsync | (非推奨) 関数を非同期的に呼び出すアクセス許可を付与 | 書き込み | |||
| InvokeFunction | AWS Lambda 関数を呼び出すアクセス許可を付与します | 書き込み | |||
| InvokeFunctionUrl [アクセス許可のみ] | URL を使用して AWS Lambda 関数を呼び出すアクセス許可を付与します | 書き込み | |||
| ListAliases | AWS Lambda 関数のエイリアスのリストを取得する許可を付与 | リスト | |||
| ListCapacityProviders | AWS Lambda キャパシティプロバイダーのリストを取得するアクセス許可を付与します | リスト | |||
| ListCodeSigningConfigs | AWS Lambda コード署名設定のリストを取得する許可を付与 | リスト | |||
| ListDurableExecutionsByFunction | Lambda 関数の AWS Lambda AWS の永続的な実行のリストを取得するアクセス許可を付与します | リスト | |||
| ListEventSourceMappings | AWS Lambda イベントソースマッピングのリストを取得する許可を付与 | リスト | |||
| ListFunctionEventInvokeConfigs | 関数の非同期呼び出しの設定リストを取得する許可を付与。 | リスト | |||
| ListFunctionUrlConfigs | 関数の関数 URL 設定を読み取るアクセス許可を付与 | リスト | |||
| ListFunctionVersionsByCapacityProvider | 割り当てられたキャパシティープロバイダーによって AWS Lambda 関数のバージョンのリストを取得するアクセス許可を付与します | リスト | |||
| ListFunctions | 各関数のバージョン固有の設定を使用して、 AWS Lambda 関数のリストを取得するアクセス許可を付与します | リスト | |||
| ListFunctionsByCodeSigningConfig | 割り当てられたコード署名設定によって AWS Lambda 関数のリストを取得する許可を付与 | リスト | |||
| ListLayerVersions | AWS Lambda レイヤーのバージョンのリストを取得するアクセス許可を付与します | リスト | |||
| ListLayers | 各レイヤーの最新バージョンの詳細を含む AWS Lambda レイヤーのリストを取得するアクセス許可を付与します | リスト | |||
| ListProvisionedConcurrencyConfigs | AWS Lambda 関数のプロビジョニングされた同時実行設定のリストを取得する許可を付与 | リスト | |||
| ListTags | AWS Lambda 関数、イベントソースマッピング、キャパシティープロバイダー、またはコード署名設定リソースのタグのリストを取得するアクセス許可を付与します | 読み取り | |||
| ListVersionsByFunction | AWS Lambda 関数のバージョンのリストを取得するアクセス許可を付与します | リスト | |||
| PassCapacityProvider [許可のみ] | AWS Lambda キャパシティープロバイダーをサービスに渡すアクセス許可を付与します | 書き込み | |||
| PublishLayerVersion | AWS Lambda レイヤーを作成するアクセス許可を付与します | 書き込み | |||
| PublishVersion | AWS Lambda 関数バージョンを作成するアクセス許可を付与します | 書き込み | |||
| PutFunctionCodeSigningConfig | AWS Lambda 関数にコード署名設定をアタッチするアクセス許可を付与します | 書き込み | |||
| PutFunctionConcurrency | AWS Lambda 関数の予約済み同時実行を設定するアクセス許可を付与します | 書き込み | |||
| PutFunctionEventInvokeConfig | AWS Lambda 関数、バージョン、またはエイリアスで非同期呼び出しのオプションを設定するアクセス許可を付与します | 書き込み | |||
| PutFunctionRecursionConfig | AWS Lambda 関数の再帰設定を更新する許可を付与 | 書き込み | |||
| PutFunctionScalingConfig | キャパシティープロバイダーで実行されている AWS Lambda 関数のスケーリング設定を更新する許可を付与 | 書き込み | |||
| PutProvisionedConcurrencyConfig | AWS Lambda 関数のエイリアスまたはバージョンのプロビジョニングされた同時実行を設定するアクセス許可を付与します | 書き込み | |||
| PutRuntimeManagementConfig | AWS Lambda 関数のランタイム管理設定を更新する許可を付与 | 書き込み | |||
| RemoveLayerVersionPermission | AWS Lambda レイヤーのバージョンに対するアクセス許可ポリシーからステートメントを削除するアクセス許可を付与します | 権限の管理 | |||
| RemovePermission | AWS サービスまたは別のアカウントから関数使用のアクセス許可を取り消すアクセス許可を付与します | 権限の管理 | |||
| SendDurableExecutionCallbackFailure | AWS Lambda の永続的な実行でコールバックオペレーションの失敗レスポンスを送信するアクセス許可を付与します | 書き込み | |||
| SendDurableExecutionCallbackHeartbeat | AWS Lambda の永続的な実行でコールバックオペレーションのハートビートを送信するアクセス許可を付与します | 書き込み | |||
| SendDurableExecutionCallbackSuccess | AWS Lambda の永続的な実行でコールバックオペレーションに成功したレスポンスを送信するアクセス許可を付与します | 書き込み | |||
| StopDurableExecution | AWS Lambda の永続的な実行を停止するアクセス許可を付与します | 書き込み | |||
| TagResource | AWS Lambda 関数、イベントソースマッピング、キャパシティープロバイダー、またはコード署名設定リソースにタグを追加する許可を付与 | Tagging | |||
| UntagResource | AWS Lambda 関数、イベントソースマッピング、キャパシティプロバイダー、またはコード署名設定リソースからタグを削除するアクセス許可を付与します | Tagging | |||
| UpdateAlias | AWS Lambda 関数のエイリアスの設定を更新する許可を付与 | 書き込み | |||
| UpdateCapacityProvider | AWS Lambda キャパシティープロバイダーを更新する許可を付与 | 書き込み | |||
| UpdateCodeSigningConfig | AWS Lambda コード署名設定を更新する許可を付与 | 書き込み | |||
| UpdateEventSourceMapping | AWS Lambda イベントソースマッピングの設定を更新する許可を付与 | 書き込み | |||
| UpdateFunctionCode | AWS Lambda 関数のコードを更新する許可を付与 | 書き込み | |||
| UpdateFunctionCodeSigningConfig | AWS Lambda 関数のコード署名設定を更新する許可を付与 | 書き込み | |||
| UpdateFunctionConfiguration | AWS Lambda 関数のバージョン固有の設定を変更するアクセス許可を付与します | 書き込み | |||
| UpdateFunctionEventInvokeConfig | AWS Lambda 関数、バージョン、またはエイリアスの非同期呼び出しの設定を変更するアクセス許可を付与します | 書き込み | |||
| UpdateFunctionUrlConfig | Lambda 関数の関数 URL 設定を更新するアクセス許可を付与 | 書き込み | |||
AWS Lambda で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
| リソースタイプ | ARN | 条件キー |
|---|---|---|
| capacityProvider |
arn:${Partition}:lambda:${Region}:${Account}:capacity-provider:${CapacityProviderName}
|
|
| code signing config |
arn:${Partition}:lambda:${Region}:${Account}:code-signing-config:${CodeSigningConfigId}
|
|
| durable execution |
arn:${Partition}:lambda:${Region}:${Account}:function:${FunctionName}:${Version}/durable-execution/${ExecutionName}/${ExecutionId}
|
|
| eventSourceMapping |
arn:${Partition}:lambda:${Region}:${Account}:event-source-mapping:${UUID}
|
|
| function |
arn:${Partition}:lambda:${Region}:${Account}:function:${FunctionName}
|
|
| function alias |
arn:${Partition}:lambda:${Region}:${Account}:function:${FunctionName}:${Alias}
|
|
| function version |
arn:${Partition}:lambda:${Region}:${Account}:function:${FunctionName}:${Version}
|
|
| layer |
arn:${Partition}:lambda:${Region}:${Account}:layer:${LayerName}
|
|
| layerVersion |
arn:${Partition}:lambda:${Region}:${Account}:layer:${LayerName}:${LayerVersion}
|
AWS Lambda の条件キー
AWS Lambda は、IAM ポリシーの Condition要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、「AWS グローバル条件コンテキストキー」を参照してください。
| 条件キー | 説明 | タイプ |
|---|---|---|
| aws:RequestTag/${TagKey} | リクエストで渡されたタグでアクセスをフィルタリングします | 文字列 |
| aws:ResourceTag/${TagKey} | リソースに関連付けられたタグでアクセスをフィルタリングします | 文字列 |
| aws:TagKeys | リクエストで渡されたタグキーでアクセスをフィルタリングします | ArrayOfString |
| lambda:CodeSigningConfigArn | AWS Lambda コード署名設定の ARN でアクセスをフィルタリングします | ARN |
| lambda:EventSourceToken | AWS Lambda 関数用に設定されたAWS イベント以外のソースからの ID でアクセスをフィルタリングします | String |
| lambda:FunctionArn | AWS Lambda 関数の ARN でアクセスをフィルタリングします | ARN |
| lambda:FunctionUrlAuthType | リクエストで指定された認可タイプでアクセスをフィルタリングします。CreateFunctionUrlConfig、UpdateFunctionUrlConfig、DeleteFunctionUrlConfig、GetFunctionUrlConfig、ListFunctionUrlConfig、AddPermission、および RemovePermission のオペレーション中に使用できます | String |
| lambda:InvokedViaFunctionUrl | Lambda:InvokeFunction アクションの範囲を関数 URLs。AddPermission オペレーション中に使用可能 | Bool |
| lambda:Layer | AWS Lambda レイヤーのバージョンの ARN でアクセスをフィルタリングします | ArrayOfString |
| lambda:Principal | 関数を呼び出すことができる AWS サービスまたはアカウントを制限してアクセスをフィルタリングします | String |
| lambda:SecurityGroupIds | AWS Lambda 関数用に設定されたセキュリティグループの ID でアクセスをフィルタリングします | ArrayOfString |
| lambda:SourceFunctionArn | リクエスト元の AWS Lambda 関数の ARN でアクセスをフィルタリングします | ARN |
| lambda:SubnetIds | AWS Lambda 関数用に設定されたサブネットの ID でアクセスをフィルタリングします | ArrayOfString |
| lambda:VpcIds | AWS Lambda 関数用に設定された VPC の ID でアクセスをフィルタリングします | String |