IBM Cloud Docs
Adición de plantillas de certificados

Adición de plantillas de certificados

Una plantilla de certificado permite definir los parámetros que se van a aplicar a los certificados privados que cree en la instancia de servicio de IBM Cloud® Secrets Manager. Al utilizar una plantilla de certificado, puede incluir parámetros para controlar nombres comunes de certificados, nombres alternativos o los usos principales para los que son válidos, entre otras opciones.

Puede definir hasta 10 plantillas de certificados por instancia. Para ver una lista de plantillas que están disponibles para una entidad emisora de certificados específica, vaya a la página Motores de secretos > Certificados privados de la interfaz de usuario de Secrets Manager.

Puede definir hasta 10 plantillas de certificados por instancia. Para obtener una lista de plantillas que están disponibles para una entidad emisora de certificados específica, puede utilizar la API de Listar configuraciones.

Especificación de dominios permitidos para certificados generados

Puede especificar los dominios permitidos para los certificados que genere.

  • Utilice la sección Valores de dominios para añadir los dominios que permite la plantilla. A continuación, la lista se utiliza con las opciones Permitir dominio desnudo y Permitir subdominios para determinar el tipo de coincidencia entre estos dominios y los dominios para los que los clientes pueden solicitar certificados.
  • Habilite la opción Permitir dominios desnudos para especificar si los clientes pueden solicitar certificados que coincidan con los dominios que permite la plantilla.
  • Habilite la opción Permitir subdominios para indicar si los clientes pueden solicitar certificados que coincidan con los subdominios de los dominios que permite esta plantilla. Los subdominios comodín se incluyen en esta opción.

Antes de empezar

Antes de empezar, asegúrese de que tiene el nivel de acceso necesario. Para gestionar configuraciones de motor para su instancia, necesita el rol de servicio Gestor o superior.

Adición de una plantilla de certificado en la interfaz de usuario

Después de crear una entidad emisora de certificados intermedia para la instancia, puede crear una plantilla de certificado utilizando la interfaz de usuario de Secrets Manager.

  1. En la consola, pulse el icono Menú Icono de menú > Lista de recursos.

  2. En la lista de servicios, seleccione la instancia de Secrets Manager.

  3. En la página Motores de secretos, pulse la pestaña Certificados privados.

  4. En la tabla Entidades emisoras de certificados, expanda la fila de la entidad emisora de certificados intermedia que desea utilizar como CA emisora para los certificados privados.

  5. Pulse la pestaña Plantillas para visualizar las plantillas de certificados existentes.

  6. Pulse Añadir plantilla para asociar una plantilla nueva.

  7. Proporcione un nombre para identificar fácilmente la plantilla.

  8. Opcional: establezca un tiempo de vida (TTL) para los certificados generados.

    Al establecer un TTL, se determina cuánto tiempo siguen siendo válidos los certificados emitidos por la CA. Una vez que el certificado alcanza el final de su arrendamiento, se revoca automáticamente.

    El TTL o periodo de validez que se define en una plantilla de certificado no puede superar el valor máximo de TTL definido para la CA asociada. Para obtener más información, consulte Elección de un periodo de validez para los certificados.

  9. Opcional: seleccione el algoritmo de clave que desea utilizar para generar las claves para los certificados generados.

  10. Opcional: Seleccione los grupos secretosEl entorno y las restricciones a los que se deben ajustar los secretos contenidos en una instancia. Se puede asociar un usuario con un grupo de secretos para permitir el acceso y la colaboración. que desea asignar para sus certificados generados.

Al seleccionar uno o más grupos de secretos de la lista, se restringe la creación de certificados privados solo para dichos grupos. Para obtener más información sobre los grupos de secretos, consulte Organización de sus secretos.

  1. Opcional: habilite las opciones avanzadas para los certificados privados generados.

  2. Valores de dominio: añada dominios, subdominios o comodines específicos para aplicar a los certificados privados generados.

  3. Roles de certificado: señale los certificados privados generados para usos específicos.

  4. Nombre de asunto: aplique los campos de parámetro de nombre de asunto a los certificados privados generados.

  5. Para confirmar sus selecciones, pulse Añadir.

Adición de una plantilla de certificado con la API

Puede crear una plantilla de certificado para la instancia de servicio llamando a la API de Secrets Manager.

El ejemplo siguiente muestra una consulta que puede utilizar para crear una plantilla de certificado y asociarla con una entidad emisora de certificados intermedia existente que esté configurada para su instancia.

curl -X POST
  --H "Authorization: Bearer {iam_token}" \
  --H "Accept: application/json" \
  --H "Content-Type: application/json" \
  --d '{
  "config_type": "private_cert_configuration_template",
  "name": "test-certificate-template",
  "allow_any_name": true,
  "allowed_uri_sans": [
    "https://www.example.com/test"
  ],
  "certificate_authority": "test-intermediate-CA",
  "enforce_hostnames": false,
  "max_ttl": "8760h"
}' \  
  "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations"

Una respuesta satisfactoria añade la configuración de plantilla a la instancia de servicio.

