

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á.

# Como usar chaves gerenciadas pelo cliente para criptografia
<a name="custom-keys-certs"></a>

Opcionalmente, você pode fornecer uma [Customer-managed chave](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) para criptografia de dados em seu ambiente. Você deve criar uma chave KMS gerenciada pelo cliente na mesma região da sua instância do ambiente do Amazon MWAA e do seu bucket do Amazon S3 onde você armazena recursos para seus fluxos de trabalho. Se a chave KMS gerenciada pelo cliente que você especificou estiver em uma conta diferente da que foi usada para configurar um ambiente, será necessário especificar a chave usando o respectivo ARN para acesso entre contas. Para obter mais informações sobre como criar chaves, consulte [Criação de chaves](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) no *Guia do desenvolvedor do AWS Key Management Service *.

## O que é compatível
<a name="custom-keys-grants-support"></a>


| AWS KMS recurso | Compatível | 
| --- | --- | 
| Um [ID de chave ou ARN AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/find-cmk-id-arn.html). | Sim | 
| Um [alias de chave AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html). | Não | 
| Uma [chave de várias regiões AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html). | Não | 

## Como usar concessões para criptografia
<a name="custom-keys-grants-provide"></a>

Este tópico descreve as concessões que o Amazon MWAA atribui a uma chave do KMS gerenciada pelo cliente em seu nome para criptografar e descriptografar os dados.

### Como funciona
<a name="custom-keys-certs-grants"></a>

[https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)

A política de chave é usada quando a permissão é principalmente estática e usada no modo de serviço síncrono. A concessão é usada quando são necessárias permissões mais dinâmicas e granulares, como quando um serviço precisa definir permissões de acesso diferentes para si mesmo ou para outras contas.

O Amazon MWAA usa e anexa quatro políticas de concessão à sua chave KMS gerenciada pelo cliente. Isso se deve às permissões granulares necessárias para que um ambiente criptografe dados em repouso a partir de CloudWatch Logs, da fila do Amazon SQS, do banco de dados do banco de dados Aurora PostgreSQL, dos segredos do Secrets Manager, do bucket do Amazon S3 e das tabelas do DynamoDB.

Ao criar um ambiente do Amazon MWAA e especificar uma chave KMS gerenciada pelo cliente, o Amazon MWAA anexa as políticas de concessão à sua chave KMS gerenciada pelo cliente. Essas políticas permitem que o Amazon MWAA em `airflow.{{us-east-1}}.amazonaws.com` use sua chave KMS gerenciada pelo cliente para criptografar recursos em seu nome que são de propriedade do Amazon MWAA.

O Amazon MWAA cria e anexa concessões adicionais a uma chave KMS especificada em seu nome. Isso inclui políticas para retirar uma concessão se você excluir seu ambiente, usar sua chave KMS gerenciada pelo cliente para Client-Side criptografia (CSE) e para a função de AWS Fargate execução que precisa acessar segredos protegidos por sua chave gerenciada pelo cliente no Secrets Manager.

## Políticas de concessões
<a name="custom-keys-certs-grant-policies"></a>

O Amazon MWAA adiciona as seguintes concessões de [políticas baseadas em recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html) em seu nome a uma chave KMS gerenciada pelo cliente. Essas políticas permitem que o beneficiário e a entidade principal (Amazon MWAA) realizem ações definidas na política.

### Concessão 1: usada para criar recursos do plano de dados
<a name="custom-keys-certs-grant-policies-1"></a>

```
{
  "Name": "mwaa-grant-for-env-mgmt-role-{{environment name}}",
  "GranteePrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "RetiringPrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "Operations": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:CreateGrant",
    "kms:DescribeKey",
    "kms:RetireGrant"
  ]
}
```

### Concessão 2: usada para o acesso `ControllerLambdaExecutionRole`
<a name="custom-keys-certs-grant-policies-2"></a>

```
{
  "Name": "mwaa-grant-for-lambda-exec-{{environment name}}",
  "GranteePrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "RetiringPrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "Operations": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey",
    "kms:RetireGrant"
  ]
}
```

### Concessão 3: usada para o acesso `CfnManagementLambdaExecutionRole`
<a name="custom-keys-certs-grant-policies-3"></a>

```
{
  "Name": " mwaa-grant-for-cfn-mgmt-{{environment name}}",
  "GranteePrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "RetiringPrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "Operations": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey"
  ]
}
```

### Concessão 4: usada para o perfil de execução do Fargate para acessar segredos de back-end
<a name="custom-keys-certs-grant-policies-4"></a>

```
{
  "Name": "mwaa-fargate-access-for-{{environment name}}",
  "GranteePrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "RetiringPrincipal": "airflow.{{us-east-1}}.amazonaws.com",
  "Operations": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey",
    "kms:RetireGrant"
  ]
}
```

## Como anexar políticas de chave a uma chave gerenciada pelo cliente
<a name="custom-keys-certs-grant-policies-attach"></a>

Se você optar por usar sua própria chave KMS gerenciada pelo cliente com o Amazon MWAA, deverá anexar a seguinte política à chave para permitir que o Amazon MWAA a use para criptografar seus dados.

Se a chave KMS gerenciada pelo cliente que você usou para seu ambiente Amazon MWAA ainda não estiver configurada para funcionar CloudWatch, você deverá atualizar a [política de chaves](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) para permitir registros criptografados. CloudWatch Para obter mais informações, consulte o [AWS Key Management Service serviço Criptografar dados de log no CloudWatch uso](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html).

O exemplo a seguir representa uma política fundamental para o CloudWatch Logs. Substituir os valores de amostra fornecidos para a região.

```
{
  "Effect": "Allow",
  "Principal": {
    "Service": "logs.us-east-1.amazonaws.com"
  },
  "Action": [
    "kms:Encrypt*",
    "kms:Decrypt*",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:Describe*"
  ],
  "Resource": "*",
  "Condition": {
    "ArnLike": {
      "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:us-east-1:*:*"
    }
  }
}
```