Administrar entradas de mapas de certificados

En esta sección, se describe cómo crear y administrar entradas de mapas de certificados. Una entrada de mapa de certificados asocia un certificado con un nombre de host de destino y un 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 la referencia de la CLI del Administrador de certificados.

Crea una entrada de mapa de certificados

Para crear una entrada de mapa de certificados y asociarle uno o más certificados, completa los pasos de 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.

Si deseas asociar varios certificados a una entrada de mapa de certificados, proporciona una lista delimitada por comas de los nombres de los certificados para asociarlos con la entrada. Puedes asociar un máximo de 4 certificados con una sola entrada de 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 destino de Google Cloud:

  • 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 de este mapa de certificados.
  • CERTIFICATE_NAMES es una lista delimitada por comas de los nombres de los certificados que deseas asociar con esta entrada de mapa de certificados.
  • HOSTNAME es el nombre de host que deseas asociar con esta entrada de 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 de 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 esta entrada de mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada de este mapa de certificados.
  • HOSTNAME es el nombre de host que deseas asociar con esta entrada de mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que deseas asociar con esta entrada de mapa de certificados.

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

Crea una entrada de mapa de certificado principal

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

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

  • 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 de este mapa de certificados.
  • CERTIFICATE_NAMES es una lista delimitada por comas de los nombres de los certificados que deseas asociar con esta entrada de mapa de certificados.

API

Para crear la entrada de 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 esta entrada de mapa de certificados.
  • CERTIFICATE_MAP_NAME es el nombre del mapa de certificados al que se adjunta esta entrada de este mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que deseas asociar con esta entrada de mapa de certificados.

Para obtener información sobre cómo el balanceador de cargas selecciona certificados durante un protocolo de enlace, 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 de esta sección. Puedes actualizar una entrada de 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 destino de Google Cloud:

  • 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 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 de este mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que deseas asociar con esta entrada de mapa de certificados.
  • DESCRIPTION es una descripción significativa de esta entrada de mapa de certificados.
  • LABELS es una lista de etiquetas aplicadas a esta entrada de mapa de certificados.

API

Para actualizar la entrada del mapa de certificados, realiza una solicitud PATCH al método 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 este mapa de certificados.
  • CERTIFICATE_MAP_ENTRY_NAME es un nombre único que describe esta entrada de mapa de certificados.
  • CERTIFICATE_NAME es el nombre del certificado que deseas asociar con esta entrada de mapa de certificados.
  • DESCRIPTION es una descripción significativa de 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 de mapa de certificados.

Mostrar lista de entradas del mapa de certificados

Para enumerar las entradas del mapa de certificados configuradas actualmente dentro de un mapa de certificados de destino, completa los pasos de esta sección.

Para completar esta tarea, debes tener uno de los siguientes roles en el proyecto de destino 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 según los siguientes criterios:

    • Estado de publicación: --filter='state=ACTIVE'
    • Comparador (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 ver más ejemplos de filtros que puedes usar con el Administrador de certificados, consulta Ordena y filtra resultados de listas 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 delimitada por comas de campos name por la que se ordenan los resultados que se muestran. El orden de clasificación predeterminado es ascendente; para el orden descendente, agrega el prefijo ~ al campo deseado.

API

Para mostrar las entradas del mapa de certificados configuradas dentro de un mapa de certificados determinado, realiza una solicitud LIST al método 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 delimitada por comas de nombres de campo según la cual se ordenan los resultados que se muestran. El orden de clasificación predeterminado es ascendente; para el orden descendente, agrega el prefijo ~ al campo deseado.

Visualiza el estado de una entrada de 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 destino 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 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 de este mapa de certificados.

API

Observa el estado de la entrada del mapa de certificados mediante 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 de este 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 mapa de certificados de uno, completa los pasos que se indican en esta sección. Con esta acción, se desconectan los certificados asociados con la entrada del mapa de certificados del proxy de destino.

Si borras una entrada de mapa de certificados, no se borrarán los certificados asociados. Para quitar esos certificados de Google Cloud, debes borrarlos de forma manual.

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

Para obtener más información, consulta Funciones 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 de este mapa de certificados.

API

Borra una entrada de mapa de certificados mediante una solicitud DELETE al método 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 de este mapa de certificados.
  • CERTIFICATE_MAP_ENTRY_NAME es el nombre de la entrada del mapa de certificados de destino.

¿Qué sigue?