Alteración temporal de la gestión de claves en una arquitectura desplegable de zona de destino

Las arquitecturas desplegables de zona de destino proporcionan características de gestión de claves integrando IBM Key Protect o Hyper Protect Crypto Services. Para realizar modificaciones más avanzadas en la gestión de claves que no son posibles en la mayoría de las entradas, utilice una entrada de alteración temporal.

Para alterar temporalmente los valores, pase el objeto JSON key_management en una variable de entrada de alteración temporal. Para despliegues con proyectos o IBM Cloud Schematics, los valores se añaden en la entrada override_json_string. Tanto IBM Key Protect como Hyper Protect Crypto Services están soportados en las arquitecturas desplegables de zona de destino.

También puede utilizar la herramienta de configuración de zona de destino para personalizar las arquitecturas desplegables.

Ejemplo de alteraciones temporales de gestión de claves

Estos ejemplos identifican algunos casos de uso comunes para incluir un servicio de gestión de claves (KMS) en la arquitectura desplegable.

Para obtener una lista completa de los atributos de gestión de claves soportados en la arquitectura desplegable de zona de destino, consulte el objeto key_management en la sección Entradas del repositorio terraform-ibm-landing-zone en GitHub.

Crear una instancia y claves de Key Protect

Este ejemplo describe la configuración predeterminada y no requiere un valor de alteración temporal. Sin embargo, el ejemplo ilustra que puede alterar temporalmente valores que no están disponibles en otras variables de entrada (por ejemplo, el nombre de clave). Este ejemplo de alteración temporal crea una instancia de IBM Key Protect denominada test-kms y crea claves que se denominan slz-slz-key, slz-atracker-key, slz-roks-key y slz-vsi-volume-key en la instancia de test-kms.

  1. Copie el JSON siguiente.

    {
      "key_management": {
        "keys": [
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-slz-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-atracker-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-roks-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-vsi-volume-key",
            "root_key": true
          }
        ],
        "name": "test-kms",
        "resource_group": "testrg"
      }
    }
    
  2. Siga los pasos de la sección Edición de la configuración del proyecto para modificar la arquitectura desplegable.

Crear claves en un KMS existente

Este ejemplo de alteración temporal utiliza una instancia de IBM Key Protect existente que se denomina test-kms. Puede utilizar una instancia existente estableciendo use_data en true. El resto del ejemplo crea cuatro claves en un conjunto de claves denominado slz-slz-ring en la instancia existente.

Para utilizar Hyper Protect Crypto Services en lugar de Key Protect, pase "use_hs_crypto": true en lugar de "use_data": true.

  1. Copie el JSON siguiente.

    {
      "key_management": {
        "keys": [
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-slz-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-atracker-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-roks-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-vsi-volume-key",
            "root_key": true
          }
        ],
        "name": "test-kms",
        "resource_group": "testrg",
        "use_data": true
      }
    }
    
  2. Siga los pasos de la sección Edición de la configuración del proyecto para modificar la arquitectura desplegable.

Utilizar claves existentes sin KMS

Para utilizar claves existentes sin extraer una instancia de KMS existente, incluya el CRN de la clave. El CRN puede hacer referencia a una clave en la cuenta que está desplegando la arquitectura desplegable o en una cuenta diferente. Los atributos de las claves existentes son name y existing_key_crn. Cuando utilice un CRN de clave existente, debe tener una política de autenticación que permita a block-storage y cloud-object-storage acceder al KMS en la cuenta externa. Para obtener más información, consulte Utilización de autorizaciones para otorgar acceso entre servicios

Asegúrese de omitir key_management.name y key_management.resource_group cuando no desee que la arquitectura desplegable cree un KMS.

  1. Copie el JSON siguiente.

    {
      "key_management": {
        "keys": [
          {
            "name": "slz-slz-key",
            "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:6128229e-1bbb-4c25-827c-c97f077fb585"
          },
          {
            "name": "slz-atracker-key",
            "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:9157cce8-3c1a-42be-b67f-0103426bc147"
          },
          {
            "name": "slz-roks-key",
            "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:7ccfb2a6-4d7d-4e85-af35-9548cda719d0:key:682c774b-c781-4bbb-b3b7-3ddf1831ab2f"
          },
          {
            "name": "slz-vsi-volume-key",
            "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:8c2ac54e-ac85-47da-8d03-06acb7f60ab3"
          }
        ]
      }
    }
    
  2. Siga los pasos de la sección Edición de la configuración del proyecto para modificar la arquitectura desplegable.

Utilizar claves existentes y crear más claves

Este ejemplo crea claves y también utiliza una clave existente. Se crea una instancia de Key Protect denominada test-kms con tres claves denominadas slz-slz-key, slz-atracker-key y slz-roks-key. Además, se utiliza la clave slz-vsi-volume-key existente.

En este ejemplo, la clave existente se identifica mediante CRN para extraer la clave sin la instancia de KMS. De forma alternativa, puede establecer "use_data": true como en el ejemplo Crear claves en un KMS existente. Cuando utilice un CRN de clave existente, debe tener una política de autenticación que permita a block-storage, cloud-object-storage y secrets-manager acceder al KMS en la cuenta externa. Para obtener más información, consulte Uso de autorizaciones para otorgar acceso entre servicios.

  1. Copie el JSON siguiente.

    {
      "key_management": {
        "keys": [
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-slz-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-atracker-key",
            "root_key": true
          },
          {
            "key_ring": "slz-slz-ring",
            "name": "slz-roks-key",
            "root_key": true
          },
          {
            "name": "slz-vsi-volume-key",
            "existing_key_crn": "crn:v1:bluemix:public:kms:ca-tor:a/testaccountid:15658dcb-7434-4ff7-961a-79cae8d9baca:key:8c2ac54e-ac85-47da-8d03-06acb7f60ab3"
          }
        ],
        "name": "test-kms",
        "resource_group": "testrg"
      }
    }
    
  2. Siga los pasos de la sección Edición de la configuración del proyecto para modificar la arquitectura desplegable.

Edición de la configuración del proyecto

Utilice los pasos siguientes con cualquiera de los ejemplos para alterar temporalmente la configuración de la arquitectura desplegable.

  1. Copie el ejemplo JSON. Modifíquelo para que se ajuste a sus necesidades.

  2. Añada el JSON a la variable de entrada override_json_string de la arquitectura desplegable:

    1. Vaya a la página Proyectos y seleccione un proyecto.
    2. Vaya al separador Configuraciones y seleccione una configuración de arquitectura desplegable.
    3. Pulse Editar.
    4. En la sección Configuración, pulse el panel Opcional.
    5. Busque override_json_string y pulse Editar JSON.
    6. Pegue este JSON que ha copiado anteriormente y pulse Guardar.
  3. Valide y apruebe los cambios.