

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

# Criptografia de dados em repouso para o Amazon SES
<a name="encryption-rest"></a>

Por padrão, o Amazon SES criptografa todos os dados em repouso. Por padrão, a criptografia ajuda a reduzir a sobrecarga operacional e a complexidade envolvidas na proteção de dados. A criptografia também permite que você crie arquivos do Mail Manager que atendam aos rigorosos requisitos regulatórios e de conformidade de criptografia.

O SES fornece as seguintes opções de criptografia:
+ **AWS chaves de propriedade** — o SES as usa por padrão. Você não pode visualizar, gerenciar ou usar chaves AWS próprias nem auditar seu uso. No entanto, não é necessário tomar nenhuma medida nem alterar qualquer programa para proteger as chaves que criptografam seus dados. Para obter mais informações, consulte chaves de propriedade da [AWS no ](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk)Guia do desenvolvedor do *AWS Key Management Service *. 
+ **Chaves gerenciadas pelo cliente**: o SES oferece suporte ao uso de chaves simétricas gerenciadas pelo cliente que você cria, possui e gerencia. Uma vez que você tem controle total da criptografia, é possível realizar tarefas como: 
  + Estabelecer e manter as políticas de chave
  + Estabelecer e manter subsídios e IAM policies
  + Habilitar e desabilitar políticas de chaves
  + Alternar os materiais de criptografia de chave
  + Adicionar etiquetas
  + Criar réplicas de chaves
  + Chaves de agendamento para exclusão

  Para usar sua própria chave, escolha uma chave gerenciada pelo cliente ao criar os recursos do SES.

  Para saber mais, consulte [Chaves mestras do cliente (CMKs)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) no *AWS Key Management Service Guia do desenvolvedor*. 

