Esta página descreve a utilização das CMEK com o Apigee. Para ver as práticas recomendadas, consulte o artigo Práticas recomendadas para a CMEK do Apigee.
Vista geral
Por predefinição,o Ads Data Hub Google Cloud encripta automaticamente os dados quando estão em repouso através de chaves de encriptação que são propriedade da Google e geridas por esta. Se tiver requisitos de conformidade ou regulamentares específicos relacionados com as chaves que protegem os seus dados, pode usar chaves de encriptação geridas pelo cliente (CMEK).
Pode ler mais acerca da utilização das CMEK para o Apigee em Usar CMEK com o Apigee. Para mais informações acerca das CMEK em geral, incluindo quando e por que motivo as ativar, consulte a documentação do Cloud Key Management Service.
A utilização de chaves de encriptação geridas pelo cliente (CMEK) não oferece necessariamente mais segurança do que os mecanismos de encriptação predefinidos da Google. No entanto, dá-lhe o controlo sobre mais aspetos do ciclo de vida e da gestão das suas chaves para cumprir os requisitos de segurança e conformidade.
Se precisar de mais controlo sobre as operações de chaves do que o permitido pelas chaves de encriptação e pertencentes à Google com tecnologia do Google Cloud, pode usar chaves de encriptação geridas pelo cliente. Estas chaves são criadas e geridas através do Cloud Key Management Service (Cloud KMS), e armazena as chaves como chaves de software, num cluster de HSM ou externamente.
As funcionalidades de gestão de chaves são fornecidas pelo serviço Cloud KMS.
Exemplos de utilização das CMEK
Esta secção descreve exemplos de utilização típicos da CMEK com o Apigee.
Rotação de chaves
Rodar a chave automaticamente ou manualmente. Tenha em atenção que, quando a chave é alterada, os dados armazenados anteriormente no Apigee não são encriptados novamente de forma automática com a nova versão da chave, mas continuam a estar acessíveis desde que a versão da chave anterior usada para encriptar os dados não seja desativada nem destruída.
O objetivo principal da rotação de chaves é limitar a exposição de dados a uma única chave e não substituir completamente a versão antiga da chave.
Atualmente, o Apigee não suporta a reencriptação após a rotação de chaves.
Especificamente para o Apigee, quando roda uma chave, apenas um número limitado de novos dados (por exemplo, uma nova revisão do proxy) é encriptado com a nova versão da chave principal. A maioria dos dados, como os dados analíticos, o disco de tempo de execução e a revisão do proxy antigo, continua a usar a versão antiga da chave.
Se quiser eliminar completamente a versão anterior da chave, tem de
recriar a organização apigee
. Para chaves de encriptação de tempo de execução, se quiser eliminar completamente a versão anterior da chave, tem de recriar as instâncias de tempo de execução. Consulte as
Práticas recomendadas para o CMEK do Apigee para ver mais detalhes.
Veja também: Alterne uma chave
Eliminação e desativação de chaves
Quando uma versão de chave está desativada, os dados do Apigee encriptados com essa versão de chave não estão acessíveis. Para restaurar o acesso aos dados, a chave pode ser reativada.
Quando elimina ou desativa a chave CMEK, mesmo que seja apenas para versões anteriores,
a sua organização apigee
começa a funcionar incorretamente consoante a versão da chave
usada para a encriptação. Determinadas APIs vão deixar de funcionar
imediatamente, uma vez que requerem uma chave CMEK para desencriptar dados, enquanto determinadas
funções só vão começar a funcionar incorretamente quando for acionada
alguma ação do sistema, como a remontagem de discos persistentes do Compute Engine. Consulte a secção
Desativação de chaves para mais informações.
Quando uma versão de chave é destruída, todos os dados do Apigee encriptados com essa versão de chave tornam-se ilegíveis e irrecuperáveis. Esta é uma operação permanente e irreversível.
Veja também:
Restauro de chaves
Se eliminar ou desativar acidentalmente uma chave ou uma versão anterior da chave, deve
tentar restaurá-las o mais rapidamente possível.
Tenha em atenção que as CMEK são uma funcionalidade destinada à perda de dados se a chave não estiver disponível.
Depois de restaurar a chave, não é garantido que a sua organização do apigee
seja recuperada, e pode ocorrer perda de dados. Consulte o artigo
Reativar uma chave para mais detalhes.
Contacte o apoio técnico do Google Cloud e veja qual é o melhor passo seguinte.
Consulte também: Destrua e restaure versões de chaves
Revogue o acesso à chave
Se revogar o acesso do agente do serviço Apigee à chave através do IAM, o Apigee não vai poder aceder a quaisquer dados do plano de controlo encriptados por qualquer versão da chave. As operações da API Apigee que dependem da desencriptação dos dados falham. O acesso aos dados pode ser restaurado concedendo novamente o acesso à chave e as operações da API Apigee que desencriptam os dados vão ser restauradas.
Consulte também: Faça a gestão do acesso a projetos, pastas e organizações
EKM
Atualmente, o Apigee não suporta o Cloud External Key Manager (Cloud EKM). Se usar o EKM na nuvem, existe um defeito conhecido que impede a propagação e a apresentação adequadas dos erros do EKM na nuvem.
Acompanhamento de chaves
O Apigee não suporta a monitorização de chaves. Se estiver a usar a utilização de chaves e se aperceber de que uma determinada versão da chave não é usada, tenha em atenção que não é preciso, uma vez que o Apigee não está integrado com as funcionalidades de monitorização de chaves.
Quotas
A utilização de chaves CMEK pode gerar utilização em relação a algumas quotas do Cloud KMS. Para ver as informações mais recentes sobre as quotas do Cloud KMS, consulte o artigo Quotas.
Revogue a chave de encriptação
Se considerar que os seus dados no Apigee Google Cloud foram comprometidos, pode revogar as suas chaves de encriptação. Revogue a CMEK de tempo de execução para fazer com que a instância de tempo de execução funcione incorretamente e não consiga aceder aos dados da gateway. Revogue a CMEK do plano de controlo para impedir que o Apigee realize tarefas de análise ou implemente novos proxies.
Usar CMEK com o Apigee
As chaves de encriptação do Apigee são usadas para dados de tempo de execução e do plano de controlo e são criadas durante o processo de aprovisionamento.
Os dados do plano de controlo do Apigee são encriptados com uma chave de encriptação diferente dos dados de tempo de execução e podem ser armazenados em regiões diferentes. Conforme a documentação da CMEK, esta encriptação aplica-se apenas aos dados em repouso, ou seja, dados que são armazenados no disco.
Os dados do plano de controlo do Apigee incluem configurações de proxy (pacotes), alguns dados de configuração do ambiente e dados de estatísticas. Os dados de tempo de execução do Apigee incluem dados de aplicações, como KVMs, cache e segredos de clientes, que são armazenados na base de dados de tempo de execução.
Consulte o artigo Acerca das chaves de encriptação do Apigee para ver descrições dos tipos de chaves de encriptação.
Só pode adicionar chaves de encriptação no momento da criação da organização do Apigee. Depois de atribuir uma CMEK, não pode alterá-la para uma CMEK diferente após a criação da organização.
Regiões CMEK do plano de controlo de residência dos dados
No plano de controlo do Apigee regionalizado, seleciona duas chaves de encriptação para o seu plano de controlo. Isto deve-se ao facto de alguns dos componentes subjacentes ao plano de controlo do Apigee estarem sempre numa única região na localização do plano de controlo. Consulte o artigo Regiões de residência de dados para mais informações.
Detalhes | Chaves obrigatórias |
---|---|
A região do plano de controlo é onde o plano de controlo é executado. O plano de controlo no Apigee é um conceito abstrato em que vários componentes subjacentes constituem o plano de controlo do Apigee. Os dados do plano de controlo são a configuração do proxy e o armazenamento de estatísticas. Outros dados do plano de controlo (por exemplo, processamento de estatísticas, portais) encontram-se numa sub-região do plano de controlo. Todos os componentes da sub-região vão estar na mesma região. |
Uma chave para dados do plano de controlo. Uma chave para os dados da sub-região do plano de controlo. |
Restrições de políticas da organização
Se tiver restrições da política da organização de CMEK no seu projeto, o Apigee vai aplicar a conformidade com essas restrições. Se estiver a usar o Apigee através da IU, da CLI ou diretamente através das APIs Apigee, a aplicação das políticas de CMEK é garantida. Google CloudGoogle Cloud Quando usa a Google Cloud IU do Apigee, as restrições da política da organização da CMEK são pré-validadas para que a IU possa orientá-lo na escolha de uma configuração válida e em conformidade.
As restrições da política da organização CMEK podem ser criadas para exigir que:
- As chaves de encriptação geridas pelo cliente são sempre usadas
- As chaves de encriptação geridas pelo cliente só são permitidas a partir de projetos específicos especificados numa lista de autorizações
Atualmente, nem todas as funcionalidades no Apigee estão em conformidade com a CMEK. Para garantir que os projetos que requerem CMEK não usam inadvertidamente funcionalidades que não estão protegidas por CMEK, essas funcionalidades são desativadas para projetos restritos por CMEK até estarem em conformidade. Apenas as novas utilizações das funcionalidades serão desativadas (criar novos recursos ou ativar um suplemento). As funcionalidades e os recursos que já estão em utilização vão permanecer disponíveis e editáveis, mas não estão em conformidade com a CMEK. As seguintes funcionalidades são desativadas:
- A IU clássica do Apigee vai estar indisponível para organizações criadas recentemente que exijam CMEK, porque as organizações CMEK são organizações regionais que não são suportadas na IU clássica. As organizações existentes vão continuar a poder usar a IU clássica. Tenha em atenção que a pré-validação da CMEK não será implementada na IU clássica e vai depender do erro da API. Isto significa que as organizações existentes que requerem CMEK não vão ter uma experiência do utilizador guiada para configurar a configuração CMEK nem para a desativação de funcionalidades não compatíveis com CMEK.
-
A Apigee Shadow API Discovery não está sujeita à política da organização CMEK e não está em conformidade com a CMEK.
- A criação de organizações de avaliação é bloqueada pela API de organização de avaliação CreateOrganization e pelo assistente de aprovisionamento de avaliação.
-
O Gemini Code Assist não está disponível.
- A criação de organizações globais vai ser bloqueada pela API CreateOrganization de avaliação de organizações e pelo assistente de aprovisionamento de avaliação.
- A criação de instâncias híbridas não está disponível para aplicação.
- O botão Looker Studio para abrir o Looker Studio com dados do Apigee é desativado quando a CMEK é necessária.
- A criação de portais vai ser bloqueada pela API CreateSite. Uma vez que a IU dos portais só está disponível no Apigee Classic (e não na Google Cloud consola), e a pré-validação não vai ser implementada na IU do Apigee Classic, este bloqueio vai basear-se no erro da API (o botão Criar portal na IU do Apigee Classic não vai ser desativado).
- A aplicação retroativa da conformidade para recursos existentes não está disponível. Tem de eliminar e recriar recursos se precisar que um recurso existente esteja em conformidade.
Consulte o artigo Usar restrições da política da organização no Apigee para mais informações sobre a utilização de restrições da política da organização com o Apigee.
Como criar chaves de encriptação
Por predefinição, a Google gere a criação de chaves de encriptação durante o processo de aprovisionamento. No entanto, pode criá-las por si. Para mais informações, consulte Acerca das chaves de encriptação do Apigee.
Riscos e mitigações
Esta secção descreve potenciais ameaças e ações que pode realizar.
- Riscos:
- Compromisso de chaves: ocorre quando um atacante obtém acesso à chave de encriptação, potencialmente através de vulnerabilidades no KMS ou de ataques contra administradores de chaves.
- Negação de serviço: um atacante pode interromper o acesso às chaves de encriptação ou aos dados atacando o KMS ou o sistema de armazenamento.
- Perda da chave: a eliminação ou a perda acidental da chave pode levar à perda ou à inacessibilidade dos dados.
- Mitigações:
- Implemente políticas de gestão de chaves e controlo de acesso rigorosas.
- Monitorize os registos e a atividade do KMS para verificar comportamentos suspeitos.
Resolução de problemas
A tabela seguinte descreve algumas condições de erro comuns que podem surgir com os dados da configstore encriptados com CMEK, a mensagem de erro aproximada devolvida pela API Apigee e os passos de resolução de problemas recomendados.
Mensagem de erro/sintoma | Causa | Passos a seguir |
---|---|---|
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create or enable trial org. CMEK is
not supported for trial orgs. To use trial orgs, adjust the
gcp.restrictNonCmekServices constraint for this project.
|
Tentou aprovisionar uma organização de avaliação onde existe uma restrição de política da organização para o projeto. |
A CMEK não é suportada para organizações de avaliação/teste. Tem de atualizar a restrição da política da organização constraints/gcp.restrictNonCmekServices para remover o Apigee da lista de serviços recusados para poder aprovisionar uma organização de avaliação.
|
Constraint constraints/gcp.restrictCmekCryptoKeyProjects
violated for projects/my-project attempting to use
projects/my-project/locations/my-location/keyRings/kr-1/cryptoKeys/ck-1
key. Use a key from a project that is allowed by the
gcp.restrictCmekCryptoKeyProjects constraint.
|
Tentou aprovisionar uma organização onde existe uma restrição de política da organização para o projeto e especificou uma CryptoKey do KMS que não está na lista de autorizações. |
Definiu constraints/gcp.restrictCmekCryptoKeyProjects
nas políticas da organização, o que exige que faculte uma chave CMEK dos
projetos permitidos indicados por si. Tem de fornecer a CMEK
de um projeto permitido para poder criar uma organização ou instâncias.
Em alternativa, pode atualizar a restrição da política da organização
constraints/gcp.restrictCmekCryptoKeyProjects para permitir
chaves do projeto Google Cloud específico que quer.
|
Apigee does not have permission to access key "..."
|
Um utilizador revogou o acesso do Apigee à chave do KMS fornecida, ou seja,
removendo a função roles/cloudkms.cryptoKeyEncrypterDecrypter .
|
Um utilizador deve verificar as funções configuradas na chave do KMS e garantir que o agente de serviço do Apigee tem as autorizações necessárias. |
Unable to encrypt/decrypt data. Cloud KMS Error: "..." is not
enabled, current state is: DESTROYED.
|
Um utilizador desativou ou eliminou a versão da chave usada para encriptar/desencriptar o fragmento de dados pedido. | Se possível, um utilizador deve reativar a versão da chave. Se a chave ou a versão da chave tiver sido destruída, os dados são irrecuperáveis (por conceção). |
No new Analytics data for US/EU users
|
Uma das possíveis causas deste problema pode ser um utilizador que revogou/desativou/eliminou uma chave de região única. | Um utilizador deve reativar/restaurar o acesso à chave de região única. |
Control plane key "..." in region "..." is not valid for this
control plane instance. Supported region(s) are "…".
|
Um utilizador forneceu uma chave do plano de controlo de região única numa região que não é válida nem suportada para a região ou a multirregião publicada pela instância do plano de controlo. | Um utilizador tem de fornecer uma chave numa das regiões suportadas ou optar por usar uma instância do plano de controlo diferente. |
Multi-region control plane key is not valid for this control
plane instance. Specify only the "apiConsumerDataEncryptionKeyName"
field.
|
Um utilizador forneceu uma chave do plano de controlo multirregional num plano de controlo que existe apenas numa única região (ou seja, não é um plano de controlo multirregional). | Um utilizador tem de omitir o campo de chave multirregional ou optar por usar uma instância do plano de controlo multirregional. |
Multi-region control plane key is not valid for this control
plane instance. Specify a multi-region key with region "..."
|
Um utilizador forneceu uma chave do plano de controlo multirregional à instância do plano de controlo multirregional errada (por exemplo, uma chave "us" à instância do plano de controlo "eu") | Um utilizador tem de usar uma chave multirregional na região multirregional correta ou optar por usar uma instância do plano de controlo multirregional diferente. |