Déployer un certificat géré par Google interrégional avec Certificate Authority Service

Ce tutoriel vous explique comment utiliser Certificate Manager pour déployer un certificat global géré par Google avec Certificate Authority Service sur un équilibreur de charge d'application interne interrégional.

Si vous souhaitez déployer des équilibreurs de charge externes globaux ou régionaux, consultez les ressources suivantes :

Configurer l'intégration de CA Service à Certificate Manager

Pour intégrer CA Service à Certificate Manager, procédez comme suit :

  1. Dans le projet cible Google Cloud , créez un compte de service Certificate Manager :

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

    Remplacez PROJECT_ID par l'ID du projetGoogle Cloud cible.

    La commande renvoie le nom de l'identité de service créée. Consultez l'exemple ci-dessous :

    service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com
    
  2. Accordez le rôle Demandeur de certificat CA Service (roles/privateca.certificateRequester) au compte de service Certificate Manager dans le pool d'autorités de certification cible :

    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.
    • SERVICE_ACCOUNT : nom complet du compte de service que vous avez créé à l'étape 1.
  3. Créez une ressource de configuration d'émission de certificats pour votre pool d'autorités de certification :

    Console

    1. Dans la console Google Cloud , accédez à l'onglet Configurations d'émission sur la page Certificate Manager.

      Accéder au Gestionnaire de certificats

    2. Cliquez sur Créer. La page Créer une configuration d'émission de certificats s'affiche.

    3. Dans le champ Nom, saisissez un nom unique pour la configuration d'émission de certificats.

    4. Facultatif : Dans le champ Description, saisissez une description de la configuration d'émission.

    5. Dans Emplacement, sélectionnez Mondial.

    6. Facultatif : Dans le champ Durée de vie, spécifiez la durée de vie du certificat émis en jours. La valeur doit être comprise entre 21 et 30 jours (inclus).

    7. Facultatif : Dans Pourcentage de la période de rotation, spécifiez le pourcentage de la durée de vie du certificat au cours duquel le processus de renouvellement commence. Pour connaître la plage de valeurs valides, consultez Pourcentage de la durée de vie et de la période de rotation.

    8. Facultatif : Dans la liste Algorithme de clé, sélectionnez l'algorithme de clé à utiliser lors de la génération de la clé privée.

    9. Dans la liste Pool d'autorités de certification, sélectionnez le nom du pool d'autorités de certification à attribuer à cette ressource de configuration d'émission de certificats.

    10. Dans le champ Libellés, spécifiez les libellés à associer au certificat. Pour ajouter un libellé, cliquez sur Ajouter un libellé, puis spécifiez une clé et une valeur pour votre libellé.

    11. Cliquez sur Créer.

    gcloud

    gcloud certificate-manager issuance-configs create ISSUANCE_CONFIG_NAME \
        --ca-pool=CA_POOL
    

    Remplacez les éléments suivants :

    • ISSUANCE_CONFIG_NAME : nom de la ressource de configuration d'émission de certificat.
    • CA_POOL : chemin d'accès et nom complets du pool d'autorité de certification que vous souhaitez attribuer à cette ressource de configuration d'émission de certificat.

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

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

Pour créer un certificat géré par Google et émis par votre instance CA Service, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Certificate Manager.

    Accéder au Gestionnaire de certificats

  2. Dans l'onglet Certificats, cliquez sur Ajouter un certificat.

  3. Dans le champ Nom du certificat, saisissez un nom unique pour le certificat.

  4. Facultatif : Dans le champ Description, saisissez une description du certificat. La description vous permet d'identifier le certificat.

  5. Dans Emplacement, sélectionnez Mondial.

  6. Pour Champ d'application, sélectionnez Toutes les régions.

  7. Dans le champ Type de certificat, sélectionnez Créer un certificat géré par Google.

  8. Pour Type d'autorité de certification, sélectionnez Privé.

  9. Dans le champ Noms de domaine, spécifiez une liste de noms de domaine du certificat, séparés par des virgules. Chaque nom de domaine doit être un nom de domaine complet, tel que myorg.example.com.

  10. Sous Sélectionner une configuration d'émission de certificats, sélectionnez le nom de la ressource de configuration d'émission de certificats faisant référence au pool d'AC cible.

  11. Dans le champ Libellés, spécifiez les libellés à associer au certificat. Pour ajouter un libellé, cliquez sur Ajouter un libellé, puis spécifiez une clé et une valeur pour votre libellé.

  12. Cliquez sur Créer.

    Le nouveau certificat apparaît dans la liste des certificats.

gcloud

Pour créer un certificat géré par Google multirégional avec Certificate Authority Service, utilisez la commande certificate-manager certificates create avec les options issuance-config et --scope :

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

