

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

Adiciona permissões à política baseada em recursos de uma versão de uma [camada do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). Use essa ação para conceder permissão de uso da camada a outras contas. É possível conceder permissão para uma única conta, todas as contas em uma organização ou para todas as contas da AWS. 

Para revogar a permissão, chame[RemoveLayerVersionPermission](API_RemoveLayerVersionPermission.md) com o ID da instrução que você especificou quando adicionou essa permissão.

## Sintaxe da Solicitação
<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"
}
```

## Parâmetros da Solicitação de URI
<a name="API_AddLayerVersionPermission_RequestParameters"></a>

A solicitação usa os seguintes parâmetros de URI:

 ** [LayerName](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-LayerName"></a>
O nome ou o nome de recurso da Amazon (ARN) da camada.  
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 140.  
Padrão: `(arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+)|[a-zA-Z0-9-_]+`   
Exigido: Sim

 ** [RevisionId](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-RevisionId"></a>
Atualize a política somente se o ID da revisão corresponder ao ID especificado. Use essa opção para evitar a modificação de uma política que foi alterada desde a última leitura.

 ** [VersionNumber](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-VersionNumber"></a>
O número da versão.  
Obrigatório: sim

## Corpo da Solicitação
<a name="API_AddLayerVersionPermission_RequestBody"></a>

A solicitação aceita os dados a seguir no formato JSON.

 ** [Action](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-Action"></a>
A ação da API que concede acesso à camada. Por exemplo, `lambda:GetLayerVersion`.  
Tipo: string  
Restrições de tamanho: tamanho máximo de 22.  
Padrão: `lambda:GetLayerVersion`   
Exigido: Sim

 ** [OrganizationId](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-OrganizationId"></a>
Com o principal definido como `*`, conceda permissão a todas as contas na organização especificada.  
Tipo: string  
Restrições de tamanho: tamanho máximo de 34.  
Padrão: `o-[a-z0-9]{10,32}`   
Obrigatório: não

 ** [Principal](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-Principal"></a>
Um ID de conta ou `*` para conceder permissão de uso da camada a todas as contas de uma organização ou a todas as contas da AWS (se `organizationId` não for especificado). Para o último caso, certifique-se de que você realmente deseja que todas as contas da AWS tenham permissão de uso para essa camada.   
Tipo: string  
Padrão: `\d{12}|\*|arn:(aws[a-zA-Z-]*):iam::\d{12}:root`   
Exigido: Sim

 ** [StatementId](#API_AddLayerVersionPermission_RequestSyntax) **   <a name="lambda-AddLayerVersionPermission-request-StatementId"></a>
Um identificador que distingue uma política de outras na mesma versão de camada.  
Tipo: string  
Restrições de tamanho: tamanho mínimo 1. Tamanho máximo de 100.  
Padrão: `([a-zA-Z0-9-_]+)`   
Exigido: Sim

## Sintaxe da Resposta
<a name="API_AddLayerVersionPermission_ResponseSyntax"></a>

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

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

## Elementos de Resposta
<a name="API_AddLayerVersionPermission_ResponseElements"></a>

Se a ação for bem-sucedida, o serviço retornará uma resposta HTTP 201.

Os dados a seguir são retornados no formato JSON pelo serviço.

 ** [RevisionId](#API_AddLayerVersionPermission_ResponseSyntax) **   <a name="lambda-AddLayerVersionPermission-response-RevisionId"></a>
Um identificador exclusivo da revisão atual da política.  
Tipo: string

 ** [Statement](#API_AddLayerVersionPermission_ResponseSyntax) **   <a name="lambda-AddLayerVersionPermission-response-Statement"></a>
A declaração da permissão.  
Tipo: string

## Erros
<a name="API_AddLayerVersionPermission_Errors"></a>

Para obter informações sobre os erros que todas as ações retornam, consulte [Erros comuns](CommonErrors.md).

 ** InvalidParameterValueException **   
Um dos parâmetros da solicitação não é válido.  
Código de Status HTTP: 400

 ** PolicyLengthExceededException **   
A política de permissões do recurso é muito grande. Para obter mais informações, consulte [Cotas do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html).  
Código de Status HTTP: 400

 ** PreconditionFailedException **   
O RevisionId fornecido não corresponde ao RevisionId mais recente da função ou do alias do Lambda. Chame a operação de API `GetFunction` ou `GetAlias` para recuperar o RevisionId mais recente para o recurso.  
Código de status HTTP: 412

 ** ResourceConflictException **   
O recurso já existe ou outra operação está em andamento.  
Código de status HTTP: 409

 ** ResourceNotFoundException **   
O recurso especificado na solicitação não existe.  
Código de Status HTTP: 404

 ** ServiceException **   
O serviço AWS Lambda encontrou um erro interno.  
Código de Status HTTP: 500

 ** TooManyRequestsException **   
O limite de throughput da solicitação foi excedido. Para obter mais informações, consulte [Cotas do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests).  
Código de status HTTP: 429

## Ver também
<a name="API_AddLayerVersionPermission_SeeAlso"></a>

Para mais informações sobre como usar essa API em um dos AWS SDKs de idiomas específicos, consulte o seguinte:
+  [AWS Interface de linha de comando](https://docs.aws.amazon.com/goto/aws-cli/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK para .NET](https://docs.aws.amazon.com/goto/DotNetSDKV3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK para C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK for Go](https://docs.aws.amazon.com/goto/SdkForGoV1/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK para JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/lambda-2015-03-31/AddLayerVersionPermission) 
+  [AWS SDK para Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/lambda-2015-03-31/AddLayerVersionPermission) 