本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS Lambda 的動作、資源和條件索引鍵
AWS Lambda (服務字首:lambda) 提供下列服務特定的資源、動作和條件內容索引鍵,可用於 IAM 許可政策。
參考資料:
-
了解如何設定此服務。
-
檢視可供此服務使用的 API 操作清單。
-
了解如何使用 IAM 許可政策來保護此服務及其資源。
AWS Lambda 定義的動作
您可在 IAM 政策陳述式的 Action 元素中指定以下動作。使用政策來授予在 AWS中執行操作的許可。在政策中使用動作時,通常會允許或拒絕存取相同名稱的 API 操作或 CLI 命令。不過,在某些情況下,單一動作可控制對多個操作的存取。或者,某些操作需要多種不同的動作。
動作資料表的存取層級欄說明動作的分類方式 (列出、讀取、許可管理或標記)。此分類可協助您了解在政策中使用某動作時,該動作授予您的存取層級。如需存取層級的詳細資訊,請參閱政策摘要中的存取層級。
「動作」資料表的資源類型欄會指出每個動作是否支援資源層級的許可。如果此欄沒有值,您必須在政策陳述式的 Resource 元素中指定政策適用的所有資源 ("*")。如果資料欄包含資源類型,則您可以在具有該動作的陳述式中指定該類型的 ARN。如果動作具有一或多個必要資源,呼叫者必須具有對這些資源使用動作的許可。表格中的必要資源會以星號 (*) 表示。如果您使用 IAM 政策中的 Resource 元素限制資源存取,則每種必要的資源類型必須要有 ARN 或模式。某些動作支援多種資源類型。如果資源類型是選用 (未顯示為必要),則您可以選擇使用其中一種選用資源類型。
「動作」資料表的條件索引鍵欄包含您可以在政策陳述式的 Condition 元素中指定的索引鍵。如需有關與服務資源相關聯之條件索引鍵的詳細資訊,請參閱「資源類型」資料表的條件索引鍵欄。
動作資料表的相依動作欄會顯示成功呼叫動作所需的其他許可。除了 動作本身的許可之外,還可能需要這些許可。當動作指定相依動作時,這些相依性可能適用於針對該動作定義的其他資源,而不只是資料表中列出的第一個資源。
注意
資源條件索引鍵會列在資源類型資料表中。您可以在「動作」資料表的資源類型 (*必填) 欄中找到適用於動作的資源類型連結。「資源類型」資料表中的資源類型包括條件索引鍵欄,其中包含套用至「動作」資料表中動作的資源條件索引鍵。
如需下表各欄的詳細資訊,請參閱動作資料表。
| 動作 | 描述 | 存取層級 | 資源類型 (*必填項目) | 條件索引鍵 | 相依動作 |
|---|---|---|---|---|---|
| AddLayerVersionPermission | 准許將許可新增至 AWS Lambda 層版本的資源型政策 | 許可管理 | |||
| AddPermission | 准許授予 AWS 服務或其他帳戶使用 AWS Lambda 函數的許可 | 許可管理 | |||
| CreateAlias | 授予建立 Lambda 函數版本別名的許可 | 寫入 | |||
| CreateCodeSigningConfig | 准許建立 AWS Lambda 程式碼簽署組態 | 寫入 | |||
| CreateEventSourceMapping | 准許在事件來源和 AWS Lambda 函數之間建立映射 | 寫入 | |||
| CreateFunction | 准許建立 AWS Lambda 函數 | 寫入 |
iam:PassRole |
||
| CreateFunctionUrlConfig | 准許針對 Lambda 函數建立函數 URL 組態 | 寫入 | |||
| DeleteAlias | 准許刪除 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 函數複寫的許可 | 許可管理 | |||
| EnableReplication [僅限許可] | 授予啟用 Lambda @Edge 函數複寫的許可 | 許可管理 | |||
| GetAccountSettings | 准許在 中檢視帳戶限制和用量的詳細資訊 AWS 區域 | 閱讀 | |||
| GetAlias | 准許檢視 AWS Lambda 函數別名的詳細資訊 | 閱讀 | |||
| GetCodeSigningConfig | 准許檢視 AWS Lambda 程式碼簽署組態的詳細資訊 | 閱讀 | |||
| GetEventSourceMapping | 准許檢視 AWS Lambda 事件來源映射的詳細資訊 | 閱讀 | |||
| GetFunction | 准許檢視 AWS Lambda 函數的詳細資訊 | 閱讀 | |||
| GetFunctionCodeSigningConfig | 准許檢視連接到 AWS Lambda 函數的程式碼簽署組態 | 閱讀 | |||
| GetFunctionConcurrency | 授予檢視函數之保留並行組態詳細資訊的許可 | 閱讀 | |||
| GetFunctionConfiguration | 准許檢視 AWS Lambda 函數或版本的特定版本設定的詳細資訊 | 閱讀 | |||
| GetFunctionEventInvokeConfig | 授予檢視函數、版本或別名的非同步叫用組態的許可 | 閱讀 | |||
| GetFunctionRecursionConfig | 准許檢視 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 函數的別名清單 | 清單 | |||
| ListCodeSigningConfigs | 准許擷取 AWS Lambda 程式碼簽署組態的清單 | 清單 | |||
| ListEventSourceMappings | 准許擷取 AWS Lambda 事件來源映射的清單 | 清單 | |||
| ListFunctionEventInvokeConfigs | 准許擷取函數的非同步叫用之組態清單 | 清單 | |||
| ListFunctionUrlConfigs | 准許讀取函數的函數 URL 組態 | 清單 | |||
| ListFunctions | 准許擷取 AWS Lambda 函數清單,以及每個函數的版本特定組態 | 清單 | |||
| ListFunctionsByCodeSigningConfig | 准許透過指派的程式碼簽署組態擷取 AWS Lambda 函數清單 | 清單 | |||
| ListLayerVersions | 准許擷取 AWS Lambda 層的版本清單 | 清單 | |||
| ListLayers | 准許擷取 AWS Lambda 層的清單,其中包含各層最新版本的詳細資訊 | 清單 | |||
| ListProvisionedConcurrencyConfigs | 准許擷取 AWS Lambda 函數的佈建並行組態清單 | 清單 | |||
| ListTags | 准許擷取 AWS Lambda 函數、事件來源映射或程式碼簽署組態資源的標籤清單 | 閱讀 | |||
| ListVersionsByFunction | 准許擷取 AWS Lambda 函數的版本清單 | 清單 | |||
| PublishLayerVersion | 准許建立 AWS Lambda 層 | 寫入 | |||
| PublishVersion | 准許建立 AWS Lambda 函數版本 | 寫入 | |||
| PutFunctionCodeSigningConfig | 准許將程式碼簽署組態連接至 AWS Lambda 函數 | 寫入 | |||
| PutFunctionConcurrency | 准許設定 AWS Lambda 函數的預留並行 | 寫入 | |||
| PutFunctionEventInvokeConfig | 准許設定 AWS Lambda 函數、版本或別名上的非同步調用選項 | 寫入 | |||
| PutFunctionRecursionConfig | 准許更新 AWS Lambda 函數的遞迴組態 | 寫入 | |||
| PutProvisionedConcurrencyConfig | 准許設定 AWS Lambda 函數別名或版本的佈建並行 | 寫入 | |||
| PutRuntimeManagementConfig | 准許更新 AWS Lambda 函數的執行時間管理組態 | 寫入 | |||
| RemoveLayerVersionPermission | 准許從 AWS Lambda 層版本的許可政策中移除陳述式 | 許可管理 | |||
| RemovePermission | 准許從 AWS 服務或其他帳戶撤銷函數使用許可 | 許可管理 | |||
| TagResource | 准許將標籤新增至 AWS Lambda 函數、事件來源映射或程式碼簽署組態資源 | 標記 | |||
| UntagResource | 准許從 AWS Lambda 函數、事件來源映射或程式碼簽署組態資源中移除標籤 | 標記 | |||
| UpdateAlias | 准許更新 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 | 條件索引鍵 |
|---|---|---|
| code signing config |
arn:${Partition}:lambda:${Region}:${Account}:code-signing-config:${CodeSigningConfigId}
|
|
| 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:Layer | 依 AWS Lambda layer 版本的 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 |