Configura Key Access Justifications con Cloud HSM
En esta página, se describe cómo configurar Key Access Justifications con Cloud HSM para Assured Workloads Paquete de control de regiones de Japón.
Durante los pasos para crea una nueva carpeta de Assured Workloads Para las regiones de Japón, tienes la opción de crear un proyecto nuevo y un llavero de claves para tus claves criptográficas. Las claves de Cloud HSM pueden se agregan a este llavero de claves, y también puedes configurar una política de Key Access Justifications controlar el acceso a cada clave.
Antes de comenzar
- La capacidad de usar Key Access Justifications con las claves de Cloud HSM solo está disponible para el paquete de control de regiones de Japón en Assured Workloads.
- Asegúrate de que tu administrador te haya otorgado uno de los Roles de Identity and Access Management (IAM) para crear y administrar las políticas de Key Access Justifications y las claves de Cloud HSM.
Permisos de IAM obligatorios
Para obtener los permisos que necesitas para crear y administrar claves de Cloud HSM y sus políticas de Key Access Justifications,
solicita a tu administrador que te otorgue el
Rol de IAM de administrador de Cloud KMS (roles/cloudkms.admin
) en el proyecto que contiene el llavero de claves.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.
Este rol predefinido contiene los permisos necesarios para crear y administrar las claves de Cloud HSM y sus políticas de Key Access Justifications. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear y administrar claves de Cloud HSM y sus políticas de Key Access Justifications:
-
cloudkms.cryptoKeys.create
-
cloudkms.cryptoKeys.update
-
cloudkms.cryptoKeys.get
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos
Configura una clave de Cloud HSM con Key Access Justifications
Para configurar Key Access Justifications con una clave de Cloud HSM, puedes incluir el clave de acceso como parámetro cuando creas la clave, o puedes actualizar el con la política una vez creada la clave.
Crea una nueva clave y política
REST
Crea una nueva clave y política con el
cryptoKeys.create
método:
POST https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME
En la solicitud, reemplaza los siguientes valores de marcador de posición:
- PROJECT_ID: El ID del proyecto que contiene el llavero de claves en el que
Si deseas agregar una clave, por ejemplo,
919698201234
. - LOCATION: Es la ubicación del llavero de claves, por ejemplo,
us-west1
- KEY_RING: Es el nombre del llavero de claves que especificaste cuando
Creaste el proyecto de administración de claves de tu carpeta de Assured Workloads
y el llavero de claves, por ejemplo,
my-key-ring
. - KEY_NAME: Es el nombre de la clave de HSM que deseas crear
Por ejemplo,
my-hsm-key
.
Cuerpo de la solicitud:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
En el cuerpo de la solicitud, reemplaza los siguientes valores de marcador de posición:
- PURPOSE: El propósito de la clave. Para obtener una lista de claves
para fines específicos, consulta
Propósitos de clave, por ejemplo,
ENCRYPT_DECRYPT
- ALGORITHM: El algoritmo criptográfico que se usará. Para obtener una lista de
algoritmos disponibles, consulta
Algoritmos de Cloud KMS, por ejemplo,
GOOGLE_SYMMETRIC_ENCRYPTION
- ALLOWED_ACCESS_REASONS: Es la política de Key Access Justifications que define cero
o más permitidos
códigos de justificación
para acceder a la clave de encriptación, por ejemplo,
CUSTOMER_INITIATED_ACCESS
La siguiente solicitud de ejemplo y el cuerpo de la solicitud solo permiten acceso justificaciones por varias razones:
POST https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/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" ] } }
Actualizar la política de una clave existente
REST
Actualiza una clave existente en Cloud KMS con
cryptoKeys.patch
método:
PATCH https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?update_mask=keyAccessJustificationsPolicy
En la solicitud, reemplaza los siguientes valores de marcador de posición:
- PROJECT_ID: El ID del proyecto que contiene la clave
anillo para la clave, por ejemplo,
919698201234
. - LOCATION: Es la ubicación del llavero de claves, por ejemplo,
us-west1
- KEY_RING: Es el nombre del llavero de claves que especificaste cuando
Creaste el proyecto de administración de claves de tu carpeta de Assured Workloads
y el llavero de claves, por ejemplo,
my-key-ring
. - KEY_NAME: Es el nombre de la clave de HSM que deseas actualizar
Por ejemplo,
my-hsm-key
.
Cuerpo de la solicitud:
{ "purpose": "PURPOSE", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "ALGORITHM" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ ALLOWED_ACCESS_REASONS ] } }
En el cuerpo de la solicitud, reemplaza los siguientes valores de marcador de posición:
- PURPOSE: El propósito de la clave. Para obtener una lista de claves
para fines específicos, consulta
Propósitos de clave, por ejemplo,
ENCRYPT_DECRYPT
- ALGORITHM: El algoritmo criptográfico que se usará. Para obtener una lista de
algoritmos disponibles, consulta
Algoritmos de Cloud KMS, por ejemplo,
GOOGLE_SYMMETRIC_ENCRYPTION
- ALLOWED_ACCESS_REASONS: Es la política de Key Access Justifications que define cero
o más permitidos
códigos de justificación
para acceder a la clave de encriptación, por ejemplo,
CUSTOMER_INITIATED_ACCESS
La siguiente solicitud de ejemplo y el cuerpo de la solicitud solo permiten acceso justificaciones por varias razones:
PATCH https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/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" ] } }
Obtén la política de Key Access Justifications para una clave
REST
Obtén los metadatos de una clave existente en Cloud KMS con
cryptoKeys.get
método:
GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME
En los parámetros de solicitud, reemplaza los siguientes valores de marcador de posición con tus propio:
- PROJECT_ID: Es el ID del proyecto que contiene el llavero de claves del
clave, por ejemplo,
919698201234
. - LOCATION: Es la ubicación del llavero de claves, por ejemplo,
us-west1
- KEY_RING: Es el nombre del llavero de claves que especificaste cuando
Creaste el proyecto de administración de claves de tu carpeta de Assured Workloads
y el llavero de claves, por ejemplo,
my-key-ring
. - KEY_NAME: El nombre de la clave de HSM que deseas obtener
Por ejemplo,
my-hsm-key
.
En la siguiente solicitud de ejemplo, se obtienen metadatos sobre una clave en Cloud KMS:
GET https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-hsm-key
El cuerpo de la respuesta contiene metadatos sobre tu clave, incluido el
keyAccessJustificationsPolicy
Por ejemplo:
{ "purpose": "ENCRYPT_DECRYPT", "versionTemplate": { "protectionLevel": "HSM", "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION" }, "keyAccessJustificationsPolicy": { "allowedAccessReasons": [ "CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION" ] } }