Gérer les entrées de mappage de certificats

Cette section explique comment créer et gérer des entrées de mappage de certificats. A l'entrée de mappage de certificats associe un certificat à un nom d'hôte cible et à mappage de certificats cible

Pour en savoir plus sur les entrées de mappage de certificats, consultez la section Fonctionnement du gestionnaire de certificats.

Pour apprendre à déployer un certificat avec le gestionnaire de certificats, consultez la page Présentation du déploiement.

Pour en savoir plus sur les commandes gcloud utilisées sur cette page, consultez les Documentation de référence de la CLI du gestionnaire de certificats.

Créer une entrée de mappage de certificats

Pour créer une entrée de mappage de certificat et y associer un ou plusieurs certificats, suivez les étapes décrites dans cette section. Vous devez spécifier au moins un élément dans une entrée de mappage de certificats. Si vous souhaitez spécifier plusieurs pour un nom d'hôte donné, vous ne pouvez le faire que si chaque certificat utilise un une suite de chiffrement différente (ECDSA, RSA, etc.).

Pour associer plusieurs certificats à une entrée de mappage de certificats, indiquez un de certificats à associer à l'entrée, séparés par une virgule. Vous pouvez associer un maximum de quatre certificats à une même entrée de mappage de certificats ; Pour chaque sous-domaine, vous devez créer une entrée de mappage de certificats distincte.

Pour effectuer cette tâche, vous devez disposer de l'un des rôles suivants sur la cible Projet Google Cloud:

  • Éditeur du gestionnaire de certificats
  • Propriétaire du gestionnaire de certificats

Pour en savoir plus, consultez la section Rôles et autorisations.

gcloud

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

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_ENTRY_NAME est un nom unique qui décrit cette entrée de mappage de certificat.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • CERTIFICATE_NAMES est une liste des noms des certificats que vous souhaitez associer à cette entrée de mappage de certificats, séparés par une virgule.
  • HOSTNAME est le nom d'hôte que vous souhaitez associer à cette entrée de mappage de certificat.

Terraform

Pour créer une entrée de mappage de certificats, vous pouvez utiliser un google_certificate_manager_certificate_map_entry ressource.

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
}

Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.

API

Créez l'entrée de mappage de certificat en envoyant une requête POST à certificateMaps.certificateMapEntries.create. comme suit:

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"],
}

Remplacez les éléments suivants :

  • PROJECT_ID est l'ID du projet Google Cloud cible.
  • CERTIFICATE_MAP_ENTRY_NAME est un nom unique qui décrit cela entrée de mappage de certificat.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • HOSTNAME est le nom d'hôte que vous souhaitez associer à cette entrée de mappage de certificat.
  • CERTIFICATE_NAME est le nom du certificat que vous souhaitez associer à cette entrée de mappage de certificat.

Pour en savoir plus sur la façon dont l'équilibreur de charge sélectionne les certificats lors d'un handshake, consultez la section Logique de sélection des certificats.

Créer une entrée de mappage de certificat principale

Vous pouvez spécifier un certificat principal que l'équilibreur de charge diffuse si le client ne fournit pas de nom d'hôte ou s'il fournit un nom d'hôte que l'équilibreur de charge ne peut pas faire correspondre à une entrée de mappage de certificat configurée.

Pour effectuer cette tâche, vous devez disposer de l'un des rôles suivants sur le projet Google Cloud cible :

  • Éditeur du gestionnaire de certificats
  • Propriétaire du gestionnaire de certificats

Pour en savoir plus, consultez la section Rôles et autorisations.

gcloud

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

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_ENTRY_NAME est un nom unique qui décrit cette entrée de mappage de certificat.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • CERTIFICATE_NAMES est une liste des noms des certificats, séparés par une virgule. que vous souhaitez associer à cette entrée de mappage de certificats.

API

Créez l'entrée de mappage de certificat en envoyant une requête POST à certificateMaps.certificateMapEntries.create. comme suit:

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"],
}

Remplacez les éléments suivants :

  • PROJECT_ID est l'ID du projet Google Cloud cible.
  • CERTIFICATE_MAP_ENTRY_NAME est un nom unique qui décrit cela entrée de mappage de certificat.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • CERTIFICATE_NAME est le nom du certificat que vous souhaitez associer à cette entrée de mappage de certificat.

Pour en savoir plus sur la façon dont l'équilibreur de charge sélectionne les certificats lors d'un handshake, consultez la section Logique de sélection des certificats.

Mettre à jour une entrée de mappage de certificats

Pour mettre à jour une entrée de mappage de certificats, suivez les étapes décrites dans cette section. Vous pouvez mettez à jour une entrée de mappage de certificats comme suit:

  • Attribuer ou annuler l'attribution de certificats
  • Modifier la description
  • Modifier les étiquettes

Pour effectuer cette tâche, vous devez disposer de l'un des rôles suivants sur la cible Projet Google Cloud:

  • Éditeur du gestionnaire de certificats
  • Propriétaire du gestionnaire de certificats

Pour en savoir plus, consultez la section Rôles et autorisations.

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"

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_ENTRY_NAME est un nom unique qui décrit cette entrée de mappage de certificat.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • CERTIFICATE_NAME est le nom du certificat que vous souhaitez associer avec cette entrée de mappage de certificat.
  • DESCRIPTION est une description pertinente pour cette entrée de mappage de certificat.
  • LABELS est une liste de libellés appliqués à cette entrée de mappage de certificats.

