Por padrão, o Cloud Run criptografa o conteúdo do cliente em repouso. O Cloud Run cuida da criptografia e você não precisa fazer nada. Essa opção é chamada de criptografia padrão do Google.
Se você quiser controlar suas chaves de criptografia, use chaves de criptografia gerenciadas pelo cliente (CMEKs) no Cloud KMS com serviços integrados a CMEKs, incluindo o Cloud Run. Ao usar chaves do Cloud KMS, é possível controlar o nível de proteção, o local, a programação de rotação, as permissões de uso e acesso e os limites criptográficos. Com o Cloud KMS, também é possível visualizar registros de auditoria e controlar ciclos de vida de chaves. Em vez de o Google ser proprietário e gerente de chaves de criptografia de chaves (KEKs) simétricas que protegem seus dados, você controla e gerencia essas chaves no Cloud KMS.
Depois de configurar os recursos com CMEKs, a experiência de acesso aos recursos do Cloud Run é semelhante à criptografia padrão do Google. Para saber mais sobre suas opções de criptografia, consulte Chaves de criptografia gerenciadas pelo cliente (CMEK).
Para saber como proteger seus dados com a CMEK em funções criadas usando
comandos gcloud functions ou a
API Cloud Functions v2, consulte
Proteja seus dados com a CMEK.
É necessário estar ciente das informações a seguir:
- Os metadados de arquivos, como o caminho, não são criptografados.
- Os metadados do serviço do Cloud Run ou do pool de trabalhadores, como nome ou variáveis de ambiente, não são criptografados usando a chave fornecida, mas com uma Google-owned and Google-managed encryption key.
- No ambiente de execução, o conteúdo da memória e do arquivo não é criptografado.
- Se uma CMEK estiver desativada, as novas instâncias de revisões atuais do Cloud Run que a usam não serão iniciadas.
- Se uma CMEK estiver desativada, a implantação de uma nova revisão do Cloud Run vai falhar, a menos que uma nova chave válida seja usada.
CMEK com o Cloud KMS Autokey
É possível criar CMEKs manualmente para proteger seus recursos do Cloud Run ou usar a chave automática do Cloud KMS. Com o Autokey, keyrings e chaves são gerados sob demanda para dar suporte à criação de recursos no Cloud Run. Os agentes de serviço que usam as chaves para operações de criptografia e descriptografia são criados se ainda não existirem e receberem os papéis necessários do Identity and Access Management (IAM). Para mais informações, consulte Visão geral das chaves automáticas.
Para configurar a CMEK manualmente, siga as instruções para configurar a CMEK para um serviço ou um pool de trabalhadores.
Para configurar a CMEK usando o Autokey, siga as instruções para configurar chaves automáticas para um serviço ou um pool de trabalhadores.
O Autokey não está disponível para funções criadas usando comandos
gcloud functions ou a
API Cloud Functions v2.
Cotas do Cloud KMS e o Cloud Run
É possível definir a CMEK como um dos níveis de proteção disponíveis para indicar como as operações criptográficas são realizadas. Quando você usa CMEK no Cloud Run, seus projetos podem consumir cotas de solicitações criptográficas do Cloud KMS. Por exemplo, repositórios criptografados por CMEK podem consumir essas cotas em cada upload ou download.
As operações de criptografia e descriptografia com chaves CMEK afetam as cotas do Cloud KMS destas maneiras:
- Para chaves CMEK de software geradas no Cloud KMS, nenhuma cota do Cloud KMS é consumida.
- Para chaves CMEK de hardware, às vezes chamadas de chaves do Cloud HSM, as operações de criptografia e descriptografia são descontadas das cotas do Cloud HSM no projeto que contém a chave.
- Para chaves CMEK externas, às vezes chamadas de chaves do Cloud EKM, as operações de criptografia e descriptografia são descontadas das cotas do Cloud EKM no projeto que contém a chave.
Para mais informações, consulte Cotas do Cloud KMS.
Comportamento de escalonamento automático afetado por CMEK
O escalonamento automático esperado do serviço do Cloud Run pode ser afetado quando você usa chaves de criptografia gerenciadas pelo cliente. Por exemplo, a latência para iniciar novas instâncias pode aumentar devido a atrasos no contato com sistemas externos de gerenciamento de chaves durante operações de chave.
A tabela a seguir mostra as possíveis mudanças de comportamento devido ao uso de CMEK:
| Operação relacionada a CMEK | Comportamento de escalonamento automático |
|---|---|
| Chave desativada/destruída/revogada | Novas instâncias não serão iniciadas. |
| Não é possível entrar em contato com o gerenciador de chaves externo | Se a nova solicitação de chave for repetida, nenhuma instância será desligada durante as novas tentativas e nenhuma nova instância será iniciada. O escalonamento horizontal pode parecer mais lento do que o esperado. Se não for possível repetir a solicitação de chave, nenhuma nova instância será iniciada e as instâncias em execução serão encerradas após um período de espera. |
| Cota de KMS excedida | Se essa cota for excedida, os erros RESOURCE_EXHAUSTED serão registrados e as novas instâncias não serão iniciadas. É possível solicitar uma cota adicional para corrigir o problema. |
Antes de começar
Permitir que o Cloud Run acesse uma chave
Para usar a CMEK para o Cloud Run, siga estas etapas:
Configure o Artifact Registry para usar CMEK.
Use o Guia de início rápido do Docker do Artifact Registry como referência para criar um repositório do Docker e envie uma imagem para ele.
Use uma chave simétrica do Cloud KMS atual ou crie uma nova chave simétrica.
Para permitir o acesso do Cloud Run à chave, conceda ao agente de serviço do Cloud Run o papel de criptografador/descriptografador de CryptoKey do Cloud KMS:
Console
Acesse a página "Chaves criptográficas".
Clique no keyring da sua chave para abrir a página da lista de chaves.
Selecione a chave e, na guia "Permissões" à direita, clique em Adicionar principal.
No campo Novos principais, copie o e-mail do agente de serviço do Cloud Run. Ele tem o seguinte sufixo:
service-PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com.
No menu suspenso Selecionar um papel, escolha Criptografador/descriptografador de CryptoKey do Cloud KMS.
Clique em Salvar.
gcloud
Use o seguinte comando
gcloud kms:gcloud kms keys add-iam-policy-binding KEY_NAME \ --keyring=KEYRING \ --location=LOCATION \ --member serviceAccount:service-PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com \ --role='roles/cloudkms.cryptoKeyEncrypterDecrypter'
Substitua:
- KEY_NAME: o nome da chave.
- KEYRING: o nome do keyring.
- LOCATION: o nome da sua região
- PROJECT_NUMBER: o número do projeto em que você pretende implantar o serviço do Cloud Run ou o pool de workers.
Você precisa de permissão para administrar os recursos do Cloud KMS no projetoGoogle Cloud para conceder o papel
roles/cloudkms.cryptoKeyEncrypterDecrypterdo IAM. Somente membros do IAM com papéis de Proprietário (roles/owner) ou Administrador do Cloud KMS (roles/cloudkms.admin) podem conceder ou revogar acesso aos recursos do Cloud KMS.
Configurar a CMEK para um serviço
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Serviços no menu de navegação do Cloud Run e clique em Implantar contêiner para configurar um novo serviço. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar nova revisão.
Ao configurar um novo serviço, preencha a página inicial de configurações de serviço e clique em Contêineres, redes e segurança para expandir essa página.
Clique na guia Segurança.
- Em Criptografia:
- Selecione Chave do Cloud KMS.
- Em Tipo de chave, selecione Cloud KMS.
- No menu Selecionar uma chave do Cloud KMS, escolha uma das seguintes opções:
Selecione Alternar projeto se precisar usar uma chave de um projeto diferente. É possível referenciar uma chave de outro projeto quando a conta de serviço do seu projeto pode acessá-la para operações de criptografia e descriptografia.
Selecione Inserir chave manualmente para inserir o secret de um projeto usando o seguinte formato:
projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME.- Acesse a página "Chaves criptográficas".
- Clique no keyring.
- Selecione o nome do keyring escolhido e clique em Ações.
- Selecione Copiar nome do recurso no menu e cole esse nome no campo Nome do recurso de chave da etapa anterior.
- No menu de ações Revogação de chave, escolha uma das seguintes opções:
Impedir uma nova instância de contêiner: nenhuma instância nova é iniciada após a revogação da chave CMEK.
Encerrar o mais rápido possível: nenhuma instância nova é iniciada, e as instâncias atuais são encerradas após a revogação da chave CMEK.
Atraso de desligamento personalizado: especifique o número de horas antes do encerramento do serviço.
Para copiar e colar o nome do recurso de outro projeto a que você tem acesso:
- Em Criptografia:
Clique em Criar ou Implantar.
gcloud
Para definir uma chave em um serviço, use um dos seguintes comandos:
gcloud run deploy SERVICE \ --image IMAGE_URL \ --key KEY \ --post-key-revocation-action-type KEY_REVOCATION_ACTION --encryption-key-shutdown-hours SHUTDOWN_HOURS
gcloud run services update SERVICE --key KEY --post-key-revocation-action-type KEY_REVOCATION_ACTION --encryption-key-shutdown-hours SHUTDOWN_HOURS
Substitua:
- SERVICE: o nome do serviço.
- IMAGE_URL: uma referência à imagem de contêiner, por
exemplo,
us-docker.pkg.dev/cloudrun/container/hello:latest. Se você usa o Artifact Registry, o repositório REPO_NAME já precisará ter sido criado. O URL segue o formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - KEY: o nome da chave totalmente qualificada no seguinte
formato:
projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME. - KEY_REVOCATION_ACTION:
shut-downouprevent-new, dependendo das suas preferências de revogação de chave. - SHUTDOWN_HOURS: o número de horas de atraso antes de encerrar o serviço após a revogação.
YAML
Se você estiver criando um novo serviço, pule esta etapa. Se você estiver atualizando um serviço existente, faça o download da configuração YAML correspondente:
gcloud run services describe SERVICE --format export > service.yaml
Atualize as seguintes anotações de CMEK para os valores desejados:
apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: annotations: run.googleapis.com/encryption-key: projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME run.googleapis.com/post-key-revocation-action-type: KEY_REVOCATION_ACTION run.googleapis.com/encryption-key-shutdown-hours: SHUTDOWN_HOURS name: REVISION
Substitua:
- SERVICE: o nome do seu serviço do Cloud Run.
- PROJECT_NAME: o nome do projeto em que a chave foi criada.
- LOCATION: o local em que a chave foi criada. Ele precisa corresponder ao local do serviço do Cloud Run.
- KEYRING_NAME: o nome do keyring;
- KEY_NAME: o nome da chave;
- KEY_REVOCATION_ACTION:
shut-downouprevent-new, dependendo das suas preferências de revogação de chave. - SHUTDOWN_HOURS: o número de horas de atraso antes de encerrar o serviço após a revogação.
- REVISION por um novo nome de revisão ou excluí-lo (se houver). Se você fornecer um novo nome de revisão, ele precisará atender aos seguintes critérios:
- Começa com
SERVICE- - Contém apenas letras minúsculas, números e
- - Não termina com um
- - Não excede 63 caracteres
- Começa com
Substitua o serviço pela nova configuração usando o seguinte comando:
gcloud run services replace service.yaml
Terraform
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
Adicione o seguinte a um recurso google_cloud_run_v2_service na configuração do Terraform.
resource "google_cloud_run_v2_service" "default" {
name = "SERVICE"
location = "europe-west1"
template {
containers {
image = "us-docker.pkg.dev/cloudrun/container/hello"
}
encryption_key = "projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME"
}
}
Substitua:
- SERVICE: o nome do seu serviço do Cloud Run.
- PROJECT_NAME: o nome do projeto em que a chave foi criada.
- LOCATION: o local em que a chave foi criada. Ele precisa corresponder ao local do serviço do Cloud Run.
- KEYRING_NAME: o nome do keyring;
- KEY_NAME: o nome da chave;
Usar o Autokey para serviços
Se ainda não tiver feito isso, ative o Autokey do Cloud KMS.
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Serviços no menu de navegação do Cloud Run e clique em Implantar contêiner para configurar um novo serviço. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar nova revisão.
Ao configurar um novo serviço, preencha a página inicial de configurações de serviço e clique em Contêineres, redes e segurança para expandir essa página.
Clique na guia Segurança.
- Em Criptografia:
- No menu Tipo de chave, selecione Cloud KMS com Autokey.
- Clique em Solicitar uma chave.
- Clique em Criar.
Os detalhes da chave são mostrados após a criação do recurso.
- No menu de ações Revogação de chave, escolha uma das seguintes opções:
Impedir uma nova instância de contêiner: nenhuma instância nova é iniciada após a revogação da CMEK.
Desligar o mais rápido possível: nenhuma instância nova é iniciada, e as instâncias atuais são desligadas após a revogação da CMEK.
Atraso de desligamento personalizado: especifique o número de horas antes do encerramento do serviço.
- Em Criptografia:
Clique em Criar ou Implantar.
Ver as configurações de segurança dos serviços
Para ver as configurações de segurança do serviço do Cloud Run:
Console
No console do Google Cloud , acesse a página Serviços do Cloud Run:
Clique no serviço para abrir a página Detalhes do serviço.
Clique na guia Revisões.
No painel de detalhes à direita, a configuração de segurança está listada na guia Segurança.
gcloud
Execute o comando a seguir para conferir as configurações de segurança:
gcloud run services describe SERVICE
Localize a configuração de segurança na configuração retornada.
Configuração adicional para implantações baseadas em origem
As implantações de origem do Cloud Run e as funções envolvem uma etapa de build adicional. Para garantir a conformidade com a CMEK nesta etapa, faça o seguinte:
Crie seu próprio bucket do Cloud Storage criptografado com CMEK. Para mais detalhes, consulte a documentação da CMEK do Cloud Storage.
Faça upload do código-fonte para o bucket de armazenamento criptografado com CMEK como um arquivo compactado.
Crie seu próprio repositório do Artifact Registry criptografado com CMEK. Para mais detalhes, consulte a documentação da CMEK para o Artifact Registry. Esse repositório armazena artefatos produzidos pelo processo de build.
Implante a função transmitindo os recursos de build usando as flags
--sourcee--image.
gcloud run deploy FUNCTION \
--key KEY \
--source CUSTOM_BUCKET_WITH_SOURCE_CODE \
--image CUSTOM_AR_REPOSITORY \
--function FUNCTION_ENTRYPOINT \
--base-image BASE_IMAGE \
--region REGION
Substitua:
FUNCTION: o nome da função que você está implantando. É possível omitir esse parâmetro inteiramente, mas será solicitado o nome, se você omiti-lo.
KEY: o nome da chave totalmente qualificada no seguinte formato:
projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME.CUSTOM_BUCKET_WITH_SOURCE_CODE: o URI de um local do Cloud Storage em que o código-fonte está armazenado. Use o seguinte formato:
gs://BUCKET_NAME/PATH_TO_SOURCE.CUSTOM_AR_REPOSITORY: o URI de um repositório do Artifact Registry no formato
REGION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME.FUNCTION_ENTRYPOINT: o ponto de entrada da função no código-fonte. Esse é o código que o Cloud Run executa quando é executada. O valor dessa sinalização precisa ser um nome de função ou de classe totalmente qualificada no código-fonte.
BASE_IMAGE: o ambiente de imagem de base para sua função. Para mais detalhes sobre as imagens de base e os pacotes incluídos em cada imagem, consulte Imagens de base dos ambientes de execução.
REGION: a Google Cloud região em que você quer implantar a função. Por exemplo,
europe-west1.
Além disso, se você usar o Eventarc para acionar suas funções, familiarize-se com a configuração da CMEK para o Eventarc. Em particular, a conformidade total nesses casos exige a criptografia de canais correspondentes aos tipos de eventos usados.
Testar a revogação da CMEK para serviços
Para verificar se a proteção de CMEK está funcionando, desative a chave usada para ativar a CMEK em um serviço e tente invocar o serviço:
Execute o seguinte comando para confirmar se o serviço está acessível:
curl SERVICE_URLSubstitua SERVICE_URL pelo URL do serviço. Ele aparece na IU do console após a implantação: o URL do contêiner é exibido ao lado do texto URL:.
Aguarde o número de SHUTDOWN_HOURS especificado. Se você não tiver especificado o número de horas de desligamento, reative sua chave e edite ou reimplante o serviço com o valor definido como o mínimo de uma hora. Se você implantou o código-fonte, tente conferir o código. A tentativa falhará.
Depois de aguardar o período de SHUTDOWN_HOURS, execute novamente o comando abaixo e confirme se o serviço não está mais acessível:
curl SERVICE_URL
Depois de verificar se a versão da chave está desativada, ative a chave.
Configurar a CMEK para um pool de workers
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Pools de workers no menu e clique em Implantar contêiner para configurar um novo pool de workers. Se você estiver configurando um pool de workers atual, clique nele e em Editar e implantar nova revisão.
Ao configurar um novo pool de workers, preencha a página inicial do pool e clique em Contêineres, Rede, segurança para expandir a página de configuração do pool de workers.
Clique na guia Segurança.
- Em Criptografia:
- Selecione Chave do Cloud KMS.
- Em Tipo de chave, selecione Cloud KMS.
- No menu Selecionar uma chave do Cloud KMS, escolha uma das seguintes opções:
Selecione Alternar projeto se precisar usar uma chave de um projeto diferente. É possível referenciar uma chave de outro projeto quando a conta de serviço do seu projeto pode acessá-la para operações de criptografia e descriptografia.
Selecione Inserir chave manualmente para inserir o secret de um projeto usando o seguinte formato:
projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME.- Acesse a página "Chaves criptográficas".
- Clique no keyring.
- Selecione o nome do keyring escolhido e clique em Ações.
- Selecione Copiar nome do recurso no menu e cole esse nome no campo Nome do recurso de chave da etapa anterior.
- No menu de ações Revogação de chave, escolha uma das seguintes opções:
Impedir uma nova instância de contêiner: nenhuma instância nova é iniciada após a revogação da chave CMEK.
Encerrar o mais rápido possível: nenhuma instância nova é iniciada, e as instâncias atuais são encerradas após a revogação da chave CMEK.
Atraso de desligamento personalizado: especifique o número de horas antes do encerramento do serviço.
Para copiar e colar o nome do recurso de outro projeto a que você tem acesso:
- Em Criptografia:
Clique em Criar ou Implantar.
gcloud
Para definir uma chave em um pool de workers, use um dos seguintes comandos:
gcloud run worker-pools deploy WORKER_POOL \ --image IMAGE_URL \ --key KEY \ --post-key-revocation-action-type KEY_REVOCATION_ACTION --encryption-key-shutdown-hours SHUTDOWN_HOURS
gcloud run worker-pools update WORKER_POOL --key KEY --post-key-revocation-action-type KEY_REVOCATION_ACTION --encryption-key-shutdown-hours SHUTDOWN_HOURS
Substitua:
- WORKER_POOL: o nome do pool de workers.
- IMAGE_URL: o URL da imagem do contêiner.
- KEY: o nome da chave totalmente qualificada no seguinte
formato:
projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME. - KEY_REVOCATION_ACTION:
shut-downouprevent-new. - SHUTDOWN_HOURS: o número de horas de atraso antes de encerrar o pool de trabalhadores após a revogação.
YAML
Se você estiver criando um novo pool de workers, pule esta etapa. Se você estiver atualizando um pool de trabalhadores, baixe a configuração YAML correspondente:
gcloud run worker-pools describe WORKER_POOL --format export > workerpool.yaml
Atualize as seguintes anotações de CMEK na configuração
WorkerPool:apiVersion: run.googleapis.com/v1 kind: WorkerPool metadata: name: WORKER_POOL spec: template: metadata: annotations: run.googleapis.com/encryption-key: projects/PROJECT_NAME/locations/LOCATION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME run.googleapis.com/post-key-revocation-action-type: KEY_REVOCATION_ACTION run.googleapis.com/encryption-key-shutdown-hours: SHUTDOWN_HOURS
Substitua:
- WORKER_POOL: o nome do pool de workers.
- PROJECT_NAME: o nome do projeto em que a chave foi criada.
- LOCATION: o local em que a chave foi criada. Ele precisa corresponder ao local do pool de workers do Cloud Run.
- KEYRING_NAME: o nome do keyring;
- KEY_NAME: o nome da chave;
- KEY_REVOCATION_ACTION:
shut-downouprevent-new, dependendo das suas preferências de revogação de chave. - SHUTDOWN_HOURS: o número de horas de atraso antes de encerrar o pool de trabalhadores após a revogação.
Substitua o pool de workers pela nova configuração usando o seguinte comando:
gcloud run worker-pools replace workerpool.yaml
Usar o Autokey para pools de workers
Se ainda não tiver feito isso, ative o Autokey do Cloud KMS.
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
Console
No Google Cloud console, acesse o Cloud Run:
Selecione Pools de workers no menu e clique em Implantar contêiner para configurar um novo pool de workers. Se você estiver configurando um pool de workers atual, clique nele e em Editar e implantar nova revisão.
Ao configurar um novo pool de workers, preencha a página inicial do pool e clique em Contêineres, Rede, segurança para expandir a página de configuração do pool de workers.
Clique na guia Segurança.
- Em Criptografia:
- No menu Tipo de chave, selecione Cloud KMS com Autokey.
- Clique em Solicitar uma chave.
- Clique em Criar.
Os detalhes da chave são mostrados após a criação do recurso.
- No menu de ações Revogação de chave, escolha uma das seguintes opções:
Impedir uma nova instância de contêiner: nenhuma instância nova é iniciada após a revogação da CMEK.
Desligar o mais rápido possível: nenhuma instância nova é iniciada, e as instâncias atuais são desligadas após a revogação da CMEK.
Atraso de desligamento personalizado: especifique o número de horas antes do encerramento do serviço.
- Em Criptografia:
Clique em Criar ou Implantar.
Ver as configurações de segurança dos pools de workers
Para conferir as configurações de segurança do pool de trabalhadores do Cloud Run:
Console
No console do Google Cloud , acesse a página de pools de trabalhadores do Cloud Run:
Clique no pool de workers para abrir a página Detalhes do pool de workers.
Clique na guia Revisões.
Localize a configuração de segurança nos detalhes da configuração.
gcloud
Use o comando a seguir:
gcloud run worker-pools describe WORKER_POOL
Localize a configuração de segurança na configuração retornada.
Entender os registros de auditoria e as mensagens de erro
Se você for responsável pelo monitoramento dos registros de auditoria, uma das tarefas pode ser verificar operações CMEK no serviço do Cloud Run ou no pool de trabalhadores. Nesse caso, você precisa entender os registros de auditoria relacionados.
Se você for responsável por resolver e corrigir erros de ambiente de execução do serviço ou pool de trabalhadores do Cloud Run, talvez seja necessário solucionar os problemas relacionados à CMEK registrados durante a operação do recurso do Cloud Run.
As seções a seguir fornecem as informações necessárias para as tarefas acima.
Registros de auditoria
Os registros de auditoria do KMS fornecem uma trilha de auditoria para cada operação realizada com uma chave. Para os recursos do Cloud Run com CMEK ativado, o Cloud Run adiciona o contexto do autor da chamada específico do Cloud Run que detalha por que a chave do cliente foi acessada pelo sistema. A tabela a seguir lista os contextos que podem ser vistos nos registros de auditoria:
| Motivo do acesso à chave | Descrição |
|---|---|
Decrypting CMEK-encrypted layer during container clone start. |
Registrado sempre que uma nova instância é iniciada. |
Encrypting a newly created data-encryption-key w/ the customer-managed-encryption-key. |
Registrado durante a implantação de um serviço ou pool de trabalhadores ativado para CMEK, em que a chave de criptografia de dados é encapsulada pela CMEK. |
Decrypting an existing encrypted data-encryption-key, under the same customer-managed-encryption-key, to be used to encrypt container contents. |
Registrado quando uma nova instância é iniciada e requer a descriptografia da imagem. |
Performing an encrypt operation on dummy data to check the customer-managed-encryption-key status and access. |
Registrado sempre que há uma verificação de validação na chave, que é feita periodicamente. |
Performing a decrypt operation on dummy data to check the customer-managed-encryption-key status and access. |
Registrado sempre que há uma verificação de validação na chave, que é feita periodicamente. |
Para detalhes sobre o formato e o conteúdo do registro de auditoria, consulte a página Registro de auditoria do KMS.
Mensagens de erro
As mensagens de erro fornecidas por um gerenciador de chaves externo são transmitidas diretamente para os registros do Cloud Run do seu serviço.
A tabela a seguir lista as mensagens de erro relacionadas à CMEK, além de descrições e possíveis soluções.
| Mensagem | Descrição |
|---|---|
User's service account does not have CMEK decrypter permission. Service account: %s |
Solução: permitir que o recurso do Cloud Run acesse a chave |
User's KMS operation quota has been exceeded. CMEK key: %s |
O recurso ativado para CMEK excedeu as cotas do KMS. Solução: solicite mais cota de KMS |
User's CMEK key has been disabled. CMEK key: %s |
A CMEK foi revogada. Solução: mude a CMEK do recurso e reimplante-o. |
User's CMEK key has been destroyed. CMEK key: %s |
A CMEK foi excluída. Solução: mude a CMEK do recurso e reimplante-o. |
User's CMEK key has been scheduled for deletion. CMEK Key: %s |
A chave CMEK foi programada para exclusão. Solução: mude a CMEK do recurso e reimplante-o. |
A seguir
- Saiba mais sobre a CMEK.
- Saiba mais sobre permissões e papéis no Cloud KMS.
- Saiba mais sobre a criptografia padrão do Google.
- Criar uma chave.
- Saiba como alternar as chaves.
- Registros de auditoria