{
  "allow_any_name": true,
  "allow_bare_domains": false,
  "allow_glob_domains": false,
  "allow_ip_sans": true,
  "allow_localhost": true,
  "allow_subdomains": false,
  "allowed_domains": [],
  "allowed_domains_template": false,
  "allowed_other_sans": [],
  "allowed_uri_sans": [
    "https://www.example.com/test"
  ],
  "basic_constraints_valid_for_non_ca": false,
  "certificate_authority": "test-intermediate-CA",
  "client_flag": true,
  "code_signing_flag": false,
  "config_type": "private_cert_configuration_template",
  "created_at": "2022-06-27T11:58:15Z",
  "created_by": "iam-ServiceId-e4a2f0a4-3c76-4bef-b1f2-fbeae11c0f21",
  "country": [],
  "email_protection_flag": false,
  "enforce_hostnames": false,
  "ext_key_usage": [],
  "ext_key_usage_oids": [],
  "key_bits": 2048,
  "key_type": "rsa",
  "key_usage": [
    "DigitalSignature",
    "KeyAgreement",
    "KeyEncipherment"
  ],
  "locality": [],
  "max_ttl_seconds": 31536000,
  "name": "test-certificate-template",
  "not_before_duration_seconds": 30,
  "organization": [],
  "ou": [],
  "policy_identifiers": [],
  "postal_code": [],
  "province": [],
  "require_cn": true,
  "secret_type": "private_cert",
  "server_flag": true,
  "street_address": [],
  "ttl_seconds": 43200,
  "updated_at": "2022-10-05T21:33:11Z",
  "use_csr_common_name": true,
  "use_csr_sans": true
}

Adición de una plantilla de certificado desde la CLI

Puede crear una plantilla de certificado para la instancia de servicio utilizando el mandato ibmcloud secrets-manager configuration-create.

El siguiente ejemplo muestra un comando que puede utilizar para crear una plantilla de certificado y asociarla con una autoridad de certificación intermedia existente que esté configurada para su instancia.

ibmcloud secrets-manager configuration-create
  --configuration-prototype='{
    "config_type": "private_cert_configuration_template",
    "name": "example-certificate-template",
    "allow_any_name": true,
    "allow_bare_domains": true,
    "allow_glob_domains": true,
    "allow_ip_sans": true,
    "allow_localhost": true,
    "allow_subdomains": false,
    "allow_wildcard_certificates": true,
    "allowed_domains": ["example.com","acme.com"],
    "allowed_domains_template": true,
    "allowed_other_sans": [
      "1.2.3.5.4.3.201.10.4.3;utf8:test@example.com",
      "1.3.6.1.4.1.201.10.5.5;UTF-8:*"
      ],
    "allowed_secret_groups": "d898bb90-82f6-4d61-b5cc-b079b66cfa76",
    "allowed_uri_sans": ["example.com","acme://*"],
    "certificate_authority": "example-intermediate-CA",
    "client_flag": true,
    "code_signing_flag": false,
    "email_protection_flag": false,
    "enforce_hostnames": false,
    "key_bits": 2048,
    "key_type": "rsa",
    "key_usage": [
      "DigitalSignature",
      "KeyAgreement",
      "KeyEncipherment"
    ],
    "max_ttl": "24h",
    "server_flag": true,
    "ttl": "8h",
    "use_csr_common_name": true,
    "use_csr_sans": true
  }'

Adición de una plantilla de certificado con Terraform

Puede crear una plantilla de certificado para la instancia de servicio utilizando Terraform para Secrets Manager.

El siguiente ejemplo muestra una configuración que puede utilizar para crear una plantilla de certificado y asociarla con una autoridad de certificación intermedia existente que esté configurada para su instancia.

    resource "ibm_sm_private_certificate_configuration_template" "test_ca_template" {
        instance_id = local.instance_id
        region = local.region
        name = "test-ca-template"
        certificate_authority = ibm_sm_private_certificate_configuration_intermediate_ca.test_int_ca.name
        allowed_domains = ["example1.com", "my.example.com"]
        allow_any_name = true
    }

Para obtener más información sobre los parámetros de solicitud obligatorios y opcionales, consulte Añadir una configuración.

Recuperación de una plantilla de certificado en la interfaz de usuario

Puede recuperar el valor de plantilla de certificado utilizando la interfaz de usuario de Secrets Manager.

  1. En el motor de secretos Certificados públicos, pulse el menú Acciones Icono Acciones para abrir una lista de opciones para la configuración del motor.
  2. Para ver el valor de configuración, pulse Ver configuración.
  3. Pulse Confirmar después de asegurarse de que está en un entorno seguro.

El valor de secreto se visualiza durante 15 segundos y, a continuación, se cierra el diálogo.

Recuperación de una plantilla de certificado utilizando la CLI

Puede recuperar el valor de plantilla de certificado utilizando la CLI Secrets Manager. En el siguiente mandato de ejemplo, sustituya el nombre de configuración del motor por el nombre de la configuración.

ibmcloud secrets-manager configuration --name EXAMPLE_CONFIG --service-url https://{instance_ID}.{region}.secrets-manager.appdomain.cloud

Sustituya {instance_ID} y {region} por los valores que se aplican a la instancia de servicio de Secrets Manager. Para encontrar el URL de punto final específico de la instancia, puede copiarlo de la página Puntos finales en la interfaz de usuario de Secrets Manager. Para obtener más información, consulte Visualización de URL de punto final

Recuperación de una plantilla de certificado utilizando la API

Puede recuperar el valor de plantilla de certificado utilizando la API Secrets Manager. En la siguiente solicitud de ejemplo, sustituya el nombre de configuración del motor por el nombre de la configuración.

curl -X GET --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations/{name}"

Sustituya {instance_ID} y {region} por los valores que se aplican a la instancia de servicio de Secrets Manager. Para encontrar el URL de punto final específico de la instancia, puede copiarlo de la página Puntos finales en la interfaz de usuario de Secrets Manager. Para obtener más información, consulte Visualización de URL de punto final

Una respuesta correcta devuelve el valor de la configuración del motor, junto con otros metadatos. Para obtener más información sobre los parámetros de solicitud obligatorios y opcionales, consulte Obtener un secreto.

Próximos pasos