Usar chave gerenciada pelo cliente (CMK) - Amazon Bedrock

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

Usar chave gerenciada pelo cliente (CMK)

Se planejar usar a chave gerenciada pelo cliente para criptografar o modelo importado personalizado, conclua as seguintes etapas:

  1. Crie uma chave gerenciada pelo cliente com o AWS Key Management Service.

  2. Anexe uma política baseada em recurso com permissões para que os perfis especificados criem e usem modelos importados personalizados.

Criar uma chave gerenciada pelo cliente

Primeiramente verifique se você tem permissões de CreateKey. Siga as etapas em Criar chaves para criar uma chave gerenciada pelo cliente no console do AWS KMS ou na operação de API CreateKey. Crie uma chave de criptografia simétrica.

A criação da chave retorna um Arn para a chave que é possível usar como o importedModelKmsKeyId ao importar um modelo personalizado com a importação de modelo personalizado.

Criar uma política de chave e anexá-la à chave gerenciada pelo cliente

As políticas de chave são políticas baseadas em recurso que você anexa à chave gerenciada pelo cliente para controlar o acesso a ela. Cada chave gerenciada pelo cliente deve ter exatamente uma política de chave, que contém declarações que determinam quem pode usar a chave e como pode usá-la. É possível especificar uma política de chave ao criar uma chave gerenciada pelo cliente. É possível modificar a política de chave a qualquer momento, mas pode haver um breve atraso para que a alteração esteja disponível em todo oAWS KMS. Para obter mais informações, consulte Gerenciar o acesso a chaves gerenciadas pelo cliente no Guia do desenvolvedor do AWS Key Management Service.

Criptografar um modelo personalizado importado resultante

Para usar a chave gerenciada pelo cliente para criptografar um modelo personalizado importado, inclua as seguintes operações do AWS KMS na política de chave:

  • kms:CreateGrant: cria uma concessão para uma chave gerenciada pelo cliente, permitindo que a entidade principal do serviço Amazon Bedrock acesse a chave do KMS especificada por meio de operações de concessão. Para obter mais informações sobre concessões, consulte Concessões no AWS KMS no Guia do desenvolvedor do AWS Key Management Service.

    nota

    O Amazon Bedrock também configura uma entidade principal que está sendo retirada e retira automaticamente a concessão quando ela não é mais necessária.

  • kms:DescribeKey: fornece os detalhes da chave gerenciada pelo cliente para permitir que o Amazon Bedrock valide a chave.

  • kms:GenerateDataKey: fornece os detalhes da chave gerenciada pelo cliente para permitir que o Amazon Bedrock valide o acesso do usuário. O Amazon Bedrock armazena o texto cifrado gerado com o modelo personalizado importado para ser usado como uma verificação de validação adicional em relação aos usuários do modelo personalizado importado.

  • kms:Decrypt: descriptografa o texto cifrado armazenado para validar se o perfil tem acesso adequado à chave do KMS que criptografa o modelo personalizado importado.

Veja abaixo um exemplo de política que é possível anexar a uma chave para um perfil que você usará para criptografar um modelo personalizado importado:

{ "Version": "2012-10-17", "Id": "KMS key policy for a key to encrypt an imported custom model", "Statement": [ { "Sid": "Permissions for model import API invocation role", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::${account-id}:user/role" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*" } ] }

Descriptografar um modelo personalizado importado criptografado

Se estiver importando um modelo personalizado que já tenha sido criptografado por outra chave gerenciada pelo cliente, adicione permissões kms:Decrypt ao mesmo perfil, conforme a seguinte política:

{ "Version": "2012-10-17", "Id": "KMS key policy for a key that encrypted a custom imported model", "Statement": [ { "Sid": "Permissions for model import API invocation role", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::${account-id}:user/role" }, "Action": [ "kms:Decrypt" ], "Resource": "*" } ] }