Administrar entradas de mapas de certificados

En esta sección, se describe cómo crear y administrar entradas de mapa de certificados. R asocia un certificado con un nombre de host de destino y una mapa de certificados de destino.

Para obtener más información sobre las entradas del mapa de certificados, consulta Cómo funciona el Administrador de certificados.

Para aprender a implementar un certificado con el Administrador de certificados, consulta Descripción general de la implementación.

Para obtener más información sobre los comandos de gcloud que se usan en esta página, consulta el Referencia de la CLI del Administrador de certificados.

Crea una entrada del mapa de certificados

Para crear una entrada del mapa de certificados y asociar uno o más certificados con completa los pasos que se indican en esta sección. Debes especificar al menos un certificado dentro de una entrada de mapa de certificados. Si deseas especificar más de un certificado para un nombre de host determinado, solo puedes hacerlo si cada certificado usa un conjunto de algoritmos de cifrado diferente, por ejemplo, ECDSA y RSA.

Para asociar varios certificados con una entrada de mapa de certificados, proporciona una lista de nombres de certificados delimitados por comas para asociar con la entrada. Puedes asociar un máximo de 4 certificados a una sola entrada del mapa de certificados. Para cada subdominio, debes crear una entrada de mapa de certificados independiente.

Para completar esta tarea, debes tener uno de los siguientes roles en el proyecto de Google Cloud de destino:

  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME" \
    --certificates="CERTIFICATE_NAMES" \
    --hostname="HOSTNAME"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esta entrada de mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.
  • CERTIFICATE_NAMES es una lista delimitada por comas de los nombres de los certificados. que quieres asociar con esta entrada del mapa de certificados.
  • HOSTNAME es el nombre de host que quieres asociar. con esta entrada del mapa de certificados.

Terraform

Para crear una entrada de mapa de certificados, puedes usar un recurso google_certificate_manager_certificate_map_entry.

resource "google_certificate_manager_certificate_map_entry" "default" {
  name        = "${local.name}-first-entry-${random_id.tf_prefix.hex}"
  description = "example certificate map entry"
  map         = google_certificate_manager_certificate_map.default.name
  labels = {
    "terraform" : true
  }
  certificates = [google_certificate_manager_certificate.default.id]
  hostname     = local.domain
}

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.

API

Para crear la entrada del mapa de certificados, realiza una solicitud POST al método certificateMaps.certificateMapEntries.create de la siguiente manera:

POST /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME/certificateMapEntries?certificate_map_entry_id=CERTIFICATE_MAP_ENTRY_NAME"
{
 hostname: "HOSTNAME"
 certificates: ["projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME"],
}

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto de Google Cloud de destino.
  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esto entrada del mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada de mapa de certificados.
  • HOSTNAME es el nombre de host que quieres asociar. con esta entrada del mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que quieres asociar. con esta entrada del mapa de certificados.

Para obtener información sobre cómo el balanceador de cargas selecciona certificados durante un protocolo de enlace, consulta Consulta Lógica de selección de certificados.

Crea una entrada de mapa de certificados principal

Puedes especificar un certificado principal para que el balanceador de cargas entregue si el cliente no proporciona un nombre de host o proporciona un nombre de host que el balanceador de cargas no puede coincidir con ninguna entrada configurada del mapa de certificados.

Para completar esta tarea, debes tener uno de los siguientes roles en el proyecto de Google Cloud de destino:

  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME" \
    --certificates="CERTIFICATE_NAMES" \
    --set-primary

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esta entrada de mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.
  • CERTIFICATE_NAMES es una lista delimitada por comas de los nombres de los certificados. que quieres asociar con esta entrada del mapa de certificados.

API

Para crear la entrada del mapa de certificados, realiza una solicitud POST al método certificateMaps.certificateMapEntries.create de la siguiente manera:

POST /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME/certificateMapEntries?certificate_map_entry_id=CERTIFICATE_MAP_ENTRY_NAME"
{
   matcher: "PRIMARY",
   certificates: ["projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME"],
}

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto de Google Cloud de destino.
  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esto entrada del mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que quieres asociar. con esta entrada del mapa de certificados.

Para obtener información sobre cómo el balanceador de cargas selecciona certificados durante un protocolo de enlace, consulta Consulta Lógica de selección de certificados.

Actualiza una entrada de mapa de certificados

Para actualizar una entrada de mapa de certificados, completa los pasos que se indican en esta sección. Puedes actualiza una entrada del mapa de certificados de la siguiente manera:

  • Asignar o anular la asignación de certificados
  • Modifica la descripción
  • Modifica las etiquetas

Para completar esta tarea, debes tener uno de los siguientes roles en el proyecto de Google Cloud de destino:

  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Roles y permisos.

gcloud

gcloud certificate-manager maps entries update CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME" \
    --certificates="CERTIFICATE_NAME,CERTIFICATE_NAME" \
    --description="DESCRIPTION"
    --update-labels="LABELS"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esta entrada de mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que quieres asociar. con esta entrada del mapa de certificados.
  • DESCRIPTION es una descripción significativa para esta entrada del mapa de certificados.
  • LABELS es una lista de etiquetas aplicadas a esta entrada del mapa de certificados.

API

Actualiza la entrada del mapa de certificados mediante una solicitud PATCH al certificateMaps.certificateMapEntries.patch de la siguiente manera:

