Gérer les certificats

Cette page explique comment utiliser le gestionnaire de certificats pour créer et gérer des certificats SSL (Transport Layer Security). Le gestionnaire de certificats est compatible avec les types de certificats TLS (SSL) suivants:

  • Les certificats gérés par Google sont des certificats que Google Cloud obtient et gère pour vous. Vous pouvez créer les types suivants de certificats gérés par Google avec le gestionnaire de certificats :
    • Certificats globaux
      • Certificats gérés par Google avec autorisation pour l'équilibreur de charge
      • Certificats gérés par Google avec autorisation DNS
      • Certificats gérés par Google avec Certificate Authority Service (CA Service)
    • Certificats régionaux
      • Certificats régionaux gérés par Google
      • Certificats régionaux gérés par Google avec CA Service
  • Les certificats autogérés sont des certificats que vous obtenez, provisionnez et renouvelez vous-même.

Pour en savoir plus sur les certificats, consultez la page Fonctionnement du gestionnaire de certificats.

Pour savoir comment déployer un certificat avec le gestionnaire de certificats, consultez la section Présentation du déploiement.

Pour en savoir plus sur les commandes de gcloud CLI utilisées sur cette page, consultez la documentation de référence de la CLI Certificate Manager.

Créer un certificat géré par Google avec l'autorisation de l'équilibreur de charge

Pour créer un certificat géré par Google avec une autorisation d'équilibreur de charge, procédez comme indiqué dans cette section. Vous ne pouvez créer des certificats gérés par Google avec une autorisation d'équilibreur de charge que dans l'emplacement global.

Pour spécifier plusieurs noms de domaine pour le certificat, fournissez une liste de noms de domaine cibles séparés par une virgule.

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 certificates create CERTIFICATE_NAME \
    --domains="DOMAIN_NAMES"

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAMES: liste des domaines cibles de ce certificat, séparés par une virgule. Chaque nom de domaine doit être un nom de domaine complet, par exemple myorg.example.com.

Terraform

Pour créer un certificat géré par Google, vous pouvez utiliser une ressource google_certificate_manager_certificate avec un bloc managed.

resource "google_certificate_manager_certificate" "default" {
  name        = "prefixname-rootcert-${random_id.default.hex}"
  description = "Google-managed cert"
  managed {
    domains = ["example.me"]
  }
  labels = {
    "terraform" : true
  }
}

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

API

Créez le certificat en envoyant une requête POST à la méthode certificates.create comme suit:

POST /v1/projects/PROJECT_ID/locations/global/certificates?certificate_id=CERTIFICATE_NAME
{
 "managed": {
  "domains": ["DOMAIN_NAME"],
 }
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAME: domaine cible de ce certificat. Le nom de domaine doit être un nom de domaine complet, tel que myorg.example.com.

Pour en savoir plus sur le processus de déploiement de certificats, consultez la section Présentation du déploiement.

Créer un certificat géré par Google avec une autorisation DNS

Pour créer un certificat global géré par Google avec une autorisation DNS, procédez comme suit:

  1. Créez les autorisations DNS correspondantes qui font référence à chacun des noms de domaine couverts par le certificat. Pour obtenir des instructions, consultez la page Créer une autorisation DNS.
  2. Configurez un enregistrement CNAME valide pour le sous-domaine de validation dans la zone DNS du domaine cible. Pour obtenir des instructions, consultez la section Ajouter l'enregistrement CNAME à votre configuration DNS.
  3. Suivez la procédure décrite dans cette section.

Vous pouvez créer des certificats regional et global gérés par Google. Pour en savoir plus sur la création d'un certificat regional géré par Google, consultez la section Créer un certificat géré par Google régional.

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 certificates create CERTIFICATE_NAME \
    --domains="DOMAIN_NAMES" \
    --dns-authorizations="AUTHORIZATION_NAMES"

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAMES: liste des domaines cibles de ce certificat, séparés par une virgule. Chaque nom de domaine doit être un nom de domaine complet, par exemple myorg.example.com.
  • AUTHORIZATION_NAMES: liste de noms des autorisations DNS que vous avez créées pour ce certificat, séparés par une virgule.

Pour créer un certificat géré par Google avec un nom de domaine générique, utilisez la commande suivante. Un certificat de nom de domaine générique couvre tous les sous-domaines de premier niveau d'un domaine donné.

gcloud certificate-manager certificates create CERTIFICATE_NAME \
    --domains="*.DOMAIN_NAME,DOMAIN_NAME" --dns-authorizations=AUTHORIZATION_NAME

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAME: domaine cible de ce certificat. Le préfixe point l'astérisque (*.) signifie un certificat avec caractère générique. Le nom de domaine doit être un nom de domaine complet, tel que myorg.example.com.
  • AUTHORIZATION_NAME: nom de l'autorisation DNS que vous avez créée pour ce certificat.

Terraform

Pour créer un certificat géré par Google avec une autorisation DNS, vous pouvez utiliser une ressource google_certificate_manager_certificate avec l'attribut dns_authorizations dans le bloc managed.

resource "google_certificate_manager_certificate" "root_cert" {
  name        = "${local.name}-rootcert-${random_id.tf_prefix.hex}"
  description = "The wildcard cert"
  managed {
    domains = [local.domain, "*.${local.domain}"]
    dns_authorizations = [
      google_certificate_manager_dns_authorization.default.id
    ]
  }
  labels = {
    "terraform" : true
  }
}

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

API

Créez le certificat en envoyant une requête POST à la méthode certificates.create comme suit:

POST /v1/projects/PROJECT_ID/locations/global/certificates?certificate_id=CERTIFICATE_NAME
{
 "managed": {
  "domains": ["DOMAIN_NAME"],
  "dnsAuthorizations": [
   "projects/PROJECT_ID/locations/global/dnsAuthorizations/AUTHORIZATION_NAME",
  ],
 }
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAME: domaine cible de ce certificat. Le préfixe point (*.) correspond à un certificat avec caractère générique. Le nom de domaine doit être un nom de domaine complet (myorg.example.com, par exemple).
  • AUTHORIZATION_NAME: nom des autorisations DNS que vous avez créées pour ce certificat.

Pour gérer indépendamment les certificats de plusieurs projets, vous pouvez utiliser l'autorisation DNS par projet (version preview). Pour en savoir plus sur la création de certificats avec une autorisation DNS par projet, consultez la section Créer une autorisation DNS.

Pour en savoir plus sur le processus de déploiement de certificats, consultez la section Présentation du déploiement.

Créer un certificat géré par Google et émis par CA Service

Pour créer un certificat géré par Google et émis par une instance CA Service sous votre contrôle, suivez la procédure décrite dans cette section. Vous pouvez créer des certificats regional et global gérés par Google. Pour en savoir plus sur la création d'un certificat régional géré par Google et émis par le service CA, consultez la page Créer un certificat régional géré par Google émis par le service CA.

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

Pour en savoir plus sur les commandes de gcloud CLI utilisées dans cette section, consultez la documentation de référence de la CLI Certificate Manager.

Configurer l'intégration de CA Service au gestionnaire de certificats

Si vous ne l'avez pas déjà fait, vous devez configurer le gestionnaire de certificats pour l'intégrer au service CA, comme décrit dans cette section. Si une règle d'émission de certificats est en vigueur sur le pool d'autorités de certification cible, le provisionnement des certificats peut échouer pour l'une des raisons suivantes:

  • La stratégie d'émission de certificats a bloqué le certificat demandé. Dans ce cas, aucuns frais ne vous sont facturés, car le certificat n'a pas été émis.
  • La stratégie a appliqué au certificat des modifications non compatibles avec le gestionnaire de certificats. Dans ce cas, des frais vous sont toujours facturés, car le certificat a été émis, même s'il n'est pas entièrement compatible avec le gestionnaire de certificats.

Pour tout problème lié aux restrictions liées aux règles d'émission, consultez la page Dépannage.

Pour configurer l'intégration des services CA avec le gestionnaire de certificats, procédez comme suit:

  • Accordez au gestionnaire de certificats la possibilité de demander des certificats à partir du pool d'autorités de certification cible :
    1. Exécutez la commande suivante pour créer un compte de service de gestionnaire de certificats dans le projet Google Cloud cible:
     gcloud beta services identity create --service=certificatemanager.googleapis.com \
        --project=PROJECT_ID
     

    Remplacez PROJECT_ID par l'ID du projet Google Cloud cible.

    La commande renvoie le nom du compte de service créé. Exemple :

    service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com

    1. Attribuez au compte de service du gestionnaire de certificats le rôle de demandeur de certificat dans le pool d'autorités de certification cible comme suit:
     gcloud privateca pools add-iam-policy-binding CA_POOL \
        --location REGION \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role roles/privateca.certificateRequester
     

    Remplacez les éléments suivants :

    • CA_POOL: ID du pool d'autorités de certification cible
    • REGION: région Google Cloud cible
    • SERVICE_ACCOUNT: nom complet du compte de service que vous avez créé à l'étape 1
  1. Créez une ressource de configuration d'émission de certificats pour votre pool d'autorités de certification:

     gcloud certificate-manager issuance-configs create ISSUANCE_CONFIG_NAME \
         --ca-pool=CA_POOL \
         [--lifetime=CERTIFICATE_LIFETIME] \
         [--rotation-window-percentage=ROTATION_WINDOW_PERCENTAGE] \
         [--key-algorithm=KEY_ALGORITHM]
     

    Remplacez les éléments suivants :

    • ISSUANCE_CONFIG_NAME: nom unique qui identifie la ressource de configuration d'émission de certificats.
    • CA_POOL: chemin d'accès complet à la ressource et nom du pool d'autorités de certification que vous souhaitez attribuer à cette ressource de configuration d'émission de certificats.
    • CERTIFICATE_LIFETIME: durée de vie du certificat, en jours. Les valeurs valides sont comprises entre 21 et 30 jours au format de durée standard. La valeur par défaut est de 30 jours (30D). Ce paramètre est facultatif.
    • ROTATION_WINDOW_PERCENTAGE: pourcentage de la durée de vie du certificat à partir duquel un renouvellement se déclenche. La valeur par défaut est de 66 %. Vous devez définir le pourcentage de la période de rotation par rapport à la durée de vie du certificat, de sorte que son renouvellement ait lieu au moins sept jours après son émission et au moins sept jours avant son expiration. Ce paramètre est facultatif.
    • KEY_ALGORITHM: algorithme de chiffrement utilisé pour générer la clé privée. Les valeurs valides sont ecdsa-p256 ou rsa-2048. La valeur par défaut est rsa-2048. Ce paramètre est facultatif.

    Pour en savoir plus sur les ressources de configuration d'émission de certificats, consultez Gérer la configuration d'émission de certificats.

Créer un certificat géré par Google et émis par votre instance CA Service

Créez un certificat géré par Google, émis par votre instance de CA Service, comme suit:

gcloud

gcloud certificate-manager certificates create CERTIFICATE_NAME \
    --domains="DOMAIN_NAMES" \
    --issuance-config=ISSUANCE_CONFIG_NAME

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAMES: liste des domaines cibles de ce certificat, séparés par une virgule. Chaque nom de domaine doit être un nom de domaine complet, par exemple myorg.example.com.
  • ISSUANCE_CONFIG_NAME: nom de la ressource de configuration d'émission de certificats faisant référence au pool d'autorités de certification cible.

API

Créez le certificat en envoyant une requête POST à la méthode certificates.create comme suit:

POST /v1/projects/PROJECT_ID/locations/global/certificates?certificate_id=CERTIFICATE_NAME
{
 "managed": {
  "domains": ["DOMAIN_NAME"],
  "issuanceConfig": ["ISSUANCE_CONFIG_NAME"],
 }
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • DOMAIN_NAME: domaine cible de ce certificat. Le nom de domaine doit être un nom de domaine complet, tel que myorg.example.com.
  • ISSUANCE_CONFIG_NAME: nom de la ressource de configuration d'émission de certificats faisant référence au pool d'autorités de certification cible.

Pour en savoir plus sur le processus de déploiement de certificats, consultez la section Présentation du déploiement.

Créer un certificat régional géré par Google et émis par CA Service

Pour créer un certificat régional géré par Google et émis par une instance de service CA sous votre contrôle, suivez la procédure décrite dans cette section.

Configurer l'intégration de CA Service au gestionnaire de certificats

Configurez le gestionnaire de certificats pour l'intégrer au service d'autorité de certification comme suit:

  1. Créez un compte de service du gestionnaire de certificats dans le projet Google Cloud cible:

    gcloud beta services identity create
        --service=certificatemanager.googleapis.com \
        --project=PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID du projet Google Cloud cible.

La commande renvoie le nom de l'identité de service créée, comme illustré dans l'exemple suivant:

service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com
  1. Attribuez au compte de service du gestionnaire de certificats le rôle de demandeur de certificat dans le pool d'autorités de certification cible comme suit:

    gcloud privateca pools add-iam-policy-binding CA_POOL \
        --location LOCATION \
        --member "serviceAccount:SERVICE_ACCOUNT" \
        --role roles/privateca.certificateRequester
    

    Remplacez les éléments suivants :

    • CA_POOL: ID du pool d'autorités de certification cible.
    • LOCATION: emplacement Google Cloud cible. Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.
    • SERVICE_ACCOUNT: nom complet du compte de service que vous avez créé à l'étape 1.
  2. Créez une ressource de configuration d'émission de certificats pour votre pool d'autorités de certification:

    gcloud beta certificate-manager issuance-configs create ISSUANCE_CONFIG_NAME \
        --ca-pool=CA_POOL \
        --location=LOCATION> \
        [--lifetime=CERTIFICATE_LIFETIME] \
        [--rotation-window-percentage=ROTATION_WINDOW_PERCENTAGE] \
        [--key-algorithm=KEY_ALGORITHM] \
    

    Remplacez les éléments suivants :

    • ISSUANCE_CONFIG_NAME: nom unique de la ressource de configuration d'émission de certificats.
    • CA_POOL: chemin d'accès complet à la ressource et nom du pool d'autorités de certification que vous souhaitez attribuer à cette ressource de configuration d'émission de certificats.
    • LOCATION: emplacement Google Cloud cible. Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.
    • CERTIFICATE_LIFETIME: durée de vie du certificat, en jours. Les valeurs valides sont comprises entre 21 et 30 jours selon le format de durée standard. La valeur par défaut est de 30 jours (30D). Ce paramètre est facultatif.
    • ROTATION_WINDOW_PERCENTAGE: pourcentage de la durée de vie du certificat à partir duquel un renouvellement se déclenche. Ce paramètre est facultatif. La valeur par défaut est 66 %. Vous devez définir le pourcentage de la période de rotation par rapport à la durée de vie du certificat, de sorte que son renouvellement ait lieu au moins sept jours après son émission et au moins sept jours avant son expiration.
    • KEY_ALGORITHM: algorithme de chiffrement utilisé pour générer la clé privée. Les valeurs valides sont ecdsa-p256 ou rsa-2048. La valeur par défaut est rsa-2048. Ce paramètre est facultatif.
    • DESCRIPTION: description de la ressource de configuration d'émission de certificats. Ce paramètre est facultatif.

Pour en savoir plus sur les ressources de configuration d'émission de certificats, consultez Gérer la configuration d'émission de certificats.

Créez un certificat régional géré par Google, émis par votre service CA

Créez un certificat régional géré par Google, émis par votre service d'autorité de certification, à l'aide de la ressource de configuration d'émission de certificats créée à l'étape précédente:

gcloud

Exécutez la commande ci-dessous.

gcloud beta certificate-manager certificates create CERTIFICATE_NAME \
    --domains="DOMAIN_NAMES" \
    --issuance-config="ISSUANCE_CONFIG_NAME" \
    --location="LOCATION"

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique du certificat.
  • DOMAIN_NAMES: liste des domaines cibles de ce certificat, séparés par une virgule. Chaque nom de domaine doit être un nom de domaine complet, par exemple myorg.example.com.
  • ISSUANCE_CONFIG_NAME: nom de la ressource de configuration d'émission de certificats faisant référence au pool d'autorités de certification cible.
  • LOCATION: emplacement Google Cloud cible. Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.

API

Créez le certificat en envoyant une requête POST à la méthode certificates.create comme suit:

POST /v1/projects/PROJECT_ID/locations/LOCATION/certificates?
{
certificate: {
    name: "/projects/example-project/locations/LOCATION/certificates/my-cert",
    "managed": {
        "domains": ["DOMAIN_NAME"],
        "issuanceConfig": "ISSUANCE_CONFIG_NAME",
              },
             }
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • CERTIFICATE_NAME: nom unique du certificat.
  • DOMAIN_NAME: domaine cible de ce certificat. Le nom de domaine doit être un nom de domaine complet, par exemple example.com ou www.example.com.
  • ISSUANCE_CONFIG_NAME: nom de la ressource de configuration d'émission de certificats faisant référence au pool d'autorités de certification cible.
  • LOCATION: emplacement Google Cloud cible. Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.

Pour en savoir plus sur le processus de déploiement de certificats, consultez la section Présentation du déploiement.

Créer un certificat régional géré par Google

Pour créer un certificat géré par Google avec une autorisation DNS, procédez comme suit:

  1. Créez les autorisations DNS correspondantes qui font référence à chacun des noms de domaine couverts par le certificat. Pour obtenir des instructions, consultez la page Créer une autorisation DNS.
  2. Configurez un enregistrement CNAME valide pour le sous-domaine de validation dans la zone DNS du domaine cible. Pour obtenir des instructions, consultez la section Ajouter l'enregistrement CNAME à votre configuration DNS.
  3. Suivez la procédure décrite dans cette section.

Vous pouvez créer des certificats regional et global gérés par Google. Pour en savoir plus sur la création d'un certificat géré par Google global, consultez la section Créer un certificat géré par Google avec autorisation DNS.

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

Exécutez la commande ci-dessous.

gcloud certificate-manager certificates create CERTIFICATE_NAME \
   --domains=DOMAIN_NAME \
   --dns-authorizations=AUTHORIZATION_NAME \
   --location=LOCATION

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique du certificat.
  • DOMAIN_NAME: domaine cible du certificat. Le nom de domaine doit être un nom de domaine complet, tel que myorg.example.com.
  • AUTHORIZATION_NAME: nom de l'autorisation DNS que vous avez créée pour ce certificat.
  • LOCATION: emplacement dans lequel vous créez le certificat géré par Google.

Pour créer un certificat géré par Google avec un nom de domaine générique, utilisez la commande suivante. Un certificat de nom de domaine générique couvre tous les sous-domaines de premier niveau d'un domaine donné.

gcloud certificate-manager certificates create CERTIFICATE_NAME \
   --domains="*.DOMAIN_NAME,DOMAIN_NAME" \
   --dns-authorizations=AUTHORIZATION_NAME
   --location=LOCATION

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique du certificat.
  • DOMAIN_NAME: domaine cible du certificat. Le préfixe point (*.) correspond à un certificat avec caractère générique. Le nom de domaine doit être un nom de domaine complet, tel que myorg.example.com.
  • AUTHORIZATION_NAME: nom de l'autorisation DNS que vous avez créée pour ce certificat.
  • LOCATION: emplacement dans lequel vous créez le certificat géré par Google.

Importer un certificat autogéré

Pour importer un certificat autogéré, suivez la procédure décrite dans cette section. Vous pouvez importer des certificats X.509 TLS (SSL) globaux et régionaux des types suivants:

  • Certificats générés par les autorités de certification tierces de votre choix
  • Certificats générés par des autorités de certification sous votre contrôle
  • Les certificats autosignés, comme décrit dans la section Créer une clé privée et un certificat

Vous devez importer les fichiers suivants encodés au format PEM:

  • Le fichier de certificat (.crt)
  • Le fichier de clé privée (.key) correspondant

Consultez la page Présentation du déploiement pour connaître les étapes nécessaires à la diffusion du certificat sur votre équilibreur de charge.

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 certificates create  CERTIFICATE_NAME \
    --certificate-file="CERTIFICATE_FILE" \
    --private-key-file="PRIVATE_KEY_FILE" \
    [--location="REGION"]

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • CERTIFICATE_FILE: chemin d'accès et nom du fichier de certificat .crt.
  • PRIVATE_KEY_FILE: chemin d'accès et nom du fichier de clé privée .key.
  • REGION: région Google Cloud cible. La valeur par défaut est global. Ce paramètre est facultatif.

Terraform

Pour importer un certificat autogéré, vous pouvez utiliser une ressource google_certificate_manager_certificate avec le bloc self_managed.

API

Importez le certificat en envoyant une requête POST à la méthode certificates.create comme suit:

POST /v1/projects/PROJECT_ID/locations/[REGION]/certificates?certificate_id=CERTIFICATE_NAME
{
  self_managed: {
    pem_certificate: "PEM_CERTIFICATE",
    pem_private_key: "PEM_KEY",
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • CERTIFICATE_NAME: nom unique décrivant ce certificat.
  • PEM_CERTIFICATE: PEM du certificat.
  • PEM_KEY: PEM clé.
  • REGION: région Google Cloud cible. La valeur par défaut est global. Ce paramètre est facultatif.

Mettre à jour un certificat

Pour mettre à jour un certificat existant sans modifier ses attributions aux noms de domaine dans le mappage de certificat correspondant, suivez la procédure décrite dans cette section. Les SAN du nouveau certificat doivent correspondre exactement aux SAN du certificat existant.

Pour les certificats gérés par Google, vous ne pouvez mettre à jour que les champs description et labels. Pour mettre à jour un certificat autogéré, vous devez importer les fichiers encodés au format PEM suivants:

  • Le fichier de certificat (.crt)
  • Le fichier de clé privée (.key) correspondant

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 certificates update CERTIFICATE_NAME \
    --certificate-file="CERTIFICATE_FILE" \
    --private-key-file="PRIVATE_KEY_FILE" \
    --description="DESCRIPTION" \
    --update-labels="LABELS" \
    [--location="REGION"]

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom du certificat cible.
  • CERTIFICATE_FILE: chemin d'accès et nom du fichier de certificat .crt.
  • PRIVATE_KEY_FILE: chemin d'accès et nom du fichier de clé privée .key.
  • DESCRIPTION: valeur de description unique pour ce certificat.
  • LABELS: liste de libellés appliqués à ce certificat, séparés par une virgule.
  • REGION: région Google Cloud cible. La valeur par défaut est global. Ce paramètre est facultatif.

API

Mettez à jour le certificat en envoyant une requête PATCH à la méthode certificates.patch comme suit:

PATCH /v1/projects/PROJECT_ID/locations/[REGION]/certificates/CERTIFICATE_NAME?updateMask=self_managed,labels,description
{
   self_managed: { // Self-managed certificates only
    pem_certificate: "PEM_CERTIFICATE",
    pem_private_key: "PEM_KEY",
  }
  "description": "DESCRIPTION",
  "labels": {
    "LABEL_KEY": "LABEL_VALUE",
  }

}

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • REGION: région Google Cloud cible. La valeur par défaut est global. Ce paramètre est facultatif.
  • CERTIFICATE_NAME: nom du certificat cible.
  • PEM_CERTIFICATE: PEM du certificat.
  • PEM_KEY: PEM clé.
  • DESCRIPTION: description pertinente du certificat.
  • LABEL_KEY: clé d'étiquette appliquée à ce certificat.
  • LABEL_VALUE: valeur de libellé appliquée à ce certificat.

Lister les certificats

Pour répertorier les certificats gérés par le gestionnaire de certificats, suivez la procédure décrite dans cette section. Par exemple, vous pouvez effectuer les requêtes suivantes:

  • Lister les certificats en fonction du nom de domaine qui leur est attribué
  • Lister les certificats arrivés à expiration

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

  • 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.

Console

Si votre projet comporte plus de 10 000 certificats gérés par le gestionnaire de certificats, la page Gestionnaire de certificats de la console Google Cloud ne peut pas les répertorier. Dans ce cas, utilisez la commande gcloud CLI pour répertorier vos certificats.

  1. Dans la console Google Cloud, accédez à la page Gestionnaire de certificats.

    Accéder au gestionnaire de certificats

  2. Sur la page qui s'affiche, sélectionnez l'onglet Certificats. Cet onglet répertorie tous les certificats gérés par le gestionnaire de certificats dans le projet sélectionné.

L'onglet Certificats classiques répertorie les certificats du projet sélectionné qui ont été provisionnés directement via Cloud Load Balancing. Ces certificats ne sont pas gérés par le gestionnaire de certificats. Pour obtenir des instructions sur la gestion de ces certificats, consultez l'un des articles suivants dans la documentation Cloud Load Balancing:

gcloud

gcloud certificate-manager certificates list \
    [--location="REGION"] \
    --filter="FILTER" \
    --page-size="PAGE_SIZE" \
    --limit="LIMIT" \
    --sort-by="SORT_BY"

Remplacez les éléments suivants :

  • REGION: région Google Cloud cible. Pour répertorier les certificats de toutes les régions, utilisez - comme valeur. La valeur par défaut est global. Ce paramètre est facultatif.
  • FILTER: expression qui limite les résultats renvoyés à des valeurs spécifiques. Par exemple, vous pouvez filtrer les résultats en fonction des critères suivants :
    • Délai d'expiration: --filter='expire_time >= "2021-09-01T00:00:00Z"'
    • Noms SAN DNS: --filter='san_dnsnames:"example.com"'
    • État du certificat: --filter='managed.state=FAILED'
    • Type de certificat: --filter='managed:*'
    • Étiquettes et date et heure de création: --filter='labels.key:value AND create_time > "2021-09-01T00:00:00Z"'

Pour plus d'exemples de filtrage utilisables avec le gestionnaire de certificats, consultez la section Trier et filtrer les résultats d'une 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 en fonction desquels les résultats renvoyés sont triés. L'ordre de tri par défaut est croissant. Pour l'ordre de tri décroissant, ajoutez le préfixe ~ au champ.

API

Pour répertorier les certificats, envoyez une requête LIST à la méthode certificates.list comme suit:

GET /v1/projects/PROJECT_ID/locations/REGION/certificates?filter=FILTER&pageSize=PAGE_SIZE&sortBy=SORT_BY

Remplacez les éléments suivants :

  • REGION: région Google Cloud cible. Pour répertorier les certificats de toutes les régions, utilisez - comme valeur.
  • PROJECT_ID: ID du projet Google Cloud cible.
  • FILTER: expression qui limite les résultats renvoyés à des valeurs spécifiques.
  • PAGE_SIZE: nombre de résultats à renvoyer par page.
  • SORT_BY: liste de noms de champs séparés par une virgule en fonction desquels 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 le préfixe ~ au champ.

Afficher l'état d'un certificat

Pour afficher l'état d'un certificat existant, y compris son état de provisionnement et d'autres informations détaillées, suivez la procédure décrite dans cette section.

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

  • 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.

Console

Si votre projet comporte plus de 10 000 certificats gérés par le gestionnaire de certificats, la page Gestionnaire de certificats de la console Google Cloud ne peut pas les répertorier. Dans ce cas, répertoriez vos certificats à l'aide de la commande gcloud CLI. Toutefois, si vous disposez d'un lien direct vers la page Détails du certificat, la page Gestionnaire de certificats de la console Google Cloud peut afficher ces détails.

  1. Dans la console Google Cloud, accédez à la page Gestionnaire de certificats.

    Accéder au gestionnaire de certificats

  2. Sur la page qui s'affiche, sélectionnez l'onglet Certificats.

  3. Dans l'onglet Certificats, accédez au certificat cible, puis cliquez sur le nom du certificat.

La page Détails du certificat affiche des informations détaillées sur le certificat sélectionné.

  1. Facultatif: Pour afficher la réponse REST de l'API Certificate Manager pour ce certificat, cliquez sur REST équivalent.

  2. Facultatif: Si le certificat est associé à une configuration d'émission de certificats que vous souhaitez afficher, cliquez sur le nom de la configuration d'émission de certificats associée dans le champ Configuration d'émission.

    La console Google Cloud affiche la configuration complète de l'émission du certificat.

gcloud

gcloud certificate-manager certificates describe CERTIFICATE_NAME \
    [--location="REGION"]

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom du certificat cible.
  • REGION: région Google Cloud cible. La valeur par défaut est global. Ce paramètre est facultatif.

API

Pour afficher l'état du certificat, envoyez une requête GET à la méthode certificates.get comme suit:

GET /v1/projects/PROJECT_ID/locations/REGION/certificates/CERTIFICATE_NAME

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • REGION: région Google Cloud cible.
  • CERTIFICATE_NAME: nom du certificat cible.

Supprimer un certificat

Pour supprimer un certificat du gestionnaire de certificats, suivez les étapes décrites dans cette section. Avant de pouvoir supprimer un certificat, vous devez le retirer de toutes les entrées de mappage de certificats qui le référencent. Sinon, la suppression échouera.

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

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

Console

  1. Dans la console Google Cloud, accédez à la page Gestionnaire de certificats.

    Accéder au gestionnaire de certificats

  2. Dans l'onglet Certificats, cochez la case du certificat que vous souhaitez supprimer.

  3. Cliquez sur Supprimer.

  4. Dans la boîte de dialogue qui s'affiche, cliquez sur Supprimer pour confirmer.

gcloud

gcloud certificate-manager certificates delete CERTIFICATE_NAME \
   [--location="REGION"]

Remplacez les éléments suivants :

  • CERTIFICATE_NAME: nom du certificat cible.
  • REGION: région Google Cloud cible. La valeur par défaut est global. Ce paramètre est facultatif.

API

Supprimez le certificat en envoyant une requête DELETE à la méthode certificates.delete comme suit:

DELETE /v1/projects/PROJECT_ID/locations/REGION/certificates/CERTIFICATE_NAME

Remplacez les éléments suivants :

  • PROJECT_ID: ID du projet Google Cloud cible.
  • REGION: région Google Cloud cible.
  • CERTIFICATE_NAME: nom du certificat cible.

Étapes suivantes