API

Mettez à jour l'entrée de mappage de certificats en envoyant une requête PATCH à certificateMaps.certificateMapEntries.patch. comme suit:

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" }
}

Remplacez les éléments suivants :

  • PROJECT_ID est l'ID du projet Google Cloud cible.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat sur lequel est jointe à cette entrée de mappage de certificat.
  • CERTIFICATE_MAP_ENTRY_NAME est un nom unique qui décrit cela entrée de mappage de certificat.
  • CERTIFICATE_NAME est le nom du certificat que vous souhaitez associer à cette entrée de mappage de certificat.
  • DESCRIPTION est une description pertinente pour cette entrée de mappage de certificat.
  • LABEL_KEY est une clé d'étiquette appliquée à cette entrée de mappage de certificat.
  • LABEL_VALUE est une valeur de libellé appliquée à cette entrée de mappage de certificat.

Répertorier les entrées de mappage de certificats

Pour lister les entrées de mappage de certificat actuellement configurées dans un mappage de certificat cible, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer de l'un des rôles suivants sur la cible Projet Google Cloud:

  • Lecteur du gestionnaire de certificats
  • Éditeur du gestionnaire de certificats
  • Propriétaire du gestionnaire de certificats

Pour en savoir plus, consultez la section Rôles et autorisations.

gcloud

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

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat cible.
  • FILTER est une expression qui limite l'expression les résultats à des valeurs spécifiques. Par exemple, vous pouvez filtrer les résultats en fonction des critères suivants :

    • État de la diffusion : --filter='state=ACTIVE'
    • Matcher (défini comme principal) : --filter='-matcher=PRIMARY'
    • Nom d'hôte : --filter='hostname=example.com'
    • Certificats attribués : --filter='certificates:my-cert'
    • Libellés et date de création: --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Pour accéder à d'autres exemples de filtrage à utiliser avec le gestionnaire de certificats, Voir la section Trier et filtrer les résultats sous forme de listes dans la documentation de Cloud Key Management Service.

  • PAGE_SIZE est le nombre de résultats à renvoyer par page.

  • LIMIT est le nombre maximal de résultats à renvoyer.

  • SORT_BY est une liste de champs name séparés par une virgule, les résultats renvoyés sont triés. L'ordre de tri par défaut est croissant ; pour ordre de tri décroissant, ajoutez le préfixe ~ au champ souhaité.

API

Répertoriez les entrées de mappage de certificats configurées dans un mappage de certificat donné en envoyant une requête LIST à la méthode certificateMaps.certificateMapEntries.list comme suit :

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

Remplacez les éléments suivants :

  • PROJECT_ID est l'ID du projet Google Cloud cible.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificats cible.
  • FILTER est une expression qui limite l'expression les résultats à des valeurs spécifiques.
  • PAGE_SIZE est le nombre de résultats à renvoyer par page.
  • SORT_BY est une liste de noms de champs séparés par une virgule par lesquels les résultats renvoyés sont triés. L'ordre de tri par défaut est croissant. Pour un ordre de tri décroissant, ajoutez un préfixe ~ au champ souhaité.

Afficher l'état d'une entrée de mappage de certificat

Pour afficher l'état d'une entrée de mappage de certificat, suivez les étapes de ce .

Pour effectuer cette tâche, vous devez disposer de l'un des rôles suivants sur la cible Projet Google Cloud:

  • Lecteur du gestionnaire de certificats
  • Éditeur du gestionnaire de certificats
  • Propriétaire du gestionnaire de certificats

Pour en savoir plus, consultez la section Rôles et autorisations.

gcloud

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

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_ENTRY_NAME est le nom de l'entrée de mappage de certificat cible.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat sur lequel est jointe à cette entrée de mappage de certificat.

API

Affichez l'état de l'entrée de mappage de certificats en envoyant une requête GET à certificateMaps.certificateMapEntries.get. comme suit:

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

Remplacez les éléments suivants :

  • PROJECT_ID est l'ID du projet Google Cloud cible.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • CERTIFICATE_MAP_ENTRY_NAME est le nom de l'entrée de mappage de certificat cible.

Supprimer une entrée de mappage de certificat

Pour supprimer une entrée de mappage de certificat d'un mappage de certificat, suivez les étapes décrites dans cette section. Cette action détache les certificats associés à l'entrée de mappage de certificats du proxy cible.

La suppression d'une entrée de mappage de certificats ne supprime pas les certificats associés. Pour supprimer ces certificats de Google Cloud, vous devez les supprimer manuellement.

Pour effectuer cette tâche, vous devez disposer du rôle de propriétaire du Gestionnaire de certificats dans le projet Google Cloud cible.

Pour en savoir plus, consultez la section Rôles et autorisations.

gcloud

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

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_ENTRY_NAME est le nom de l'entrée de mappage de certificat cible.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat sur lequel est jointe à cette entrée de mappage de certificat.

API

Supprimez une entrée de mappage de certificats en envoyant une requête DELETE à la méthode certificateMaps.certificateMapEntries.delete comme suit :

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

Remplacez les éléments suivants :

  • PROJECT_ID est l'ID du projet Google Cloud cible.
  • CERTIFICATE_MAP_NAME est le nom du mappage de certificat auquel cette entrée de mappage de certificat est associée.
  • CERTIFICATE_MAP_ENTRY_NAME est le nom de l'entrée de mappage de certificat cible.

Étape suivante