PATCH  /v1/projects/example-project/locations/global/certificateMaps/CERTIFICATE_MAP_NAME/certificateMapEntries/CERTIFICATE_MAP_ENTRY_NAME?updateMask=labels,description,certificates
{
  "certificates": ["projects/PROJECT_ID/locations/global/certificates/CERTIFICATE_NAME"],
  "description": "DESCRIPTION",
  "labels": { "LABEL_KEY": "LABEL_VALUE" }
}

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto de Google Cloud de destino.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada de mapa de certificados.
  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esto entrada del mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que quieres asociar. con esta entrada del mapa de certificados.
  • DESCRIPTION es una descripción significativa para esta entrada de mapa de certificados.
  • LABEL_KEY es una clave de etiqueta que se aplica a esta entrada de mapa de certificados.
  • LABEL_VALUE es un valor de etiqueta que se aplica a esta entrada del mapa de certificados.

Mostrar lista de entradas del mapa de certificados

Para obtener una lista de las entradas del mapa de certificados configuradas actualmente en un mapa de certificados objetivo, completa los pasos de esta sección.

Para completar esta tarea, debes tener uno de los siguientes roles en el destino Proyecto de Google Cloud:

  • Visualizador del administrador de certificados
  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

gcloud certificate-manager maps entries list --map=CERTIFICATE_MAP_NAME \
    --filter="FILTER" \
    --page-size="PAGE_SIZE" \
    --limit="LIMIT" \
    --sort-by="SORT_BY"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados de destino.
  • FILTER es una expresión que restringe los resultados que se muestran a valores específicos. Por ejemplo, puedes filtrar los resultados los siguientes criterios:

    • Estado de publicación: --filter='state=ACTIVE'
    • Matcher (configurado como principal): --filter='-matcher=PRIMARY'
    • Nombre de host: --filter='hostname=example.com'
    • Certificados asignados: --filter='certificates:my-cert'
    • Etiquetas y hora de creación: --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Para obtener más ejemplos de filtrado que puedes usar con el Administrador de certificados, consulta Cómo ordenar y filtrar los resultados de la lista en la documentación de Cloud Key Management Service.

  • PAGE_SIZE es la cantidad de resultados que se muestran por página.

  • LIMIT es la cantidad máxima de resultados que se mostrarán.

  • SORT_BY es una lista de campos name separados por comas por los que se ordenan los resultados que se muestran. El orden de clasificación predeterminado es ascendente. Para el orden de clasificación descendente, agrega el prefijo ~ al campo deseado.

API

Enumera las entradas de asignación de certificados configuradas dentro de un mapa de certificados determinado mediante una solicitud LIST al certificateMaps.certificateMapEntries.list. de la siguiente manera:

GET /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME/certificateMapEntries?filter=FILTER&pageSize=PAGE_SIZE&sortBy=SORT_BY

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto de Google Cloud de destino.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados de destino.
  • FILTER es una expresión que restringe los resultados que se muestran a valores específicos.
  • PAGE_SIZE es la cantidad de resultados que se muestran por página.
  • SORT_BY es una lista de nombres de campos delimitados por comas por los que se ordenan los resultados que se muestran. El orden predeterminado es ascendente; para orden de clasificación descendente, prefija el campo deseado con ~.

Visualiza el estado de una entrada del mapa de certificados

Para ver el estado de una entrada de mapa de certificados, completa los pasos de esta sección.

Para completar esta tarea, debes tener uno de los siguientes roles en el proyecto de Google Cloud de destino:

  • Visualizador del administrador de certificados
  • Editor del Administrador de certificados
  • Propietario del Administrador de certificados

Para obtener más información, consulta Funciones y permisos.

gcloud

gcloud certificate-manager maps entries describe CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME es el nombre de la entrada del mapa de certificados de destino.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.

API

Para ver el estado de la entrada del mapa de certificados, realiza una solicitud GET al método certificateMaps.certificateMapEntries.get de la siguiente manera:

GET /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME/certificateMapEntries/CERTIFICATE_MAP_ENTRY_NAME

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto de Google Cloud de destino.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.
  • CERTIFICATE_MAP_ENTRY_NAME es el nombre de la entrada del mapa de certificados de destino.

Cómo borrar una entrada de mapa de certificados

Para borrar una entrada de un mapa de certificados, completa la pasos en esta sección. Esta acción desvincula los certificados asociados con la entrada del mapa de certificados del proxy de destino.

Borrar una entrada del mapa de certificados no borra los certificados asociados. Para quitar esos certificados de Google Cloud, debes borrarlos manualmente

Para completar esta tarea, debes tener el rol Propietario del administrador de certificados en la proyecto de Google Cloud de destino.

Para obtener más información, consulta Roles y permisos.

gcloud

gcloud certificate-manager maps entries delete CERTIFICATE_MAP_ENTRY_NAME \
   --map="CERTIFICATE_MAP_NAME"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME es el nombre de la entrada del mapa de certificados de destino.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.

API

Borra una entrada del mapa de certificados mediante una solicitud DELETE al certificateMaps.certificateMapEntries.delete de la siguiente manera:

DELETE /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME/certificateMapEntries/CERTIFICATE_MAP_ENTRY_NAME

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto de Google Cloud de destino.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada del mapa de certificados.
  • CERTIFICATE_MAP_ENTRY_NAME es el nombre de la entrada de mapa de certificados de destino.

¿Qué sigue?