**nota**  
O SES habilita automaticamente a criptografia em repouso usando chaves AWS próprias, sem nenhum custo.   
No entanto, AWS KMS cobranças são cobradas pelo uso de uma chave gerenciada pelo cliente. Para obter mais informações sobre preços, consulte [definição de preços da AWS Key Management Service](https://aws.amazon.com/kms/pricing/).

## Criar uma chave gerenciada pelo cliente
<a name="create-key"></a>

 Você pode criar uma chave simétrica gerenciada pelo cliente usando o Console de gerenciamento da AWS, ou o. AWS KMS APIs

**Para criar uma chave simétrica gerenciada pelo cliente**

Siga as etapas para [Criar chaves do KMS de criptografia simétrica](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) no *Guia do desenvolvedor do AWS Key Management Service *.

**nota**  
Para o arquivamento, sua chave deve atender aos seguintes requisitos:  
A chave deve ser simétrica.
A origem do material da chave deve ser `AWS_KMS`.
O uso da chave deve ser `ENCRYPT_DECRYPT`.

**Política de chave**

As políticas de chaves controlam o acesso à chave gerenciada pelo cliente. Cada chave gerenciada pelo cliente deve ter exatamente uma política de chaves, que contém declarações que determinam quem pode usar a chave e como pode usá-la. Ao criar a chave gerenciada pelo cliente, você pode especificar uma política de chaves. Para obter mais informações, consulte [Gerenciamento do acesso às chaves gerenciadas pelo cliente](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html#managing-access) no *Guia do desenvolvedor do AWS Key Management Service *.

Para usar sua chave gerenciada pelo cliente com o arquivamento do Mail Manager, sua política de chave deve permitir as seguintes operações de API:
+ [kms: DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) — Fornece os detalhes da chave gerenciada pelo cliente que permitem que o SES valide a chave.
+ [kms: GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) — Permite que o SES gere uma chave de dados para criptografar dados em repouso.
+ [kms:Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html): permite que o SES descriptografe os dados armazenados antes de devolvê-los aos clientes da API.

O exemplo a seguir mostra uma política de chave típica:

```
{
            "Sid": "Allow SES to encrypt/decrypt",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
```

Para obter mais informações, consulte [especificação de permissões em uma política](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html#overview-policy-elements), no *Guia do desenvolvedor do AWS Key Management Service *.

Para obter mais informações sobre solução de problemas, consulte [solucionar problemas de acesso à chave](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html#example-no-iam) no *Guia do desenvolvedor do AWS Key Management Service *.

## Especificação de uma chave gerenciada pelo cliente para o Mail Manager
<a name="enable-custom-encryption"></a>

Você pode especificar uma chave gerenciada pelo cliente como alternativa ao uso de chaves AWS próprias. **Ao criar um arquivamento ou configurar um endpoint de entrada com autenticação TLS mútua (mTLS), você pode especificar a chave de dados inserindo um ARN da chave KMS.** Para arquivamento, o Mail Manager usa a chave para criptografar todos os dados do cliente no arquivamento. Para endpoints de entrada do mTLS, o Mail Manager usa a chave para criptografar o conteúdo do armazenamento confiável em repouso.
+ **ARN da chave KMS** — [Um identificador de chave para uma chave](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) gerenciada pelo AWS KMS cliente. Insira uma ID de chave, um ARN de chave, um nome de alias ou um ARN de alias.

## Contexto de criptografia do Amazon SES
<a name="location-encryption-context"></a>

Um [contexto de criptografia](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) é um conjunto opcional de pares chave-valor que pode conter informações contextuais adicionais sobre os dados.

AWS KMS usa o contexto de criptografia como dados autenticados adicionais para oferecer suporte à criptografia autenticada. Quando você inclui um contexto de criptografia em uma solicitação para criptografar dados, AWS KMS vincula o contexto de criptografia aos dados criptografados. Para descriptografar os dados, você inclui o mesmo contexto de criptografia na solicitação.

**nota**  
O Amazon SES não oferece suporte a contextos de criptografia para criação de arquivos. Em vez disso, é usada uma política IAM ou KMS. Para ver exemplos de políticas, consulte [Políticas de criação de arquivos](#archive-creation-policies) mais adiante nesta seção.

**Contexto de criptografia do Amazon SES**

O SES usa o mesmo contexto de criptografia em todas as operações AWS KMS criptográficas, onde a chave está `aws:ses:arn` e o valor é o [recurso Amazon Resource Name](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) (ARN).

**Example**  

```
"encryptionContext": {
    "aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
}
```

**Uso do contexto de criptografia para monitoramento**

Ao usar uma chave simétrica gerenciada pelo cliente para criptografar o recurso do SES, você também pode utilizar o contexto de criptografia em registros de auditoria e logs para identificar como a chave gerenciada pelo cliente está sendo utilizada. O contexto de criptografia também aparece nos [registros gerados pelo AWS CloudTrail ou Amazon CloudWatch Logs](#example-custom-encryption).

**Uso do contexto de criptografia para controlar o acesso à chave gerenciada pelo cliente**

Você pode usar o contexto de criptografia nas políticas de chaves e políticas do IAM como `conditions` e controlar o acesso à sua chave simétrica gerenciada pelo cliente. Você também pode usar restrições no contexto de criptografia em uma concessão.

O SES utiliza uma restrição ao contexto de criptografia em concessões para controlar o acesso à chave gerenciada pelo cliente na sua conta ou região. A restrição da concessão exige que as operações permitidas pela concessão usem o contexto de criptografia especificado.

**Example**  
Veja a seguir exemplos de declarações de políticas de chave para conceder acesso a uma chave gerenciada pelo cliente para um contexto de criptografia específico. A condição nesta declaração de política exige que as concessões tenham uma restrição de contexto de criptografia que especifique o contexto de criptografia.  

```
{
    "Sid": "Enable DescribeKey",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole"
     },
     "Action": "kms:DescribeKey",
     "Resource": "*"
},
{
     "Sid": "Enable CreateGrant",
     "Effect": "Allow",
     "Principal": {
         "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole"
     },
     "Action": "kms:CreateGrant",
     "Resource": "*",
     "Condition": {
         "StringEquals": {
             "kms:EncryptionContext:aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
          }
     }
}
```

## Políticas de criação de arquivos
<a name="archive-creation-policies"></a>

O exemplo de políticas a seguir mostra como habilitar a criação de arquivos. As políticas funcionam em todos os ativos.

**Política do IAM**

```
{
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "ses:CreateArchive",
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:DescribeKey",
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": "ses.us-east-1.amazonaws.com",
                    "kms:CallerAccount": "012345678910"
                }
            }
        }
```

**AWS KMS política**

```
{
            "Sid": "Allow SES to encrypt/decrypt",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
```

## Políticas de mTLS para endpoints de entrada
<a name="ingress-endpoint-mtls-policies"></a>

O exemplo de políticas a seguir permite o uso de uma chave gerenciada pelo cliente para criptografar o conteúdo do armazenamento confiável para autenticação TLS mútua (mTLS) nos endpoints de entrada do Mail Manager.

Para definir o escopo das políticas de exemplo para um endpoint de entrada específico, substitua o caractere curinga na condição por um ARN de recurso exato (por exemplo,). `arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/inp-ab1c2defgh3ij4klmno5pq6rs`

**Política do IAM**

```
{
    "Effect": "Allow",
    "Principal": {
      "AWS": "arn:aws:iam::111122223333:role/rolename"
    },
    "Action": [
      "kms:GenerateDataKey",
      "kms:Decrypt"
    ],
    "Resource": "*",
    "Condition": {
      "StringEquals": {
        "kms:ViaService": "ses.us-east-1.amazonaws.com"
      },
      "StringLike": {
        "kms:EncryptionContext:aws:ses:arn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ]
      }
    }
  },
  {
    "Effect": "Allow",
    "Principal": {
      "AWS": "arn:aws:iam::111122223333:role/rolename"
    },
    "Action": [
      "kms:DescribeKey"
    ],
    "Resource": "*",
    "Condition": {
      "StringEquals": {
        "kms:ViaService": "ses.us-east-1.amazonaws.com"
      }
    }
  }
```

**AWS KMS política**

```
{
    "Effect": "Allow",
    "Principal": {
      "Service": "ses.amazonaws.com"
    },
    "Action": [
      "kms:Decrypt"
    ],
    "Resource": "*",
    "Condition": {
      "StringLike": {
        "aws:SourceArn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ],
        "kms:EncryptionContext:aws:ses:arn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ]
      }
    }
  },
  {
    "Effect": "Allow",
    "Principal": {
      "Service": "ses.amazonaws.com"
    },
    "Action": [
      "kms:DescribeKey"
    ],
    "Resource": "*",
    "Condition": {
      "StringLike": {
        "aws:SourceArn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ]
      }
    }
  }
```

## Monitorar suas chaves de criptografia para o Amazon SES
<a name="example-custom-encryption"></a>

Ao usar uma chave gerenciada pelo AWS KMS cliente com seus recursos do Amazon SES, você pode usar [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)o [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) para rastrear as solicitações enviadas pelo SES AWS KMS.

Os exemplos a seguir são AWS CloudTrail eventos para`GenerateDataKey`,`Decrypt`, e `DescribeKey` para monitorar operações KMS chamadas pelo SES para acessar dados criptografados pela chave gerenciada pelo cliente:

------
#### [ GenerateDataKey ]

Quando você ativa uma chave gerenciada pelo AWS KMS cliente para seu recurso, o SES cria uma chave de tabela exclusiva. Ele envia uma `GenerateDataKey` solicitação AWS KMS que especifica a chave gerenciada pelo AWS KMS cliente para o recurso.

Quando você ativa uma chave gerenciada pelo AWS KMS cliente para seu recurso de arquivamento do Mail Manager, ela é usada `GenerateDataKey` ao criptografar dados arquivados em repouso.

O evento de exemplo a seguir registra a operação `GenerateDataKey`:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "ses.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "encryptionContext": {
            "aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
        },
        "keySpec": "AES_256",
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "57f5dbee-16da-413e-979f-2c4c6663475e"
}
```

------
#### [ Decrypt ]

Quando você acessa um recurso criptografado, o SES chama a operação `Decrypt` para usar a chave de dados criptografados armazenada para acessar os dados criptografados. 

O evento de exemplo a seguir registra a operação `Decrypt`:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "ses.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:10:51Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "encryptionContext": {
            "aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
        },
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE",
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "dc129381-1d94-49bd-b522-f56a3482d088"
}
```

------
#### [ DescribeKey ]

O SES usa a operação `DescribeKey` para verificar se a chave gerenciada pelo cliente do AWS KMS associada ao seu recurso existe na conta e na região.

O evento de exemplo a seguir registra a operação `DescribeKey`:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
        "accountId": "111122223333",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE3",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
                "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-22T17:02:00Z"
            }
        },
        "invokedBy": "ses.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "keyId": "00dd0db0-0000-0000-ac00-b0c000SAMPLE"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```

------

## Saiba mais
<a name="Learn-more-data-at-rest-encryption"></a>

Os recursos a seguir fornecem mais informações sobre a criptografia de dados em pausa.
+ Para obter mais informações sobre [conceitos básicos do AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html), consulte o *Guia do desenvolvedor do AWS Key Management Service *.
+ Para obter mais informações sobre as [melhores práticas de segurança para o AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/best-practices.html), consulte o *Guia do desenvolvedor do AWS Key Management Service *.