Configure as Justificações de acesso às chaves com o Cloud KMS e o Cloud HSM
Esta página descreve como configurar as justificações de acesso a chaves com o Cloud KMS ou o Cloud HSM para o limite de dados do Japão do Assured Workloads.
Durante os passos para criar uma nova pasta do Assured Workloads para as regiões do Japão, tem a opção de criar um novo projeto e um anel de chaves para as suas chaves criptográficas. As chaves do Cloud KMS e as chaves do Cloud HSM podem ser adicionadas a este conjunto de chaves, e também pode configurar uma política de Key Access Justifications para controlar o acesso a cada chave.
Antes de começar
- A capacidade de usar as Justificações de acesso às chaves com chaves do Cloud KMS e do Cloud HSM só está disponível para o limite de dados do Japão no Assured Workloads.
- Certifique-se de que o seu administrador lhe concedeu uma das funções de gestão de identidade e de acesso (IAM) necessárias para criar e gerir as suas políticas de Key Access Justifications e as próprias chaves do Cloud KMS e do Cloud HSM.
Autorizações de IAM necessárias
Para receber as autorizações de que precisa para criar e gerir chaves do Cloud KMS e do Cloud HSM, bem como as respetivas políticas de justificação do acesso às chaves,
peça ao seu administrador para lhe conceder a função da IAM
administrador do Cloud KMS (roles/cloudkms.admin
)
no projeto que contém o conjunto de chaves.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Esta função predefinida contém as autorizações necessárias para criar e gerir chaves do Cloud KMS e do Cloud HSM, bem como as respetivas políticas de justificação do acesso às chaves. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
As seguintes autorizações são necessárias para criar e gerir chaves do Cloud KMS e do Cloud HSM, bem como as respetivas políticas de justificação de acesso às chaves:
-
cloudkms.cryptoKeys.create
-
cloudkms.cryptoKeys.update
-
cloudkms.cryptoKeys.get
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Configure uma chave com as Justificações de acesso a chaves
Para configurar as Justificações de acesso às chaves com uma chave do Cloud KMS ou do Cloud HSM, pode incluir a política de acesso às chaves como um parâmetro quando cria a chave ou pode atualizar a chave com a política depois de a chave ter sido criada.
Crie uma nova chave e política
Consola
Na Google Cloud consola, aceda à página Gestão de chaves.
Clique no nome do conjunto de chaves onde quer criar a chave.
Clique em Criar chave.
Em Nome da chave, introduza um nome para a chave.
Nível de proteção, selecione Software ou HSM.
Continue a selecionar as definições conforme necessário.
Em Definições adicionais, selecione Definir política de justificação de acesso à chave e, de seguida, selecione Motivos de justificação permitidos.
Para Motivos de justificação, selecione Acesso iniciado pelo cliente, Operação do sistema iniciada pela Google e quaisquer outros códigos de motivos que queira permitir. O acesso iniciado pelo cliente e o funcionamento do sistema iniciado pela Google são essenciais para o funcionamento normal.
Clique em Criar.
REST
Crie uma nova chave e política através do método
cryptoKeys.create
:
POST https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME
No pedido, substitua os seguintes valores de marcadores de posição:
- PROJECT_ID: o ID do projeto que contém o anel de chaves ao qual quer adicionar uma chave, por exemplo,
919698201234
. - LOCATION: A localização do conjunto de chaves, por exemplo,
asia-northeast1
. - KEY_RING: o nome do conjunto de chaves que especificou quando criou o projeto de gestão de chaves e o conjunto de chaves da pasta Assured Workloads.
- KEY_NAME: o nome da chave do HSM que quer criar. Por exemplo,
my-hsm-key
.
Corpo do pedido:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "PROTECTION_LEVEL", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
No corpo do pedido, substitua os seguintes valores de marcadores de posição:
- PURPOSE: a finalidade da chave. Para ver uma lista de diferentes finalidades das chaves, consulte Finalidades das chaves, por exemplo,
ENCRYPT_DECRYPT
. - PROTECTION_LEVEL: o nível de proteção da chave, por exemplo,
SOFTWARE
ouHSM
. - ALGORITHM: o algoritmo criptográfico a usar. Para uma lista dos algoritmos disponíveis, consulte os algoritmos do Cloud KMS, por exemplo,
GOOGLE_SYMMETRIC_ENCRYPTION
. - ALLOWED_ACCESS_REASONS: a política de justificações de acesso a chaves que define zero ou mais códigos de justificação permitidos para aceder à chave de encriptação, por exemplo,
["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]
.
O exemplo de pedido e corpo do pedido abaixo cria uma chave do Cloud HSM que só permite justificações de acesso por alguns motivos:
POST https://cloudkms.googleapis.com/v1/projects/919698201234/locations/asia-northeast1/keyRings/my-key-ring/cryptoKeys?crypto_key_id=my-hsm-key
{ "purpose": "ENCRYPT_DECRYPT", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ "CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION" ] } }
Atualize a política de uma chave existente
Consola
Na Google Cloud consola, aceda à página Gestão de chaves.
Clique no nome do conjunto de chaves onde criou a chave.
Clique no nome da chave para a qual quer atualizar a política de Justificações de acesso a chaves.
Clique em Editar política de justificações de acesso a chaves.
Efetue um dos seguintes passos:
Para desativar a política de justificação de acesso a chaves na chave, desmarque a caixa de verificação Definir política de justificação de acesso a chaves.
Para alterar os motivos de justificação permitidos, clique na caixa Motivos de justificação e selecione ou desmarque os códigos de motivos conforme necessário. O acesso iniciado pelo cliente e a operação do sistema iniciada pela Google são essenciais para o funcionamento normal.
Para recusar todos os códigos de motivo, selecione Recusar todos os códigos de motivo (não recomendado). Isto impede a utilização da chave, mesmo que a chave esteja ativada e o requerente tenha as autorizações necessárias.
Clique em Guardar.
REST
Atualize uma chave existente no Cloud KMS através do método
cryptoKeys.patch
:
PATCH https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?update_mask=keyAccessJustificationsPolicy
No pedido, substitua os seguintes valores de marcadores de posição:
- PROJECT_ID: o ID do projeto que contém o conjunto de chaves para a chave, por exemplo,
919698201234
. - LOCATION: A localização do conjunto de chaves, por exemplo,
asia-northeast1
. - KEY_RING: o nome do conjunto de chaves que especificou quando criou o projeto de gestão de chaves e o conjunto de chaves da pasta Assured Workloads.
- KEY_NAME: o nome da chave que quer atualizar.
Corpo do pedido:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "PROTECTION_LEVEL", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
No corpo do pedido, substitua os seguintes valores de marcadores de posição:
- PURPOSE: a finalidade da chave. Para ver uma lista de diferentes finalidades das chaves, consulte Finalidades das chaves, por exemplo,
ENCRYPT_DECRYPT
. - PROTECTION_LEVEL: o nível de proteção da chave, por exemplo,
SOFTWARE
ouHSM
. - ALGORITHM: o algoritmo criptográfico a usar. Para uma lista dos algoritmos disponíveis, consulte os algoritmos do Cloud KMS, por exemplo,
GOOGLE_SYMMETRIC_ENCRYPTION
. - ALLOWED_ACCESS_REASONS: a política de justificações de acesso a chaves que define zero ou mais códigos de justificação permitidos para aceder à chave de encriptação, por exemplo,
["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]
.
O exemplo de pedido e corpo do pedido seguinte só permite justificações de acesso por alguns motivos:
PATCH https://cloudkms.googleapis.com/v1/projects/919698201234/locations/asia-northeast1/keyRings/my-key-ring/cryptoKeys/my-hsm-key?keyAccessJustificationsPolicy
{ "purpose": "ENCRYPT_DECRYPT", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ "CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION" ] } }
Obtenha a política de justificações de acesso a chaves para uma chave
REST
Obtenha metadados sobre uma chave existente no Cloud KMS através do método
cryptoKeys.get
:
GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME
Nos parâmetros do pedido, substitua os seguintes valores de marcadores de posição pelos seus próprios valores:
- PROJECT_ID: O ID do projeto que contém o conjunto de chaves para a chave, por exemplo,
919698201234
. - LOCATION: A localização do conjunto de chaves, por exemplo,
asia-northeast1
. - KEY_RING: o nome do conjunto de chaves que especificou quando criou o projeto de gestão de chaves e o conjunto de chaves da pasta Assured Workloads, por exemplo,
my-key-ring
. - KEY_NAME: o nome da chave que quer obter.
O pedido de exemplo seguinte recebe metadados sobre uma chave no Cloud KMS:
GET https://cloudkms.googleapis.com/v1/projects/919698201234/locations/asia-northeast1/keyRings/my-key-ring/cryptoKeys/my-hsm-key
O corpo da resposta contém metadados sobre a sua chave, incluindo o
keyAccessJustificationsPolicy
.
Por exemplo:
{ "purpose": "ENCRYPT_DECRYPT", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ "CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION" ] } }