

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Registro em log que requer permissões [v1] adicionais
<a name="AWS-vended-logs-permissions"></a>

Alguns AWS serviços usam uma infraestrutura comum para enviar seus CloudWatch registros para Logs, Amazon S3 ou Firehose. Para permitir que os AWS serviços listados na tabela anterior enviem seus registros para esses destinos, você deve estar logado como um usuário com determinadas permissões.

Além disso, é necessário conceder permissões AWS para permitir que os registros sejam enviados. AWS pode criar automaticamente essas permissões quando os registros são configurados, ou você mesmo pode criá-las antes de configurar o registro. Para entrega entre contas, você mesmo deve criar manualmente as políticas de permissão.

Se você optar por configurar AWS automaticamente as permissões e as políticas de recursos necessárias quando você ou alguém em sua organização configura o envio de registros pela primeira vez, o usuário que está configurando o envio de registros deverá ter determinadas permissões, conforme explicado posteriormente nesta seção. Se preferir, você pode criar as políticas de recursos, e os usuários que configurarem o envio de logs não precisarão de tantas permissões.

Os tópicos a seguir fornecem mais detalhes sobre cada um desses destinos.

**Topics**
+ [Registros enviados para CloudWatch Logs](AWS-logs-infrastructure-CWL.md)
+ [Logs enviados ao Amazon S3](AWS-logs-infrastructure-S3.md)
+ [Logs enviados ao Firehose](AWS-logs-infrastructure-Firehose.md)

# Registros enviados para CloudWatch Logs
<a name="AWS-logs-infrastructure-CWL"></a>

**Importante**  
Quando você configura os tipos de registro na lista a seguir para serem enviados para o CloudWatch Logs, AWS cria ou altera as políticas de recursos associadas ao grupo de registros que recebe os registros, se necessário. Continue lendo esta seção para ver os detalhes.

Esta seção se aplica quando os tipos de registros listados na tabela da seção anterior são enviados para CloudWatch Logs:

**Permissões de usuário**

Para poder configurar o envio de qualquer um desses tipos de CloudWatch registros para o Logs pela primeira vez, você precisa estar conectado a uma conta com as seguintes permissões.
+ `logs:CreateLogDelivery`
+ `logs:PutResourcePolicy`
+ `logs:DescribeResourcePolicies`
+ `logs:DescribeLogGroups`
**nota**  
Quando você especificar a permissão `logs:DescribeLogGroups`, `logs:DescribeResourcePolicies` ou `logs:PutResourcePolicy`, certifique-se de definir o ARN da linha `Resource` para que use um caractere curinga `*`, em vez de especificar apenas um único nome de grupo de logs. Por exemplo, `"Resource": "arn:aws:logs:us-east-1:111122223333:log-group:*"`.

Se algum desses tipos de registros já estiver sendo enviado para um grupo de CloudWatch registros no Logs, para configurar o envio de outro desses tipos de registros para esse mesmo grupo de registros, você só precisará da `logs:CreateLogDelivery` permissão.

**Política de recursos do grupo de logs**

