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 no Amazon OpenSearch Serverless
Criptografia inativa
Cada coleção Amazon OpenSearch Serverless que você cria é protegida com criptografia de dados em repouso, um recurso de segurança que ajuda a impedir o acesso não autorizado aos seus dados. A criptografia em repouso usa AWS Key Management Service (AWS KMS) para armazenar e gerenciar suas chaves de criptografia. Ela usa o algoritmo Advanced Encryption Standard com chaves de 256 bits (AES-256) para executar a criptografia.
Tópicos
- Políticas de criptografia
- Considerações
- Permissões obrigatórias
- Política de chaves para uma chave gerenciada pelo cliente
- Como o OpenSearch Serverless usa subsídios em AWS KMS
- Criação de políticas de criptografia (console)
- Criação de políticas de criptografia (AWS CLI)
- Exibição de políticas de criptografia
- Atualização de políticas de criptografia
- Exclusão de políticas de criptografia
Políticas de criptografia
Com as políticas de criptografia, é possível gerenciar várias coleções em grande escala atribuindo automaticamente uma chave de criptografia às coleções recém-criadas que correspondam a um nome ou padrão específico.
Ao criar uma política de criptografia, é possível especificar um prefixo, que é uma regra de correspondência baseada em curingas, como MyCollection*
, ou inserir um único nome de coleção. Em seguida, quando você criar uma coleção que corresponda a esse padrão de nome ou prefixo, a política e a chave do KMS correspondente serão automaticamente atribuídas a ela.
As políticas de criptografia contêm os seguintes elementos:
-
Rules
: uma ou mais regras de correspondência de coleções, cada uma com os seguintes subelementos:-
ResourceType
: no momento, a única opção é “collection” (coleção). As políticas de criptografia se aplicam somente aos recursos de coleção. -
Resource
: um ou mais nomes ou padrões de coleção aos quais a política será aplicada, no formatocollection/<
.collection name|pattern
>
-
-
AWSOwnedKey
: opção de uso de uma Chave pertencente à AWS. -
KmsARN
: se você definirAWSOwnedKey
como falso, especifique o nome do recurso da Amazon (ARN) da chave do KMS com a qual criptografar as coleções associadas. Se você incluir esse parâmetro, o OpenSearch Serverless ignorará o parâmetro.AWSOwnedKey
O exemplo de política a seguir atribuirá uma chave gerenciada pelo cliente a qualquer coleção futura denominada autopartsinventory
, bem como às coleções que comecem com o termo “sales” (vendas):
{ "Rules":[ { "ResourceType":"collection", "Resource":[ "collection/
autopartsinventory
", "collection/sales*
" ] } ], "AWSOwnedKey":false, "KmsARN":"arn:aws:encryption:us-east-1
:123456789012
:key/93fd6da4-a317-4c17-bfe9-382b5d988b36
" }
Mesmo que uma política corresponda a um nome de coleção, é possível optar por substituir essa atribuição automática durante a criação da coleção se o padrão do recurso contiver um caractere curinga (*). Se você optar por substituir a atribuição automática de chaves, o OpenSearch Serverless cria uma política de criptografia para você chamada auto-< collection-name
> e a anexa à coleção. Inicialmente, a política só se aplica a uma única coleção, mas é possível modificá-la para incluir coleções adicionais.
Se você modificar as regras de política para que não correspondam mais a uma coleção, a chave do KMS associada não terá a atribuição a essa coleção cancelada. A coleção permanece sempre criptografada com sua chave de criptografia inicial. Se você desejar alterar a chave de criptografia de uma coleção, deverá recriar a coleção.
Se as regras de várias políticas corresponderem a uma coleção, a regra mais específica será usada. Por exemplo, se uma política contiver uma regra para collection/log*
e outra para collection/logSpecial
, a chave de criptografia da segunda política será usada porque é mais específica.
Você não pode usar um nome ou prefixo em uma política se ela já existir em outra política. OpenSearch O Serverless exibirá um erro se você tentar configurar padrões de recursos idênticos em políticas de criptografia diferentes.
Considerações
Considere o seguinte ao configurar a criptografia de suas coleções:
-
A criptografia em repouso é obrigatória para todas as coleções do Sem Servidor.
-
Você tem a opção de usar uma chave gerenciada pelo cliente ou uma Chave pertencente à AWS. Se você escolher uma chave gerenciada pelo cliente, recomendamos habilitar a rotação automática de chaves.
-
Não é possível alterar a chave de criptografia de uma coleção depois que a coleção é criada. Escolha cuidadosamente qual AWS KMS usar na primeira vez que você configura uma coleção.
-
Uma coleção só pode corresponder a uma única política de criptografia.
-
Coleções com chaves KMS exclusivas não podem compartilhar unidades de OpenSearch computação (OCUs) com outras coleções. Cada coleção com uma chave exclusiva requer suas próprias 4 OCUs.
-
Se você atualizar a chave do KMS em uma política de criptografia, a alteração não afetará as coleções correspondentes existentes com as chaves do KMS já atribuídas.
-
OpenSearch O Serverless não verifica explicitamente as permissões do usuário nas chaves gerenciadas pelo cliente. Se um usuário tiver permissões para acessar uma coleção por meio de uma política de acesso a dados, ele poderá ingerir e consultar os dados criptografados com a chave associada.
Permissões obrigatórias
A criptografia em repouso para OpenSearch Serverless usa as seguintes permissões AWS Identity and Access Management (IAM). É possível especificar as condições do IAM para restringir os usuários a coleções específicas.
-
aoss:CreateSecurityPolicy
: cria uma política de criptografia. -
aoss:ListSecurityPolicies
: lista todas as políticas e coleções de criptografia às quais elas estão vinculadas. -
aoss:GetSecurityPolicy
: exibe os detalhes de uma política de criptografia específica. -
aoss:UpdateSecurityPolicy
: modifica uma política de criptografia. -
aoss:DeleteSecurityPolicy
: exclui uma política de criptografia.
O exemplo a seguir de política de acesso baseada em identidade fornece as permissões mínimas necessárias para que um usuário gerencie políticas de criptografia com o padrão de recursos collection/application-logs
.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "aoss:CreateSecurityPolicy", "aoss:UpdateSecurityPolicy", "aoss:DeleteSecurityPolicy", "aoss:GetSecurityPolicy" ], "Resource":"*", "Condition":{ "StringEquals":{ "aoss:collection":"
application-logs
" } } }, { "Effect":"Allow", "Action":[ "aoss:ListSecurityPolicies" ], "Resource":"*" } ] }
Política de chaves para uma chave gerenciada pelo cliente
Se você selecionar uma chave gerenciada pelo cliente para proteger uma coleção, a OpenSearch Serverless obterá permissão para usar a chave KMS em nome do diretor que faz a seleção. Esse diretor, um usuário ou uma função, deve ter as permissões na chave KMS que o OpenSearch Serverless exige. É possível fornecer essas permissões em uma política de chaves ou em uma política do IAM.
No mínimo, o OpenSearch Serverless exige as seguintes permissões em uma chave gerenciada pelo cliente:
Por exemplo: .
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "aoss.us-east-1.amazonaws.com" }, "Bool": { "kms:GrantIsForAWSResource": "true" } } } ] }
OpenSearch Sem servidor, crie uma concessão com as permissões kms: GenerateDataKey e kms:decrypt.
Para obter mais informações, consulte Uso de políticas de chaves no AWS KMS no Guia do desenvolvedor do AWS Key Management Service .
Como o OpenSearch Serverless usa subsídios em AWS KMS
OpenSearch O Serverless exige uma concessão para usar uma chave gerenciada pelo cliente.
Quando você cria uma política de criptografia em sua conta com uma nova chave, o OpenSearch Serverless cria uma concessão em seu nome enviando uma CreateGrantsolicitação para. AWS KMS As concessões AWS KMS são usadas para dar acesso OpenSearch sem servidor a uma chave KMS em uma conta de cliente.
OpenSearch O Serverless exige que a concessão use sua chave gerenciada pelo cliente para as seguintes operações internas:
-
Envie DescribeKeysolicitações AWS KMS para verificar se a ID simétrica da chave gerenciada pelo cliente fornecida é válida.
-
Envie GenerateDataKeysolicitações para a chave KMS para criar chaves de dados com as quais criptografar objetos.
-
Envie solicitações de descriptografia para AWS KMS descriptografar as chaves de dados criptografadas para que elas possam ser usadas para criptografar seus dados.
É possível revogar o acesso à concessão, ou remover o acesso do serviço à chave gerenciada pelo cliente a qualquer momento. Se você fizer isso, o OpenSearch Serverless não poderá acessar nenhum dos dados criptografados pela chave gerenciada pelo cliente, o que afeta todas as operações que dependem desses dados, levando a AccessDeniedException
erros e falhas nos fluxos de trabalho assíncronos.
OpenSearch O Serverless retira as concessões em um fluxo de trabalho assíncrono quando uma determinada chave gerenciada pelo cliente não está associada a nenhuma política ou coleção de segurança.
Criação de políticas de criptografia (console)
Em uma política de criptografia, você especifica uma chave do KMS e uma série de padrões de coleção aos quais a política se aplicará. Qualquer nova coleção que corresponda a um dos padrões definidos na política receberá a chave do KMS correspondente quando você criar a coleção. Recomendamos que você crie políticas de criptografia antes de começar a criar coleções.
Para criar uma política de criptografia OpenSearch sem servidor
-
Abra o console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/home
. -
No painel de navegação à esquerda, expanda Sem Servidor e escolha Políticas de criptografia.
-
Escolha Criar política de criptografia.
-
Forneça um nome e uma descrição para a política.
-
Em Recursos, insira um ou mais padrões de recursos para essa política de criptografia. Todas as coleções recém-criadas na Conta da AWS e região atual que correspondam a um dos padrões serão automaticamente atribuídas a essa política. Por exemplo, se você inserir
ApplicationLogs
(sem nenhum curinga) e depois criar uma coleção com esse nome, a política e a chave do KMS correspondente serão atribuídas a essa coleção.Você também pode fornecer um prefixo como
Logs*
, que atribuirá a política a qualquer nova coleção com nomes começando comLogs
. Usando curingas, é possível gerenciar as configurações de criptografia para várias coleções em grande escala. -
Em Criptografia, escolha uma chave do KMS para usar.
-
Escolha Criar.
Próxima etapa: criar coleções
Depois de configurar uma ou mais políticas de criptografia, será possível começar a criar coleções que correspondam às regras definidas nessas políticas. Para obter instruções, consulte Criação de coleções.
Na etapa Criptografias da criação da coleção, o OpenSearch Serverless informa que o nome inserido corresponde ao padrão definido em uma política de criptografia e atribui automaticamente a chave KMS correspondente à coleção. Se o padrão do recurso contiver um curinga (*), será possível optar por substituir a correspondência e selecionar sua própria chave.
Criação de políticas de criptografia (AWS CLI)
Para criar uma política de criptografia usando as operações da API OpenSearch Serverless, você especifica padrões de recursos e uma chave de criptografia no formato JSON. A CreateSecurityPolicysolicitação aceita políticas embutidas e arquivos.json.
As políticas de criptografia têm o formato a seguir. Esse arquivo my-policy.json
de exemplo corresponde a qualquer coleção futura denominada autopartsinventory
, bem como a qualquer coleção com nomes iniciando por sales
.
{ "Rules":[ { "ResourceType":"collection", "Resource":[ "collection/
autopartsinventory
", "collection/sales*
" ] } ], "AWSOwnedKey":false, "KmsARN":"arn:aws:encryption:us-east-1
:123456789012
:key/93fd6da4-a317-4c17-bfe9-382b5d988b36
" }
Para usar uma chave de propriedade do serviço, defina AWSOwnedKey
como true
:
{ "Rules":[ { "ResourceType":"collection", "Resource":[ "collection/
autopartsinventory
", "collection/sales*
" ] } ], "AWSOwnedKey":true }
A solicitação a seguir cria a política de criptografia:
aws opensearchserverless create-security-policy \ --name
sales-inventory
\ --type encryption \ --policy file://my-policy.json
Em seguida, use a operação da CreateCollectionAPI para criar uma ou mais coleções que correspondam a um dos padrões de recursos.
Exibição de políticas de criptografia
Antes de criar uma coleção, talvez você queira pré-visualizar as políticas de criptografia existentes em sua conta para ver qual delas tem um padrão de recurso que corresponda ao nome da sua coleção. A ListSecurityPoliciessolicitação a seguir lista todas as políticas de criptografia em sua conta:
aws opensearchserverless list-security-policies --type encryption
A solicitação retorna informações sobre todas as políticas de criptografia configuradas. Use o conteúdo do elemento policy
para visualizar as regras de padrões definidas na política:
{ "securityPolicyDetails": [ { "createdDate": 1663693217826, "description": "Sample encryption policy", "lastModifiedDate": 1663693217826, "name": "my-policy", "policy": "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection/autopartsinventory\",\"collection/sales*\"]}],\"AWSOwnedKey\":true}", "policyVersion": "MTY2MzY5MzIxNzgyNl8x", "type": "encryption" } ] }
Para ver informações detalhadas sobre uma política específica, incluindo a chave KMS, use o GetSecurityPolicycomando.
Atualização de políticas de criptografia
Se você atualizar a chave do KMS em uma política de criptografia, a alteração só se aplicará às coleções recém-criadas que correspondam ao nome ou padrão configurado. Isso não afeta as coleções existentes que já tenham chaves do KMS atribuídas.
O mesmo se aplica às regras de correspondência das políticas. Se você adicionar, modificar ou excluir uma regra, a alteração só se aplicará às coleções recém-criadas. As coleções existentes não perdem suas chaves do KMS atribuídas se você modificar as regras de uma política para que ela não corresponda mais ao nome de uma coleção.
Para atualizar uma política de criptografia no console OpenSearch sem servidor, escolha Políticas de criptografia, selecione a política a ser modificada e escolha Editar. Faça suas alterações e escolha Salvar.
Para atualizar uma política de criptografia usando a API OpenSearch Serverless, use a UpdateSecurityPolicyoperação. A solicitação a seguir atualiza uma política de criptografia com um novo documento JSON de política:
aws opensearchserverless update-security-policy \ --name sales-inventory \ --type encryption \ --policy-version 2 \ --policy file://
my-new-policy.json
Exclusão de políticas de criptografia
Quando você exclui uma política de criptografia, todas as coleções que estiverem usando a chave do KMS definida na política não são afetadas. Para excluir uma política no console OpenSearch sem servidor, selecione a política e escolha Excluir.
Você também pode usar a DeleteSecurityPolicyoperação:
aws opensearchserverless delete-security-policy --name
my-policy
--type encryption
Criptografia em trânsito
No OpenSearch Serverless, todos os caminhos em uma coleção são criptografados em trânsito usando o Transport Layer Security 1.2 (TLS) com uma cifra AES-256 padrão do setor. O acesso a todas as APIs e OpenSearch Dashboards também é feito por meio do TLS 1.2. O TLS é um conjunto de protocolos criptográficos padrão do setor usados para criptografar informações que são trocadas pela rede.