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 Japão das Assured Workloads.
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 projeto e um keyring para suas chaves criptográficas. As chaves do Cloud KMS e do Cloud HSM podem ser adicionadas a esse keyring. Também é possível configurar uma política de justificativas de acesso às chaves para controlar o acesso a cada chave.
Antes de começar
- A capacidade de usar as Justificativas de acesso às chaves com chaves do Cloud KMS e do Cloud HSM está disponível apenas para o perímetro de dados do Japão em Assured Workloads.
- Verifique se o administrador concedeu a você um dos papéis do Identity and Access Management (IAM) necessários para criar e gerenciar as políticas das Justificativas de acesso às chaves e as chaves do Cloud KMS e do Cloud HSM.
Permissões do IAM obrigatórias
Para receber 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ê o
papel do IAM 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 das Justificativas de acesso às chaves. Para conferir as permissões exatas 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 das Justificativas de acesso às chaves delas:
-
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 console Google Cloud , 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.
Em Nível de proteção, selecione Software ou HSM.
Continue selecionando as configurações conforme necessário.
Em Configurações adicionais, selecione Definir política de justificativa de acesso à chave e Motivos de justificativa permitidos.
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 chave e uma política usando o método
cryptoKeys.create
:
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: a localização 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 conferir uma lista de finalidades de chave, consulte Finalidades de chave, por exemplo,
ENCRYPT_DECRYPT
. - PROTECTION_LEVEL: o nível de proteção da chave. Por exemplo,
SOFTWARE
ouHSM
. - ALGORITHM: o algoritmo criptográfico a ser usado. Para conferir 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 a 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
Console
No console Google Cloud , 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 justificativa 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 método
cryptoKeys.patch
:
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 keyring da chave, por exemplo,
919698201234
. - LOCATION: a localização 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 conferir uma lista de finalidades de chave, consulte Finalidades de chave, por exemplo,
ENCRYPT_DECRYPT
. - PROTECTION_LEVEL: o nível de proteção da chave. Por exemplo,
SOFTWARE
ouHSM
. - ALGORITHM: o algoritmo criptográfico a ser usado. Para conferir 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 a 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 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 método
cryptoKeys.get
:
GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME
Nos 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: a localização 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.
A solicitação de exemplo 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-key
O corpo da resposta contém metadados sobre sua 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
- Também é possível definir uma política Justificativas de acesso às chaves chave (prévia).