O grupo de logs para o qual os logs estão sendo enviados deve ter uma política de recursos que contenha determinadas permissões. Se o grupo de registros atualmente não tiver uma política de recursos e o usuário que configura o registro tiver as `logs:DescribeLogGroups` permissões`logs:PutResourcePolicy`,`logs:DescribeResourcePolicies`, e para o grupo de registros, AWS criará automaticamente a política a seguir quando você começar a enviar os CloudWatch registros para o Logs. Para assinaturas recém-criadas, as políticas de recursos são configuradas no nível do grupo de registros e têm um tamanho máximo de 51.200 bytes. Se uma política de recursos existente em nível de conta já conceder permissões por meio de curingas, uma política separada em nível de grupo de registros não seria criada. Para verificar a política de recursos em nível de grupo de registros para um grupo de registros específico, use o `describe-resource-policies` comando com o `--resource-arn` parâmetro definido como o ARN do grupo de registros e o parâmetro definido como. `--policy-scope` `RESOURCE`

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AWSLogDeliveryWrite20150319",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "delivery.logs.amazonaws.com"
                ]
            },
            "Action": [
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:111122223333:log-group:my-log-group:log-stream:*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": [
                        "0123456789"
                    ]
                },
                "ArnLike": {
                    "aws:SourceArn": [
                        "arn:aws:logs:us-east-1:111122223333:*"
                    ]
                }
            }
        }
    ]
}
```

------

O limite da política de recursos do grupo de registros é de 51.200 bytes. Quando esse limite é atingido, a AWS não pode adicionar novas permissões. Isso exige que os clientes modifiquem manualmente a política para conceder ao principal `delivery.logs.amazonaws.com` serviço permissões sobre as `logs:PutLogEvents` ações `logs:CreateLogStream` e. Os clientes devem usar um prefixo de nome de grupo de registros com curingas, como, `/aws/vendedlogs/*` e usar esse nome de grupo de registros para a criação futura do Delivery.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AWSLogDeliveryWrite20150319",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "delivery.logs.amazonaws.com"
                ]
            },
            "Action": [
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:111122223333:log-group:my-log-group/aws/vendedlogs/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": [
                        "0123456789"
                    ]
                },
                "ArnLike": {
                    "aws:SourceArn": [
                        "arn:aws:logs:us-east-1:111122223333:*"
                    ]
                }
            }
        }
    ]
}
```

------

# Logs enviados ao Amazon S3
<a name="AWS-logs-infrastructure-S3"></a>

Quando você define os registros a serem enviados para o Amazon S3, AWS cria ou altera as políticas de recursos associadas ao bucket do S3 que está recebendo os registros, se necessário.

Os logs publicados diretamente no Amazon S3 são publicados em um bucket especificado por você. Um ou mais arquivos de log são criados a cada cinco minutos no bucket especificado.

Quando você entrega logs a um bucket do Amazon S3 pela primeira vez, o serviço que entrega logs registra o proprietário do bucket para garantir que os logs sejam entregues somente a um bucket pertencente a essa conta. Consequentemente, para alterar o proprietário do bucket do Amazon S3, é necessário recriar ou atualizar a assinatura de log no serviço de origem.

**nota**  
CloudFront usa um modelo de permissões diferente dos outros serviços que enviam registros vendidos para o S3. Para obter mais informações, consulte [Permissões necessárias para configurar o registro padrão e acessar seus arquivos de log](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html#AccessLogsBucketAndFileOwnership).  
Além disso, se você usar o mesmo bucket do S3 para registros de CloudFront acesso e outra fonte de log, habilitar a ACL no bucket CloudFront também concederá permissão a todas as outras fontes de log que usam esse bucket.

**Importante**  
Se você for enviar logs para um bucket do Amazon S3 e a política do bucket contiver um elemento `NotAction` ou `NotPrincipal`, adicionar automaticamente permissões de entrega de logs ao bucket e criar uma assinatura de log não funcionará. Para criar uma assinatura de logs com sucesso, você precisa adicionar manualmente as permissões de entrega de logs à política do bucket e depois criar a assinatura de logs. Para obter mais informações, consulte as instruções desta seção.  
Se o bucket tiver criptografia do lado do servidor usando uma AWS KMS chave gerenciada pelo cliente, você também deverá adicionar a política de chaves para sua chave gerenciada pelo cliente. Para obter mais informações, consulte [Criptografia no lado do servidor de bucket do Amazon S3](#AWS-logs-SSE-KMS-S3).  
Se o bucket de destino tiver SSE-KMS e uma chave de bucket ativados, a política de chave KMS gerenciada pelo cliente anexada não funcionará mais conforme o esperado para todas as solicitações. Para obter mais informações, consulte [ Reduzir o custo da SSE-KMS usando chaves de bucket do Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html).  
Se você estiver usando registros vendidos e criptografia S3 com uma AWS KMS chave gerenciada pelo cliente, deverá usar um AWS KMS ARN de chave totalmente qualificado em vez de um ID de chave ao configurar o bucket. Para obter mais informações, consulte [ put-bucket-encryption](https://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-encryption.html).

**Permissões de usuário**

Para poder configurar o envio de qualquer um desses tipos de logs ao Amazon S3 pela primeira vez, é necessário conectar-se a uma conta com as permissões a seguir.
+ `logs:CreateLogDelivery`
+ `S3:GetBucketPolicy`
+ `S3:PutBucketPolicy`

Se algum desses tipos de logs já estiver sendo enviado a um bucket do Amazon S3, para configurar o envio de outro desses tipos de logs para esse mesmo bucket, apenas a permissão `logs:CreateLogDelivery` será necessária.

**Política de recursos do bucket do S3**

O bucket do S3 para o qual os logs estão sendo enviados deve ter uma política de recursos que contenha determinadas permissões. Se o bucket atualmente não tem uma política de recursos e o usuário que está configurando o log tem as permissões `S3:GetBucketPolicy` e `S3:PutBucketPolicy` para o bucket, a AWS cria automaticamente a seguinte política quando você começa a enviar os logs ao Amazon S3.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "AWSLogDeliveryWrite20150319",
    "Statement": [
        {
            "Sid": "AWSLogDeliveryAclCheck",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": [
                        "0123456789"
                    ]
                },
                "ArnLike": {
                    "aws:SourceArn": [
                        "arn:aws:logs:us-east-1:111122223333:*"
                    ]
                }
            }
        },
        {
            "Sid": "AWSLogDeliveryWrite",
            "Effect": "Allow",
            "Principal": {
                "Service": "delivery.logs.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/AWSLogs/account-ID/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control",
                    "aws:SourceAccount": [
                        "0123456789"
                    ]
                },
                "ArnLike": {
                    "aws:SourceArn": [
                        "arn:aws:logs:us-east-1:111122223333:*"
                    ]
                }
            }
        }
    ]
}
```

------

Na política anterior, para `aws:SourceAccount`, especifique a lista de IDS de conta para os quais os logs estão sendo entregues a esse bucket. Para`aws:SourceArn`, especifique a lista ARNs do recurso que gera os registros, no formulário`arn:aws:logs:source-region:source-account-id:*`. 

Se o bucket tiver uma política de recursos, mas ela não contiver a instrução exibida na política anterior, e o usuário configurando o log tiver as permissões `S3:GetBucketPolicy` e `S3:PutBucketPolicy` para o bucket, essa instrução será anexada à política de recursos do bucket.

**nota**  
Em alguns casos, você pode ver `AccessDenied` erros AWS CloudTrail se a `s3:ListBucket` permissão não tiver sido concedida`delivery.logs.amazonaws.com`. Para evitar esses erros em seus CloudTrail registros, você deve conceder a `s3:ListBucket` permissão `delivery.logs.amazonaws.com` e incluir `Condition` os parâmetros mostrados com o conjunto de `s3:GetBucketAcl` permissões na política de bucket anterior. Para simplificar isso, em vez de criar uma nova `Statement`, você pode atualizar `AWSLogDeliveryAclCheck` diretamente para `“Action”: [“s3:GetBucketAcl”, “s3:ListBucket”]`

## Criptografia no lado do servidor de bucket do Amazon S3
<a name="AWS-logs-SSE-KMS-S3"></a>

Você pode proteger os dados em seu bucket do Amazon S3 habilitando a criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3) ou a criptografia do lado do servidor com uma chave armazenada em (SSE-KMS). AWS KMS AWS Key Management Service Para obter mais informações, consulte [Proteger dados usando a criptografia no lado do servidor](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html). 

Se você escolher SSE-S3, nenhuma configuração adicional será necessária. O Amazon S3 lida com a chave de criptografia.

**Atenção**  
Se você escolher o SSE-KMS, deverá usar uma chave gerenciada pelo cliente, pois o uso de uma chave AWS gerenciada não é suportado nesse cenário. Se você configurar a criptografia usando uma chave AWS gerenciada, os registros serão entregues em um formato ilegível.

Ao usar uma AWS KMS chave gerenciada pelo cliente, você pode especificar o Amazon Resource Name (ARN) da chave gerenciada pelo cliente ao ativar a criptografia do bucket. Você precisa adicionar o seguinte à política de chaves da chave gerenciada pelo cliente (não à política de bucket para o bucket do S3), para que a conta de entrega de log possa gravar no bucket do S3.

Se você escolher o SSE-KMS, deverá usar uma chave gerenciada pelo cliente, porque o uso de uma chave gerenciada pela AWS não tem suporte neste cenário. Ao usar uma AWS KMS chave gerenciada pelo cliente, você pode especificar o Amazon Resource Name (ARN) da chave gerenciada pelo cliente ao ativar a criptografia do bucket. Você precisa adicionar o seguinte à política de chaves da chave gerenciada pelo cliente (não à política de bucket para o bucket do S3), para que a conta de entrega de log possa gravar no bucket do S3.

```
{
    "Sid": "Allow Logs Delivery to use the key", 
    "Effect": "Allow", 
    "Principal": {
        "Service": [ "delivery.logs.amazonaws.com" ] 
    }, 
    "Action": [ 
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
    ],
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "aws:SourceAccount": ["0123456789"]
        },
        "ArnLike": {
            "aws:SourceArn": ["arn:aws:logs:us-east-1:0123456789:*"]
        }
        }
}
```

Para `aws:SourceAccount`, especifique a lista de IDS de conta para os quais os logs estão sendo entregues a esse bucket. Para`aws:SourceArn`, especifique a lista ARNs do recurso que gera os registros, no formulário`arn:aws:logs:source-region:source-account-id:*`. 

# Logs enviados ao Firehose
<a name="AWS-logs-infrastructure-Firehose"></a>

Esta seção se aplica quando os tipos de logs listados na tabela da seção anterior são enviados ao Firehose:

**Permissões de usuário**

Para poder configurar o envio de qualquer um desses tipos de logs ao Firehose pela primeira vez, você deve fazer login em uma conta com as permissões a seguir.
+ `logs:CreateLogDelivery`
+ `firehose:TagDeliveryStream`
+ `iam:CreateServiceLinkedRole`

Se algum desses tipos de log já estiver sendo enviado ao Firehose, para configurar o envio de outro tipo de log para o Firehose, você só precisará ter as permissões `logs:CreateLogDelivery` e `firehose:TagDeliveryStream`.

**Funções do IAM usadas para permissões**

Como o Firehose não usa políticas de recursos, AWS usa funções do IAM ao configurar esses registros para serem enviados ao Firehose. AWS cria uma função vinculada ao serviço chamada. **AWSServiceRoleForLogDelivery** Essa função vinculada ao serviço inclui as permissões a seguir.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "firehose:PutRecord",
                "firehose:PutRecordBatch",
                "firehose:ListTagsForDeliveryStream"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/LogDeliveryEnabled": "true"
                }
            },
            "Effect": "Allow"
        }
    ]
}
```

------

Essa função vinculada ao serviço concede permissão para todos os streams de entrega do Firehose que têm a tag definida como. `LogDeliveryEnabled` `true` AWS fornece essa tag ao stream de entrega de destino quando você configura o registro. 

Essa função vinculada ao serviço também tem uma política de confiança que permite que a entidade de serviço `delivery.logs.amazonaws.com` assuma a função vinculada ao serviço necessária. Essa política de confiança é a seguinte:

------
#### [ JSON ]

****  

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

------