

# Definir permissões de uma função do Lambda com um perfil de execução
<a name="lambda-intro-execution-role"></a>

O perfil de execução de uma função do Lambda é um perfil do AWS Identity and Access Management (IAM) que concede à função permissão para acessar recursos e Serviços da AWS. Por exemplo, é possível criar uma função de execução que tenha permissão para enviar logs ao Amazon CloudWatch e carregar os dados de rastreamento no AWS X-Ray. Esta página fornece informações sobre como criar, visualizar e gerenciar o perfil de execução de uma função do Lambda.

O Lambda assume automaticamente seu perfil de execução quando você invoca sua função. Evite chamar `sts:AssumeRole` manualmente para assumir o perfil de execução no código da sua função. Se o caso de uso exigir que o perfil assuma a si mesmo, será necessário incluir o perfil em si como uma entidade principal confiável na política de confiança do perfil. Para obter mais informações sobre como modificar uma política de confiança de perfil, consulte [ Modificar a política de confiança de uma função (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-managingrole_edit-trust-policy) no Guia do usuário do IAM.

Para que o Lambda assuma seu perfil de execução de forma adequada, a [política de confiança](#permissions-executionrole-api) do perfil deve especificar a entidade principal de serviço do Lambda (`lambda.amazonaws.com`) como um serviço confiável.

**Topics**
+ [

## Criar uma função de execução no console do IAM
](#permissions-executionrole-console)
+ [

## Criar e gerenciar perfis com a AWS CLI
](#permissions-executionrole-api)
+ [

## Conceda acesso de menor privilégio à sua função de execução do Lambda
](#permissions-executionrole-least-privilege)
+ [

# Visualizar e atualizar permissões no perfil de execução
](permissions-executionrole-update.md)
+ [

# Trabalhar com políticas gerenciadas pela AWS no perfil de execução
](permissions-managed-policies.md)
+ [

# Usar o ARN da função de origem para controlar o comportamento de acesso da função
](permissions-source-function-arn.md)

## Criar uma função de execução no console do IAM
<a name="permissions-executionrole-console"></a>

Por padrão, o Lambda cria uma função de execução com permissões mínimas quando você [cria uma função no console do Lambda](getting-started.md#getting-started-create-function). Especificamente, esse perfil de execução inclui a [política gerenciada `AWSLambdaBasicExecutionRole`](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLambdaBasicExecutionRole.html), que concede à sua função permissões básicas para registrar eventos no Amazon CloudWatch Logs. Você pode selecionar **Criar perfil padrão** na seção **Permissões**.

É possível escolher um perfil existente selecionando **Usar outro perfil** na seção **Permissões**. Se a sua função do Lambda precisar de permissões adicionais para realizar tarefas como atualizar entradas em um banco de dados Amazon DynamoDB em resposta a eventos, você pode criar um perfil de execução personalizado com as permissões necessárias. Para isso, selecione **Usar outro perfil** na seção **Permissões**, o que abrirá uma janela lateral onde você poderá personalizar suas permissões.

**Para configurar um perfil de execução a partir do Console**

1. Insira um **nome de perfil** na seção Detalhes do perfil.

1. Na seção **Política**, selecione **Usar política existente**.

1. Selecione as políticas gerenciadas pela AWS que deseja anexar ao seu perfil. Por exemplo, se sua função precisar acessar o DynamoDB, selecione a política gerenciada **AWSLambdaDynamoDBExecutionRole**.

1. Selecione **Criar perfil**.

Como alternativa, ao [criar uma função no console do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/getting-started.html#getting-started-create-function), você poderá anexar qualquer perfil de execução criado anteriormente à função. Se você quiser anexar um novo perfil de execução a uma função existente, siga as etapas em [Atualizar o perfil de execução de uma função](permissions-executionrole-update.md).

## Criar e gerenciar perfis com a AWS CLI
<a name="permissions-executionrole-api"></a>

Para criar uma função de execução com a AWS Command Line Interface (AWS CLI), use o comando **create-role**. Ao usar esse comando, é possível especificar a política de confiança em linha. A política de confiança de um perfil concede a permissão de entidades principais especificadas para assumir o perfil. No exemplo a seguir, você concede à entidade principal do serviço Lambda permissão para assumir seu perfil. Os requisitos para escapar de aspas na string JSON podem variar dependendo do shell.

```
aws iam create-role \
  --role-name lambda-ex \
  --assume-role-policy-document '{"Version": "2012-10-17",		 	 	 "Statement": [{ "Effect": "Allow", "Principal": {"Service": "lambda.amazonaws.com"}, "Action": "sts:AssumeRole"}]}'
```

Também é possível definir a política de confiança para a função usando um arquivo JSON separado. No exemplo a seguir, `trust-policy.json` é um arquivo no diretório atual.

**Example trust-policy.json**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

```
aws iam create-role \
  --role-name lambda-ex \
  --assume-role-policy-document file://trust-policy.json
```

Para adicionar permissões à função, use o comando **attach-policy-to-role**. Os comandos a seguir adicionam a política gerenciada `AWSLambdaBasicExecutionRole` ao perfil de execução `lambda-ex`.

```
aws iam attach-role-policy --role-name lambda-ex --policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
```

Depois de criar o perfil de execução, anexe-o à sua função. Ao [criar uma função no console do Lambda](getting-started.md#getting-started-create-function), você poderá anexar qualquer perfil de execução criado anteriormente à função. Se você quiser anexar um novo perfil de execução a uma função existente, siga as etapas em [Atualizar o perfil de execução de uma função](permissions-executionrole-update.md#update-execution-role).

## Conceda acesso de menor privilégio à sua função de execução do Lambda
<a name="permissions-executionrole-least-privilege"></a>

Quando você cria um perfil do IAM pela primeira vez para sua função do Lambda durante a fase de desenvolvimento, às vezes você pode conceder permissões além do que é necessário. Antes de publicar sua função no ambiente de produção, como prática recomendada, ajuste a política para incluir somente as permissões necessárias. Para obter mais informações, consulte [Aplicar permissões de privilégio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege), no *Guia do usuário do IAM*.

Use o IAM Access Analyzer para ajudar a identificar as permissões necessárias para a política de função de execução do IAM. O IAM Access Analyzer revisa seus logs do AWS CloudTrail para o intervalo de datas especificado e gera um modelo de política com apenas as permissões que a função utilizou durante esse período. Você pode usar o modelo para criar uma política gerenciada com permissões refinadas e anexá-la à função do IAM. Dessa forma, você concede apenas as permissões necessárias à interação com os recursos da AWS, de acordo com a especificidade do caso de uso.

Para obter mais informações, consulte [Generate policies based on access activity](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_generate-policy.html) (Gerar políticas com base na atividade de acesso), no *Guia do usuário do IAM*.

# Visualizar e atualizar permissões no perfil de execução
<a name="permissions-executionrole-update"></a>

Este tópico aborda como você pode visualizar e atualizar o [perfil de execução](lambda-intro-execution-role.md) da sua função.

**Topics**
+ [

## Visualizar o perfil de execução de uma função
](#view-execution-role)
+ [

## Atualizar o perfil de execução de uma função
](#update-execution-role)

## Visualizar o perfil de execução de uma função
<a name="view-execution-role"></a>

Para visualizar o perfil de execução de uma função, use o console do Lambda.

**Para visualizar o perfil de execução de uma função (console)**

1. Abra a [página Funções](https://console.aws.amazon.com/lambda/home#/functions) do console do Lambda.

1. Escolha o nome de uma função.

1. Escolha **Configuration** (Configuração) e depois **Permissions** (Permissões).

1. Em **Perfil de execução**, é possível ver o perfil que está sendo usado atualmente como perfil de execução da função. Por conveniência, você pode visualizar todos os recursos e ações que a função pode acessar na seção **Resumo do recurso**. Você também pode escolher um serviço na lista suspensa para ver as permissões relacionadas a ele.

## Atualizar o perfil de execução de uma função
<a name="update-execution-role"></a>

Adicione ou remova permissões da função de execução de uma função a qualquer momento ou configure a função para usar uma diferente. Se sua função precisar acessar outros serviços ou recursos, você deverá adicionar as permissões necessárias ao perfil de execução.

Ao adicionar permissões à sua função, faça também uma atualização simples em seu código ou configuração. Isso força as instâncias em execução da função, com credenciais desatualizadas, a serem encerradas e substituídas.

Para atualizar o perfil de execução de uma função, use o console do Lambda.

**Para atualizar o perfil de execução de uma função (console)**

1. Abra a [página Funções](https://console.aws.amazon.com/lambda/home#/functions) do console do Lambda.

1. Escolha o nome de uma função.

1. Escolha **Configuration** (Configuração) e depois **Permissions** (Permissões).

1. Em **Perfil de execução**, escolha **Editar**.

1. Se você quiser atualizar sua função para usar um perfil diferente como perfil de execução, escolha o novo perfil no menu suspenso em **Perfil existente**.
**nota**  
Se desejar atualizar as permissões em um perfil de execução existente, você só poderá fazer isso no console do AWS Identity and Access Management (IAM).

   Se você quiser criar um novo perfil para usar como perfil de execução, escolha **Criar um novo perfil baseado em modelos de políticas da AWS** em **Perfil de execução**. Em seguida, insira um nome para seu novo perfil em **Nome do perfil** e especifique as políticas que você deseja anexar ao novo perfil em **Modelos de política**.

1. Escolha **Salvar**.

# Trabalhar com políticas gerenciadas pela AWS no perfil de execução
<a name="permissions-managed-policies"></a>

As seguintes políticas gerenciadas da AWS oferecem permissões obrigatórias para o uso dos recursos do Lambda:


| Alteração | Descrição | Data | 
| --- | --- | --- | 
|  **[ AWSLambdaMSKExecutionRole](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaMSKExecutionRole)**: o Lambda adicionou a permissão [kafka:DescribeClusterV2](https://docs.aws.amazon.com/MSK/2.0/APIReference/v2-clusters-clusterarn.html#v2-clusters-clusterarnget) a esta política.  |  `AWSLambdaMSKExecutionRole` concede permissões para ler e acessar registros de um cluster do Amazon Managed Streaming for Apache Kafka (Amazon MSK), gerenciar interfaces de rede elástica (ENIs) e gravar no CloudWatch Logs.  |  17 de junho de 2022  | 
|  **[AWSLambdaBasicExecutionRole:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSLambdaBasicExecutionRole` concede permissões para carregar registros para o CloudWatch  |  14 de fevereiro de 2022  | 
|  **[AWSLambdaDynamoDBExecutionRole:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaDynamoDBExecutionRole)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSLambdaDynamoDBExecutionRole` concede permissões para ler registros de um fluxo do Amazon DynamoDB Streams e gravar no CloudWatch Logs.  |  14 de fevereiro de 2022  | 
|  **[AWSLambdaKinesisExecutionRole:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaKinesisExecutionRole)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSLambdaKinesisExecutionRole` concede permissões para ler eventos de um fluxo de dados do Amazon Kinesis e gravar no CloudWatch Logs.  |  14 de fevereiro de 2022  | 
|  **[AWSLambdaMSKExecutionRole:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaMSKExecutionRole)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSLambdaMSKExecutionRole` concede permissões para ler e acessar registros de um cluster do Amazon Managed Streaming for Apache Kafka (Amazon MSK), gerenciar interfaces de rede elástica (ENIs) e gravar no CloudWatch Logs.  |  14 de fevereiro de 2022  | 
|  **[AWSLambdaSQSQueueExecutionRole:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaSQSQueueExecutionRole)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSLambdaSQSQueueExecutionRole` concede permissões para ler uma mensagem de uma fila do Amazon Simple Queue Service (Amazon SQS) e gravar no CloudWatch Logs.  |  14 de fevereiro de 2022  | 
|  **[AWSLambdaVPCAccessExecutionRole:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSLambdaVPCAccessExecutionRole` concede permissões para gerenciar ENIs em uma Amazon VPC e gravar no CloudWatch Logs.  |  14 de fevereiro de 2022  | 
|  **[AWSXRayDaemonWriteAccess:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSXRayDaemonWriteAccess)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AWSXRayDaemonWriteAccess` concede permissões para carregar dados de rastreamento no X-Ray.  |  14 de fevereiro de 2022  | 
|  **[CloudWatchLambdaInsightsExecutionRolePolicy:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/CloudWatchLambdaInsightsExecutionRolePolicy)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `CloudWatchLambdaInsightsExecutionRolePolicy` concede permissão para gravar métricas de runtime no CloudWatch Lambda Insights.  |  14 de fevereiro de 2022  | 
|  **[AmazonS3ObjectLambdaExecutionRolePolicy:](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AmazonS3ObjectLambdaExecutionRolePolicy)** o Lambda começou a monitorar mudanças feitas a essa política.  |  `AmazonS3ObjectLambdaExecutionRolePolicy` concede permissões para interagir com o Lamda de objetos do Amazon Simple Storage Service (Amazon S3) e gravar no CloudWatch Logs.  |  14 de fevereiro de 2022  | 

Para alguns atributos, o console do Lambda tenta adicionar permissões ausentes à sua função de execução em uma política gerenciada pelo cliente. Essas políticas podem tornar-se numerosas. Para evitar a criação de políticas adicionais, acrescente as políticas gerenciadas da AWS relevantes à função de execução antes de habilitar os atributos.

Quando você usa um [mapeamento de fontes de eventos](invocation-eventsourcemapping.md) para invocar a função, o Lambda usa a função de execução a fim de ler dados de eventos. Por exemplo, um mapeamento da origem do evento para o Kinesis lê eventos de um fluxo de dados e os envia para a sua função em lotes. 

Quando um serviço assume uma função em sua conta, você pode incluir as chaves de contexto de condição global `aws:SourceAccount` e `aws:SourceArn` em sua política de confiança de função para limitar o acesso à função apenas a solicitações geradas pelos recursos esperados. Para obter mais informações, consulte [Prevenção de confused deputy entre serviços para o AWS Security Token Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html#cross-service-confused-deputy-prevention).

Além das políticas gerenciadas da AWS, o console do Lambda fornece modelos para criar uma política personalizada com as permissões para casos de uso adicionais. Ao criar uma função no console do Lambda, opte por criar uma nova função de execução com permissões de um ou mais modelos. Esses modelos também são aplicados automaticamente quando você cria uma função a partir de um esquema, ou quando configura opções que exijam acesso a outros serviços. Os modelos de exemplo estão disponíveis no [repositório do GitHub](https://github.com/awsdocs/aws-lambda-developer-guide/tree/master/iam-policies) deste guia.

# Usar o ARN da função de origem para controlar o comportamento de acesso da função
<a name="permissions-source-function-arn"></a>

É comum que o seu código de função do Lambda faça solicitações de API para outros Serviços da AWS. Para fazer essas solicitações, o Lambda gera um conjunto efêmero de credenciais, assumindo a função de execução da sua função. Essas credenciais estão disponíveis como variáveis ​​de ambiente durante a invocação da sua função. Ao trabalhar com SDKs da AWS, não é necessário fornecer credenciais para o SDK diretamente no código. Por padrão, a cadeia de provedores de credenciais verifica sequencialmente cada local em que você pode definir credenciais e seleciona o primeiro disponível, que geralmente corresponde às variáveis de ambiente (`AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` e `AWS_SESSION_TOKEN`).

O Lambda injetará o ARN da função de origem no contexto de credenciais se a solicitação for uma solicitação de API da AWS proveniente de seu ambiente de execução. O Lambda também injetará o ARN da função de origem para as seguintes solicitações de API da AWS que o Lambda faz em seu nome de forma externa ao ambiente de execução:


| Serviço | Ação | Motivo | 
| --- | --- | --- | 
| CloudWatch Logs | CreateLogGroup, CreateLogStream, PutLogEvents |  Para armazenar logs em um grupo de logs do CloudWatch Logs.  | 
| X-Ray | PutTraceSegments |  Para enviar dados de rastreamento para o X-Ray.  | 
| Amazon EFS | ClientMount |  Para conectar a função a um sistema de arquivos do Amazon Elastic File System (Amazon EFS).  | 

Outras chamadas de API da AWS feitas pelo Lambda em seu nome de forma externa ao seu ambiente de execução e que usam o mesmo perfil de execução não contêm o ARN da função de origem. Alguns exemplos dessas chamadas de API fora do ambiente de execução incluem:
+ Chamadas para o AWS Key Management Service (AWS KMS) para criptografar e descriptografar variáveis de ambiente automaticamente.
+ Chamadas para o Amazon Elastic Compute Cloud (Amazon EC2) com a finalidade de criar interfaces de rede elástica (ENIs) para uma função habilitada para VPC.
+ Chamadas para Serviços da AWS, como o Amazon Simple Queue Service (Amazon SQS), para leitura de uma origem de evento configurada como um [mapeamento da origem do evento](invocation-eventsourcemapping.md).

Com o ARN da função de origem no contexto de credenciais, você pode verificar se uma chamada ao seu recurso veio do código de uma função do Lambda específica. Para verificar isso, use a chave de condição `lambda:SourceFunctionArn` em uma política baseada em identidade do IAM ou uma [política de controle de serviços (SCP)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html).

**nota**  
Não é possível usar a chave de condição `lambda:SourceFunctionArn` em políticas baseadas em recursos.

Com essa chave de condição nas políticas baseadas em identidade ou SCPs, você pode implementar controles de segurança para as ações de API que o código da função realiza em outros Serviços da AWS. Isso tem algumas aplicações de segurança importantes, como ajudar a identificar a origem de um vazamento de credenciais.

**nota**  
A chave de condição `lambda:SourceFunctionArn` é diferente das chaves de condição `lambda:FunctionArn` e `aws:SourceArn`. A chave de condição `lambda:FunctionArn` aplica-se somente a [mapeamentos da origem do evento](invocation-eventsourcemapping.md) e ajuda a definir quais funções a sua origem de evento pode invocar. A chave de condição `aws:SourceArn` se aplica apenas a políticas nas quais a função do Lambda é o recurso visado e ajuda a definir quais outros recursos e Serviços da AWS podem invocar essa função. A chave de condição `lambda:SourceFunctionArn` pode ser aplicada a qualquer política baseada em identidade ou SCP para definir as funções específicas do Lambda que têm permissões para fazer determinadas chamadas de API da AWS para outros recursos.

Para usar `lambda:SourceFunctionArn` na sua apólice, inclua-a como uma condição com qualquer um dos [operadores de condição de ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_ARN). O valor da chave deve ser um ARN válido.

Por exemplo, suponha que o código da função do Lambda faça uma chamada `s3:PutObject` que se destina a um bucket do Amazon S3 específico. Talvez você queira permitir que somente uma função do Lambda específica tenha acesso `s3:PutObject` a esse bucket. Nesse caso, a função de execução da função deve ter uma política anexada similar a esta:

**Example política que concede acesso para uma função do Lambda específica a um recurso do Amazon S3**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ExampleSourceFunctionArn",
            "Effect": "Allow",
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::lambda_bucket/*",
            "Condition": {
                "ArnEquals": {
                    "lambda:SourceFunctionArn": "arn:aws:lambda:us-east-1:123456789012:function:source_lambda"
                }
            }
        }
    ]
}
```

Essa política apenas permite acesso a `s3:PutObject` se a origem for a função do Lambda com o ARN `arn:aws:lambda:us-east-1:123456789012:function:source_lambda`. Essa política não permite acesso a `s3:PutObject` para qualquer outra identidade de chamada. Isso acontece mesmo que uma função ou entidade diferente faça uma chamada `s3:PutObject` com a mesma função de execução.

**nota**  
A chave de condição `lambda:SourceFunctionARN` não é compatível com versões da função do Lambda ou aliases da função. Se você usar o ARN para uma determinada versão ou alias da função, ela não terá permissão para realizar a ação especificada. Certifique-se de usar o ARN não qualificado para sua função sem uma versão ou sufixo de alias.

Você também pode usar `lambda:SourceFunctionArn` em SCPs. Por exemplo, suponha que você queira restringir o acesso ao seu bucket a um único código de função do Lambda ou às chamadas de uma nuvem privada virtual (VPC) da Amazon específica. O SCP a seguir ilustra isso.

**Example política que nega acesso ao Amazon S3 sob condições específicas**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "s3:*"
            ],
            "Resource": "arn:aws:s3:::lambda_bucket/*",
            "Effect": "Deny",
            "Condition": {
                "StringNotEqualsIfExists": {
                    "aws:SourceVpc": [
                        "vpc-12345678"
                    ]
                }
            }
        },
        {
            "Action": [
                "s3:*"
            ],
            "Resource": "arn:aws:s3:::lambda_bucket/*",
            "Effect": "Deny",
            "Condition": {
                "ArnNotEqualsIfExists": {
                    "lambda:SourceFunctionArn": "arn:aws:lambda:us-east-1:123456789012:function:source_lambda"
                }
            }
        }
    ]
}
```

Essa política nega todas as ações do S3, a menos que sejam provenientes de uma função específica do Lambda com o ARN `arn:aws:lambda:*:123456789012:function:source_lambda` ou que sejam provenientes da VPC especificada. O operador `StringNotEqualsIfExists` instrui o IAM a processar essa condição somente se a chave `aws:SourceVpc` estiver presente na solicitação. Da mesma forma, o IAM apenas considerará o operador`ArnNotEqualsIfExists` somente se o `lambda:SourceFunctionArn` existir.