Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)
Por padrão,o Google Cloud automaticamente criptografa os dados quando em repouso por meio de chaves de criptografia gerenciadas pelo Google.
Caso você precise atender a requisitos específicos de compliance e conformidade relacionados às chaves que protegem seus dados, use as chaves de criptografia gerenciadas pelo cliente (CMEKs) para a Document AI. Em vez de o Google gerenciar as chaves de criptografia que protegem seus dados, seu processador da Document AI é protegido usando uma chave que você controla e gerencia no Cloud Key Management Service (KMS).
Este guia descreve a CMEK para a Document AI. Para mais informações sobre CMEK em geral, como quando e por que ativar, consulte a documentação do Cloud Key Management Service.
Pré-requisito
O agente de serviço da Document AI precisa ter a função de criptografador/descriptografador de CryptoKey do Cloud KMS na chave que você usa.
O exemplo a seguir concede um papel que fornece acesso a uma chave do Cloud KMS:
gcloud
gcloud kms keys add-iam-policy-binding key \ --keyring key-ring \ --location location \ --project key_project_id \ --member serviceAccount:service-project_number@gcp-sa-prod-dai-core.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypter
Substitua key pelo nome da chave. Substitua key-ring pelo nome do keyring em que a chave está localizada. Substitua location pelo local da Document AI para o keyring. Substitua key_project_id pelo projeto do keyring. Substitua project_number pelo número do projeto.
C#
Para mais informações, consulte a documentação de referência da API C# da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Go
Para mais informações, consulte a documentação de referência da API Go da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para mais informações, consulte a documentação de referência da API Java da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para mais informações, consulte a documentação de referência da API Node.js da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
PHP
Para mais informações, consulte a documentação de referência da API PHP da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para mais informações, consulte a documentação de referência da API Python da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Ruby
Para mais informações, consulte a documentação de referência da API Ruby da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Usar a CMEK
As configurações de criptografia estão disponíveis quando você cria um processador. Para usar a CMEK, selecione a opção CMEK e escolha uma chave.
A chave CMEK é usada para todos os dados associados ao processador e aos recursos filhos dele. Todos os dados relacionados ao cliente enviados ao processador são criptografados automaticamente com a chave fornecida antes da gravação em disco.
Depois que um processador é criado, não é possível mudar as configurações de criptografia dele. Para usar uma chave diferente, crie um novo processador.
Chaves externas
Use o Cloud External Key Manager (EKM) para criar e gerenciar chaves externas para criptografar dados no Google Cloud.
Quando você usa uma chave do Cloud EKM, o Google não tem controle sobre a disponibilidade da sua chave gerenciada externamente. Se você solicitar acesso a um recurso criptografado com uma chave gerenciada externamente e a chave não estiver disponível, a Document AI vai rejeitar a solicitação. Pode haver um atraso de até 10 minutos antes de você conseguir acessar o recurso quando a chave estiver disponível.
Para mais considerações ao usar chaves externas, consulte Considerações sobre o EKM.
Recursos compatíveis com a CMEK
Ao armazenar qualquer recurso em disco, se dados do cliente forem armazenados como parte do recurso, a Document AI primeiro criptografa o conteúdo usando a chave de CMEK.
Recurso | Material criptografado |
---|---|
Processor |
N/A: sem dados do usuário. No entanto, se você especificar uma chave CMEK durante a criação do processador, ela precisará ser válida. |
ProcessorVersion |
Todos |
Evaluation |
Todos |
APIs compatíveis com CMEK
As APIs que usam a chave CMEK para criptografia incluem:
Método | Criptografia |
---|---|
processDocument |
Não aplicável: nenhum dado salvo no disco. |
batchProcessDocuments |
Os dados são armazenados temporariamente no disco e criptografados usando uma chave temporária (consulte Conformidade com a CMEK). |
trainProcessorVersion |
Os documentos usados para treinamento são criptografados com a chave do KMS/CMEK fornecida. |
evaluateProcessorVersion |
As avaliações são criptografadas usando a chave KMS/CMEK fornecida. |
As solicitações de API que acessam recursos criptografados falham se a chave estiver desativada ou inacessível. Os exemplos incluem:
Método | Descriptografia |
---|---|
getProcessorVersion |
As versões do processador treinadas com dados do cliente são criptografadas. O acesso exige descriptografia. |
processDocument |
O processamento de documentos usando uma versão criptografada do processador exige descriptografia. |
Import Documents |
A importação de documentos com o auto-labeling ativado usando uma versão criptografada do processador exige descriptografia. |
CMEK e Cloud Storage
APIs, como batchProcess
,
podem ler e gravar em buckets do Cloud Storage.
Todos os dados gravados no Cloud Storage pela Document AI são criptografados usando a chave de criptografia configurada do bucket, que pode ser diferente da chave CMEK do seu processador.
Para mais informações, consulte a documentação da CMEK para o Cloud Storage.