Remplacez les éléments suivants :

  • CERTIFICATE_NAME : nom du certificat.
  • DOMAIN_NAME : nom du domaine cible. 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 certificat qui fait 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",
  "scope": "ALL_REGIONS"
 }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet Google Cloud .
  • CERTIFICATE_NAME : nom du certificat.
  • DOMAIN_NAME : nom du domaine cible. 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 certificat qui fait référence au pool d'autorités de certification cible.

Vérifier l'état du certificat

Avant de déployer un certificat sur un équilibreur de charge, vérifiez qu'il est actif. Le passage de l'état du certificat à ACTIVE peut prendre plusieurs minutes.

Console

  1. Dans la console Google Cloud , accédez à la page Certificate Manager.

    Accéder au Gestionnaire de certificats

  2. Dans l'onglet Certificats, vérifiez l'état du certificat dans la colonne État.

gcloud

Pour vérifier l'état du certificat, exécutez la commande suivante :

gcloud certificate-manager certificates describe CERTIFICATE_NAME

Remplacez CERTIFICATE_NAME par le nom du certificat géré par Google cible.

Le résultat ressemble à ce qui suit :

createTime: '2021-10-20T12:19:53.370778666Z'
expireTime: '2022-05-07T05:03:49Z'
managed:
  domains:
  - myorg.example.com
  issuanceConfig: projects/myproject/locations/global/issuanceConfigs/myissuanceConfig
  state: ACTIVE
name: projects/myproject/locations/global/certificates/mycertificate
pemCertificate: |
  -----BEGIN CERTIFICATE-----
  [...]
  -----END CERTIFICATE-----
sanDnsnames:
  - myorg.example.com
updateTime: '2021-10-20T12:19:55.083385630Z'

Pour connaître la procédure de dépannage, consultez la section Dépannage du Gestionnaire de certificats.

Déployer le certificat sur un équilibreur de charge

Pour déployer le certificat géré par Google global, associez-le directement au proxy cible.

Associer le certificat directement au proxy cible

Vous pouvez associer le certificat à un nouveau proxy cible ou à un proxy cible existant.

Pour associer le certificat à un nouveau proxy cible, utilisez la commande gcloud compute target-https-proxies create :

gcloud compute target-https-proxies create PROXY_NAME \
    --url-map=URL_MAP \
    --certificate-manager-certificates=CERTIFICATE_NAME \
    --global

Remplacez les éléments suivants :

  • PROXY_NAME : nom du proxy cible.
  • URL_MAP : nom du mappage d'URL. Vous avez créé le mappage d'URL lorsque vous avez créé l'équilibreur de charge.
  • CERTIFICATE_NAME : nom du certificat.

Pour associer le certificat à un proxy HTTPS cible existant, utilisez la commande gcloud compute target-https-proxies update. Si vous ne connaissez pas le nom du proxy cible existant, accédez à la page Proxys cibles et notez le nom du proxy cible.

gcloud compute target-https-proxies update PROXY_NAME \
    --global \
    --certificate-manager-certificates=CERTIFICATE_NAME

Après avoir créé ou mis à jour le proxy cible, exécutez la commande suivante pour le vérifier :

gcloud compute target-https-proxies list

Résoudre les problèmes liés aux certificats émis par CA Service

Pour connaître les étapes de dépannage, consultez Problèmes liés aux certificats émis par une instance CA Service.

Effectuer un nettoyage

Pour éviter que les ressources utilisées dans ce tutoriel ne soient facturées sur votre compte Google Cloud , supprimez-les.

  1. Supprimez l'équilibreur de charge et ses ressources.

    Consultez la section Nettoyer une configuration d'équilibrage de charge

  2. Supprimez le certificat géré par Google :

    Console

    1. Dans la console Google Cloud , accédez à la page Certificate Manager.

      Accéder au Gestionnaire de certificats

    2. Dans l'onglet Certificats, cochez la case du certificat.

    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
    

    Remplacez CERTIFICATE_NAME par le nom du certificat cible.

  3. Supprimez la ressource de configuration d'émission de certificats :

    Console

    1. Dans la console Google Cloud , accédez à l'onglet Configurations d'émission sur la page Certificate Manager.

      Accéder au Gestionnaire de certificats

    2. Cochez la case de la ressource de configuration d'émission 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 issuance-configs delete ISSUANCE_CONFIG_NAME
    

    Remplacez ISSUANCE_CONFIG_NAME par le nom de la ressource de configuration de l'émission de certificats cible.

  4. Supprimez le pool d'autorités de certification.

    Pour supprimer le pool d'autorités de certification ou désactiver la dernière autorité de certification activée dans un pool d'autorités de certification référencé par une ressource de configuration d'émission de certificats, supprimez toutes les configurations d'émission de certificats qui référencent le pool d'autorités de certification. Pour en savoir plus, consultez Supprimer un pool d'AC.