En esta página se explica cómo crear una clave en Cloud KMS. Una clave puede ser una clave de cifrado simétrica o asimétrica, una clave de firma asimétrica o una clave de firma MAC.
Cuando creas una clave, la añades a un llavero de claves en una ubicación de Cloud KMS específica. Puedes crear un nuevo llavero o usar uno que ya tengas. En esta página, se genera una clave de Cloud KMS o Cloud HSM y se añade a un llavero de claves. Para crear una clave de Cloud EKM, consulta Crear una clave externa. Para importar una clave de Cloud KMS o Cloud HSM, consulta Importar una clave.
Antes de empezar
Antes de completar las tareas de esta página, necesitas lo siguiente:
- Un recurso de proyecto que contenga tus recursos de Cloud KMS. Google Cloud Te recomendamos que uses un proyecto independiente para tus recursos de Cloud KMS que no contenga ningún otro recurso de Google Cloud .
- El nombre y la ubicación del conjunto de claves en el que quieras crear la clave. Elige un llavero en una ubicación cercana a tus otros recursos y que admita el nivel de protección que hayas elegido. Para ver las ubicaciones disponibles y los niveles de protección que admiten, consulta Ubicaciones de Cloud KMS. Para crear un conjunto de claves, consulta Crear un conjunto de claves.
- Opcional: Para usar la CLI de gcloud, prepara tu entorno.
In the Google Cloud console, activate Cloud Shell.
Roles obligatorios
Para obtener los permisos que necesitas para crear claves, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto o en un recurso principal:
-
Administrador de Cloud KMS (
roles/cloudkms.admin) -
Para crear claves de HSM de un solo inquilino, sigue estos pasos:
Creador de claves de HSM de un solo inquilino de Cloud KMS (
roles/cloudkms.hsmSingleTenantKeyCreator)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para crear claves. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para crear claves, se necesitan los siguientes permisos:
-
cloudkms.cryptoKeys.create -
cloudkms.cryptoKeys.get -
cloudkms.cryptoKeys.list -
cloudkms.cryptoKeyVersions.create -
cloudkms.cryptoKeyVersions.get -
cloudkms.cryptoKeyVersions.list -
cloudkms.keyRings.get -
cloudkms.keyRings.list -
cloudkms.locations.get -
cloudkms.locations.list -
resourcemanager.projects.get -
Para obtener una clave pública, sigue estos pasos:
cloudkms.cryptoKeyVersions.viewPublicKey -
Para crear claves de HSM de un solo inquilino, sigue estos pasos:
-
cloudkms.singleTenantHsmInstances.get -
cloudkms.singleTenantHsmInstances.use
-
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Crear una clave de cifrado simétrica
Consola
En la consola de Google Cloud , ve a la página Gestión de claves.
Haga clic en el nombre del conjunto de claves para el que creará una clave.
Haz clic en Crear clave.
En Nombre de la clave, introduce el nombre que quieras darle a la clave.
En Nivel de protección, selecciona Software, HSM o HSM de un solo arrendatario.
Si has seleccionado HSM de único propietario, selecciona la instancia de HSM de único propietario en la que quieras crear la clave.
En Material de la clave, selecciona Clave generada.
En Propósito, selecciona Encriptado y desencriptado simétrico.
Acepta los valores predeterminados de Periodo de rotación y Empezar el.
Haz clic en Crear.
gcloud
Para usar Cloud KMS en la línea de comandos, primero instala o actualiza a la versión más reciente de la CLI de Google Cloud.
Para crear una clave de software o de Cloud HSM multiinquilino, usa el comando
kms keys create:gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --protection-level "PROTECTION_LEVEL"Haz los cambios siguientes:
KEY_NAME: el nombre de la clave.KEY_RING: el nombre del conjunto de claves que contiene la clave.LOCATION: la ubicación de Cloud KMS del conjunto de claves.PROTECTION_LEVEL: el nivel de protección que se va a usar para la clave (por ejemplo,softwareohsm). Puedes omitir la marca--protection-levelen las clavessoftware.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca
Para crear una clave de Cloud HSM de un solo inquilino, añade la marca--help.--crypto-key-backendal comandokms keys create:gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose "encryption" \ --protection-level "hsm-single-tenant" \ --crypto-key-backend="projects/INSTANCE_PROJECT/locations/LOCATION/singleTenantHsmInstances/INSTANCE_NAME"Haz los cambios siguientes:
INSTANCE_PROJECT: identificador del proyecto en el que se encuentra tu instancia de Cloud HSM de un solo inquilino.INSTANCE_NAME: nombre de la instancia de Single-tenant Cloud HSM en la que quieres crear la clave. Para obtener más información sobre las instancias de Cloud HSM de un solo inquilino, consulta el artículo Crear y gestionar una instancia de Cloud HSM de un solo inquilino.
Para obtener información sobre todas las marcas y los valores posibles, ejecuta el comando con la marca
--help.C#
Para ejecutar este código, primero debes configurar un entorno de desarrollo de C# e instalar el SDK de Cloud KMS para C#.
-
Administrador de Cloud KMS (