

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AddLayerVersionPermission
<a name="API_AddLayerVersionPermission"></a>

將許可新增到 [AWS Lambda 層](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html)的其中一個版本的資源型政策。使用此動作來將 layer 使用許可授予其他帳戶。您可以將許可授予單一帳戶、組織中的所有帳戶或所有 AWS 帳戶。

若要撤銷許可，請使用在新增時已指定的陳述式 ID 呼叫 [RemoveLayerVersionPermission](API_RemoveLayerVersionPermission.md)。

## 請求語法
<a name="API_AddLayerVersionPermission_RequestSyntax"></a>

```
POST /2018-10-31/layers/LayerName/versions/VersionNumber/policy?RevisionId=RevisionId HTTP/1.1
Content-type: application/json

{
   "Action": "string",
   "OrganizationId": "string",
   "Principal": "string",
   "StatementId": "string"
}
```

## URI 請求參數
<a name="API_AddLayerVersionPermission_RequestParameters"></a>

請求會使用下列 URI 參數。

 ** [LayerName](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-LayerName"></a>
layer 的名稱或 Amazon Resource Name (ARN)。  
長度限制：長度下限為 1。長度上限為 140。  
模式：`(arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+)|[a-zA-Z0-9-_]+`  
必要：是

 ** [RevisionId](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-RevisionId"></a>
只有在修訂版本 ID 符合指定的 ID 時才更新政策。使用此選項來避免修改自您最近一次讀取之後產生變更的政策。

 ** [VersionNumber](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-VersionNumber"></a>
版本號碼。  
必要：是

## 請求主體
<a name="API_AddLayerVersionPermission_RequestBody"></a>

請求接受採用 JSON 格式的下列資料。

 ** [Action](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-Action"></a>
將存取授予 layer 的 API 動作。例如 `lambda:GetLayerVersion`。  
類型：字串  
長度限制：長度上限為 22。  
模式：`lambda:GetLayerVersion`  
必要：是

 ** [OrganizationId](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-OrganizationId"></a>
透過將主體設為 `*`，即可將許可授予指定組織中的所有帳戶。  
類型：字串  
長度限制：長度上限為 34。  
模式：`o-[a-z0-9]{10,32}`  
必要：否

 ** [Principal](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-Principal"></a>
帳戶 ID，或 `*` 將層級使用許可授予給組織中的所有帳戶或所有 AWS 帳戶 (如果未指定 `organizationId`)。對於最後一種情況，請確保您確實想要所有 AWS 帳戶具有此層級的使用許可。  
類型：String  
模式：`\d{12}|\*|arn:(aws[a-zA-Z-]*):iam::\d{12}:root`  
必要：是

 ** [StatementId](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-StatementId"></a>
在同一層版本上區分該政策與其他政策的識別符。  
類型：字串  
長度限制：長度下限為 1。長度上限為 100。  
模式：`([a-zA-Z0-9-_]+)`  
必要：是

## 回應語法
<a name="API_AddLayerVersionPermission_ResponseSyntax"></a>

```
HTTP/1.1 201
Content-type: application/json

{
   "RevisionId": "string",
   "Statement": "string"
}
```

## 回應元素
<a name="API_AddLayerVersionPermission_ResponseElements"></a>

如果動作成功，則服務傳回 HTTP 201 回應。

服務會傳回下列 JSON 格式的資料。

 ** [RevisionId](#API_AddLayerVersionPermission_ResponseSyntax) **   <a name="lambda-AddLayerVersionPermission-response-RevisionId"></a>
目前政策修訂版本的唯一識別符。  
類型：字串

 ** [Statement](#API_AddLayerVersionPermission_ResponseSyntax) **   <a name="lambda-AddLayerVersionPermission-response-Statement"></a>
許可陳述式。  
類型：字串

## 錯誤
<a name="API_AddLayerVersionPermission_Errors"></a>

如需所有動作常見錯誤的資訊，請參閱[常見錯誤](CommonErrors.md)。

 ** InvalidParameterValueException **   
請求中的其中一個參數無效。  
HTTP 狀態碼：400

 ** PolicyLengthExceededException **   
資源的許可政策太大。如需詳細資訊，請參閱 [Lambda 配額](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html)。  
HTTP 狀態碼：400

 ** PreconditionFailedException **   
 RevisionId 提供的與 Lambda 函數或別名 RevisionId 的最新版本不相符。呼叫`GetFunction`或 `GetAlias` API 作業以擷取資源 RevisionId 的最新資源。  
HTTP 狀態碼：412

 ** ResourceConflictException **   
資源已存在，或另一個操作正在進行中。  
HTTP 狀態碼：409

 ** ResourceNotFoundException **   
請求中指定的資源不存在。  
HTTP 狀態碼：404

 ** ServiceException **   
AWS Lambda 服務發生內部錯誤。  
HTTP 狀態碼：500

 ** TooManyRequestsException **   
超出請求輸送量限制。如需詳細資訊，請參閱 [Lambda 配額](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests)。  
HTTP 狀態碼：429

## 另請參閱
<a name="API_AddLayerVersionPermission_SeeAlso"></a>

如需在語言特定的 AWS 開發套件之一中使用此 API 的詳細資訊，請參閱下列說明：
+  [AWS 命令列介面](https://docs.aws.amazon.com/goto/aws-cli/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 .NET 的 AWS 軟體開發套件](https://docs.aws.amazon.com/goto/DotNetSDKV3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 C\$1\$1 的 AWS 開發套件](https://docs.aws.amazon.com/goto/SdkForCpp/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 Go 的 AWS 軟體開發套件](https://docs.aws.amazon.com/goto/SdkForGoV1/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 Java 的 AWS 軟體開發套件第 2 版](https://docs.aws.amazon.com/goto/SdkForJavaV2/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS適用於 JavaScript V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 PHP 的 AWS 軟體開發套件第 3 版](https://docs.aws.amazon.com/goto/SdkForPHPV3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 Python 的 AWS 開發套件](https://docs.aws.amazon.com/goto/boto3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [適用於 Ruby 的 AWS 軟體開發套件第 3 版](https://docs.aws.amazon.com/goto/SdkForRubyV3/lambda-2015-03-31/AddLayerVersionPermission) 