Gérer les mappages de certificats

Un mappage de certificat référence une ou plusieurs entrées de mappage de certificat qui attribuent des certificats spécifiques à des noms d'hôte spécifiques. Cette page explique comment créer et gérer des cartes de certificats.

Pour en savoir plus, consultez Cartes de certificats.

Créer un mappage de certificat

Vous créez un mappage de certificats pour faire référence à l'entrée de mappage de certificats associée à votre certificat.

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

  • Rôle Éditeur du gestionnaire de certificats (roles/certificatemanager.editor)
  • Rôle Propriétaire du gestionnaire de certificats (roles/certificatemanager.owner)

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

Pour créer une mise en correspondance de certificats, utilisez la commande gcloud certificate-manager maps create:

gcloud certificate-manager maps create CERTIFICATE_MAP_NAME

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.

Pour créer un mappage de certificat, envoyez une requête POST à la méthode certificateMaps.create:

POST /v1/projects/PROJECT_ID/locations/global/certificateMaps?certificate_map_id=CERTIFICATE_MAP_NAME

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.

Pour créer un mappage de certificats, vous pouvez utiliser une ressource google_certificate_manager_certificate_map.

resource "google_certificate_manager_certificate_map" "default" {
  name        = "${local.name}-certmap1-${random_id.tf_prefix.hex}"
  description = "${local.domain} certificate map"
  labels = {
    "terraform" : true
  }
}

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

Associer un mappage de certificat à un proxy

Après avoir créé et configuré un mappage de certificats avec des entrées de mappage de certificats, associez-le au proxy cible. Le Gestionnaire de certificats est compatible avec les proxys HTTPS et SSL cibles à portée globale. Pour en savoir plus sur les différences entre ces types de proxys, consultez la section Utiliser des proxys cibles.

Si vous joignez un certificat TLS (SSL) au proxy cible et que vous joignez également des certificats via un mappage de certificats, le proxy utilise les certificats référencés dans le mappage de certificats et ignore le certificat directement associé.

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

  • Rôle Éditeur du gestionnaire de certificats (roles/certificatemanager.editor)

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

Pour associer le mappage de certificats au proxy HTTPS cible, utilisez la commande gcloud compute target-https-proxies update:

gcloud compute target-https-proxies update PROXY_NAME \
    --certificate-map="CERTIFICATE_MAP_NAME"

Pour associer le mappage de certificats au proxy SSL cible, utilisez la commande gcloud compute target-ssl-proxies update:

gcloud compute target-ssl-proxies update PROXY_NAME \
    --certificate-map="CERTIFICATE_MAP_NAME"

Remplacez les éléments suivants :

  • PROXY_NAME: nom du proxy cible.
  • CERTIFICATE_MAP_NAME: nom du mappage de certificats contenant des entrées de mappage de certificats qui font référence aux certificats cibles.

Pour associer le mappage de certificats au proxy HTTPS cible, envoyez une requête POST à la méthode targetHttpsProxies:

POST /projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "//certificatemanager.googleapis.com/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME",
}

Pour associer le mappage de certificats au proxy SSL cible, envoyez une requête POST à la méthode targetSslProxies:

POST /projects/PROJECT_ID/global/targetSslProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "//certificatemanager.googleapis.com/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME",
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • PROXY_NAME: nom du proxy cible.
  • CERTIFICATE_MAP_NAME: nom du mappage de certificats contenant des entrées de mappage de certificats qui font référence aux certificats cibles.

Dissocier un mappage de certificat d'un proxy

Avant de dissocier un mappage de certificat d'un proxy, tenez compte des points suivants:

  • Si des certificats TLS (SSL) sont associés directement au proxy, le dissocier de la carte de certificats le fait reprendre leur utilisation.

  • Si aucun certificat TLS (SSL) n'est associé directement au proxy, la carte de certificats ne peut pas être dissociée. Associez au moins un certificat TLS directement au proxy avant de dissocier le mappage de certificats.

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

  • Rôle Administrateur de l'équilibreur de charge Compute (roles/compute.loadBalancerAdmin)

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

Pour dissocier tout mappage de certificats associé du proxy HTTPS cible, utilisez la commande gcloud compute target-https-proxies update:

gcloud compute target-https-proxies update PROXY_NAME \
    --clear-certificate-map

Pour dissocier tout mappage de certificats associé du proxy SSL cible, exécutez la commande gcloud compute target-ssl-proxies update:

gcloud compute target-ssl-proxies update PROXY_NAME \
    --clear-certificate-map

Remplacez les éléments suivants :

  • PROXY_NAME: nom du proxy cible.

Pour dissocier tout mappage de certificat associé du proxy HTTPS cible, envoyez une requête POST à la méthode targetHttpsProxies:

POST /projects/PROJECT_ID/global/targetHttpsProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "",
}

