Configurar justificativas de acesso às chaves com o Cloud KMS e o Cloud HSM
Nesta página, descrevemos como configurar as justificativas de acesso às chaves com o Cloud KMS ou o Cloud HSM para o limite de dados do Assured Workloads no Japão.
Durante as etapas para criar uma nova pasta do Assured Workloads para regiões do Japão, você tem a opção de criar um novo projeto e um keyring para suas chaves criptográficas. As chaves do Cloud KMS e do Cloud HSM podem ser adicionadas a esse keyring, e você também pode configurar uma política de justificativas de acesso às chaves para controlar o acesso a cada chave.
Antes de começar
- Só é possível usar as justificativas de acesso às chaves com chaves do Cloud KMS e do Cloud HSM em pastas inscritas no pacote de controle de regiões do Japão no Assured Workloads.
- Verifique se o administrador concedeu a você um dos papéis necessários do Identity and Access Management (IAM) para criar e gerenciar as políticas de justificativas de acesso às chaves e as chaves do Cloud KMS e do Cloud HSM.
Permissões do IAM obrigatórias
Para ter as permissões necessárias para criar e gerenciar chaves do Cloud KMS e do Cloud HSM e as políticas de Justificativas de acesso às chaves, peça ao administrador para conceder a você opapel de administrador do Cloud KMS (roles/cloudkms.admin) no projeto que contém o keyring.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém as permissões necessárias para criar e gerenciar chaves do Cloud KMS e do Cloud HSM e as políticas de justificativas de acesso às chaves. Para acessar as permissões exatas que são necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar e gerenciar chaves do Cloud KMS e do Cloud HSM e as políticas de justificativas de acesso às chaves:
-
cloudkms.cryptoKeys.create -
cloudkms.cryptoKeys.update -
cloudkms.cryptoKeys.get
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Configurar uma chave com justificativas de acesso às chaves
Para configurar as justificativas de acesso às chaves com uma chave do Cloud KMS ou do Cloud HSM, inclua a política de acesso à chave como um parâmetro ao criar a chave ou atualize a chave com a política depois que ela for criada.
Criar uma nova chave e política
Console
No Google Cloud console do, acesse a página Gerenciamento de chaves.
Clique no nome do keyring em que você quer criar a chave.
Clique em Criar chave.
Em Nome da chave, insira um nome para a chave.
Nível de proteção, selecione Software ou HSM.
Continue selecionando as configurações conforme necessário.
Em Configurações adicionais > Política de justificativas de acesso às chaves, selecione Definir política personalizada e, em seguida, selecione Permitir códigos de motivo específicos.
Em Motivos de justificativa, selecione Acesso iniciado pelo cliente, Operação do sistema iniciada pelo Google e outros códigos de motivo que você quer permitir. O Acesso iniciado pelo cliente e a Operação do sistema iniciada pelo Google são essenciais para o funcionamento normal.
Clique em Criar.
REST
Crie uma nova chave e política usando o
cryptoKeys.create
método:
POST https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME
Na solicitação, substitua os seguintes valores de marcador:
- PROJECT_ID: o ID do projeto que contém o keyring em que
você quer adicionar uma chave, por exemplo,
919698201234. - LOCATION: o local do keyring, por exemplo,
asia-northeast1. - KEY_RING: o nome do keyring especificado ao criar o projeto de gerenciamento de chaves e o keyring da pasta do Assured Workloads.
- KEY_NAME: o nome da chave do HSM que você quer criar, por
exemplo,
my-hsm-key.
Corpo da solicitação:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "PROTECTION_LEVEL", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
No corpo da solicitação, substitua os seguintes valores de marcador:
- PURPOSE: a finalidade da chave. Para uma lista de finalidades de chave diferentes, consulte
Finalidades de chave, por exemplo,
ENCRYPT_DECRYPT. - PROTECTION_LEVEL: o nível de proteção da chave, por
exemplo,
SOFTWAREouHSM. - ALGORITHM: o algoritmo criptográfico a ser usado. Para uma lista de
algoritmos disponíveis, consulte
Algoritmos do Cloud KMS, por exemplo,
GOOGLE_SYMMETRIC_ENCRYPTION. - ALLOWED_ACCESS_REASONS: a política de justificativas de acesso às chaves que define zero
ou mais códigos de justificativa permitidos
para acessar a chave de criptografia, por exemplo,
["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"].
O exemplo de solicitação e corpo de solicitação a seguir cria uma chave do Cloud HSM que permite justificativas de acesso apenas 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" ] } }
Atualizar a política de uma chave atual
Console
No Google Cloud console do, acesse a página Gerenciamento de chaves.
Clique no nome do keyring em que você criou a chave.
Clique no nome da chave para a qual você quer atualizar a política de justificativas de acesso às chaves.
Clique em Editar política de justificativas de acesso às chaves.
Escolha uma destas opções:
Para desativar a política de justificativas de acesso às chaves, desmarque a caixa de seleção Definir política de justificativas de acesso às chaves.
Para mudar os motivos de justificativa permitidos, clique na caixa Motivos de justificativa e selecione ou desmarque os códigos de motivo conforme necessário. O Acesso iniciado pelo cliente e a Operação do sistema iniciada pelo Google são essenciais para o funcionamento normal.
Para negar todos os códigos de motivo, selecione Negar todos os códigos de motivo (não recomendado). Isso impede que a chave seja usada, mesmo que ela esteja ativada e o solicitante tenha as permissões necessárias.
Clique em Salvar.
REST
Atualize uma chave atual no Cloud KMS usando o
cryptoKeys.patch
método:
PATCH https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?update_mask=keyAccessJustificationsPolicy
Na solicitação, substitua os seguintes valores de marcador:
- PROJECT_ID: o ID do projeto que contém o key
ring da chave, por exemplo,
919698201234. - LOCATION: o local do keyring, por exemplo,
asia-northeast1. - KEY_RING: o nome do keyring especificado ao criar o projeto de gerenciamento de chaves e o keyring da pasta do Assured Workloads.
- KEY_NAME: o nome da chave que você quer atualizar.
Corpo da solicitação:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "PROTECTION_LEVEL", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
No corpo da solicitação, substitua os seguintes valores de marcador:
- PURPOSE: a finalidade da chave. Para uma lista de finalidades de chave diferentes, consulte
Finalidades de chave, por exemplo,
ENCRYPT_DECRYPT. - PROTECTION_LEVEL: o nível de proteção da chave, por
exemplo,
SOFTWAREouHSM. - ALGORITHM: o algoritmo criptográfico a ser usado. Para uma lista de
algoritmos disponíveis, consulte
Algoritmos do Cloud KMS, por exemplo,
GOOGLE_SYMMETRIC_ENCRYPTION. - ALLOWED_ACCESS_REASONS: a política de justificativas de acesso às chaves que define zero
ou mais códigos de justificativa permitidos
para acessar a chave de criptografia, por exemplo,
["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"].
O exemplo de solicitação e corpo de solicitação a seguir permite justificativas de acesso apenas 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" ] } }
Receber a política de justificativas de acesso às chaves de uma chave
REST
Receba metadados sobre uma chave atual no Cloud KMS usando o
cryptoKeys.get
método:
GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAMENos parâmetros da solicitação, substitua os seguintes valores de marcador pelos seus:
- PROJECT_ID: o ID do projeto que contém o keyring da
chave, por exemplo,
919698201234. - LOCATION: o local do keyring, por exemplo,
asia-northeast1. - KEY_RING: o nome do keyring especificado ao criar o projeto de gerenciamento de chaves e o keyring da pasta do Assured Workloads, por exemplo,
my-key-ring. - KEY_NAME: o nome da chave que você quer receber.
O exemplo de solicitação a seguir 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-keyO corpo da resposta contém metadados sobre a chave, incluindo o
keyAccessJustificationsPolicy.
Exemplo:
{ "purpose": "ENCRYPT_DECRYPT", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ "CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION" ] } }
A seguir
- Você também pode definir a política de justificativas de acesso às chaves padrão.