Pour dissocier tout mappage de certificats associé du proxy SSL cible, envoyez une requête POST à la méthode targetSslProxies:

POST /projects/PROJECT_ID/global/targetSslProxies/PROXY_NAME/setCertificateMap
{
  certificateMap: "",
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • PROXY_NAME: nom du proxy cible.

Mettre à jour un mappage de certificat

Vous pouvez modifier la description et les libellés d'une carte de certificat.

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

  • Rôle Éditeur du gestionnaire de certificats (roles/certificatemanager.editor)
  • Rôle Propriétaire du gestionnaire de certificats (roles/certificatemanager.owner)

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

Pour mettre à jour un mappage de certificats, utilisez la commande gcloud certificate-manager maps update:

gcloud certificate-manager maps update CERTIFICATE_MAP_NAME \
    --description="DESCRIPTION"
    --update-labels="LABELS"

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.
  • DESCRIPTION: nouvelle description de ce mappage de certificats.
  • LABELS: liste d'étiquettes appliquées à ce mappage de certificats, séparées par une virgule.

Pour mettre à jour la carte de certificats, envoyez une requête PATCH à la méthode certificateMaps.patch:

PATCH /v1/projects/PROJECT_ID/locations/global/certificateMaps/CERTIFICATE_MAP_NAME?updateMask=labels,description"
{
  "description": "DESCRIPTION",
  "labels": {
    "LABEL_KEY": "LABEL_VALUE",
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.
  • DESCRIPTION: nouvelle description de ce mappage de certificats.
  • LABEL_KEY: clé de libellé appliquée à cette carte de certificat.
  • LABEL_VALUE: libellé appliqué à cette carte de certificat.

Lister les mappages de certificats

Vous pouvez lister, filtrer et trier toutes les mises en correspondance de certificats configurées du projet.

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

  • Rôle "Lecteur du gestionnaire de certificats" (roles/certificatemanager.viewer)
  • Rôle Éditeur du gestionnaire de certificats (roles/certificatemanager.editor)
  • Rôle Propriétaire du gestionnaire de certificats (roles/certificatemanager.owner)

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

Pour répertorier les mappages de certificats, exécutez la commande gcloud certificate-manager maps list:

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

Remplacez les éléments suivants :

  • FILTER: expression qui limite les résultats renvoyés à des valeurs spécifiques.

    Par exemple, pour filtrer les résultats par libellé et heure de création, vous pouvez spécifier : --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Pour plus d'exemples de filtrage que vous pouvez utiliser avec le Gestionnaire de certificats, consultez la section Trier et filtrer les résultats de la liste dans la documentation de Cloud Key Management Service.

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

  • LIMIT: nombre maximal de résultats à renvoyer.

  • SORT_BY: liste de champs name 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 tilde (~) au champ.

Pour lister les mappages de certificats configurés, envoyez une requête LIST à la méthode certificateMaps.list:

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

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • FILTER: expression qui limite les résultats renvoyés à des valeurs spécifiques.

    Par exemple, pour filtrer les résultats par libellé et heure de création, vous pouvez spécifier : --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

    Pour plus d'exemples de filtrage que vous pouvez utiliser avec le Gestionnaire de certificats, consultez la section Trier et filtrer les résultats de la liste dans la documentation de Cloud Key Management Service.

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

  • SORT_BY: liste de champs name 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 tilde (~) au champ.

Afficher les détails d'un mappage de certificat

Vous pouvez afficher les détails d'un mappage de certificat existant, tels que sa date et heure de création et sa date et heure de dernière mise à jour.

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

  • Rôle "Lecteur du gestionnaire de certificats" (roles/certificatemanager.viewer)
  • Rôle Éditeur du gestionnaire de certificats (roles/certificatemanager.editor)
  • Rôle Propriétaire du gestionnaire de certificats (roles/certificatemanager.owner)

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

Pour afficher l'état d'une mise en correspondance de certificats, utilisez la commande gcloud certificate-manager maps describe:

gcloud certificate-manager maps describe CERTIFICATE_MAP_NAME

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.

Pour afficher les détails de la carte de certificat, envoyez une requête GET à la méthode certificateMaps.get:

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

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.

Supprimer un mappage de certificat

Avant de supprimer un mappage de certificats, procédez comme suit:

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

  • Rôle Propriétaire du gestionnaire de certificats (roles/certificatemanager.owner)

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

Pour supprimer un mappage de certificat, exécutez la commande gcloud certificate-manager maps delete:

gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME

Remplacez les éléments suivants :

  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.

Pour supprimer la mise en correspondance des certificats, envoyez une requête DELETE à la méthode certificateMaps.delete:

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

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud.
  • CERTIFICATE_MAP_NAME: nom du mappage de certificats.

Étape suivante