Mettre à jour un certificat TLS pour le cloud privé

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

La méthode que vous utilisez pour spécifier le nom du keystore et du truststore dans l'hôte virtuel ou le point de terminaison/serveur cible détermine la manière dont vous effectuez la mise à jour du certificat. Vous pouvez spécifier le nom du keystore et du truststore à l'aide de la commande suivante:

  • Références - de préférence
  • Noms directs
  • Variables de flux

Chacune de ces méthodes a des répercussions différentes sur le processus de mise à jour des certificats, comme décrit dans le tableau suivant.

Type de configuration Mettre à jour ou remplacer un certificat Mettre à jour l'hôte virtuel et le point de terminaison cible/le serveur cible
Référence (recommandé) Pour un keystore, créez un keystore avec un nouveau nom et un alias avec le même nom que l'ancien alias.

Pour un truststore, créez un truststore avec un nouveau nom.

Mettez à jour la référence au keystore ou au truststore.

Aucun redémarrage du routeur ou du processeur de messages n'est nécessaire.

Variables de flux (point de terminaison cible uniquement) Pour un keystore, créez un keystore avec un nouveau nom et un alias avec le même nom ou avec un nouveau nom.

Pour un truststore, créez un truststore avec un nouveau nom.

Transmettez à chaque requête la variable de flux mise à jour avec le nom du nouveau keystore, de l'alias ou du nouveau truststore.

Aucun redémarrage du routeur ou du processeur de messages n'est nécessaire.

Directe Créez un nouveau keystore, un alias et un truststore. Mettez à jour l'hôte virtuel et redémarrez les routeurs.

Si le truststore est utilisé par un point de terminaison cible/serveur cible, redéployez le proxy.

Directe Supprimez le keystore ou le truststore et recréez-le avec le même nom. Aucune mise à jour de l'hôte virtuel n'est requise, aucun redémarrage du routeur n'est nécessaire. Toutefois, les requêtes API échouent jusqu'à ce que le nouveau keystore et l'alias soient définis.

Si le keystore est utilisé pour le protocole TLS bidirectionnel entre Edge et le service de backend, redémarrez les processeurs de messages.

Directe Pour le truststore uniquement, importez un nouveau certificat dans le truststore. Si le Truststore est utilisé par un hôte virtuel, redémarrez les routeurs.

Si le truststore est utilisé par un point de terminaison cible/serveur cible, redémarrez les processeurs de message.

Tester le certificat avant et après la mise à jour

Exécutez les commandes openssl suivantes pour tester le certificat actuel avant de le mettre à jour:

echo | openssl s_client -servername hostAlias -connect hostAlias.apigee.net:443 2>/dev/null | openssl x509 -noout -dates -subject

hostAlias est l'alias d'hôte de l'hôte virtuel ou de l'adresse IP. Exemple :

echo | openssl s_client -servername api.myCompany.com -connect api.myCompany.com:443 2>/dev/null | openssl x509 -noout -dates -subject

Le résultat doit s'afficher au format suivant :

notBefore=Dec 30 22:11:38 2015 GMT
notAfter=Dec 30 22:11:38 2016 GMT
subject= /OU=Domain Control Validated/CN=*.apigee.net

Exécutez la même commande après avoir mis à jour le certificat pour le tester.

Mettre à jour un certificat TLS dans un keystore

Pour un déploiement de périphérie sur site:

  1. Créez un keystore et importez un certificat et une clé comme décrit dans la section Keystores et Truststores. Dans le nouveau keystore, assurez-vous d'utiliser pour l'alias de clé le même nom que celui utilisé dans le magasin de clés existant.

    Remarque: Vous pouvez supprimer le keystore actuel et en créer un autre avec le même nom et l'alias. Aucun redémarrage du routeur n'est nécessaire. Toutefois, les requêtes API échouent tant que le nouveau keystore et l'alias ne sont pas définis.
  2. Pour un hôte virtuel utilisé par des connexions entrantes, c'est-à-dire une requête API dans Edge :
    1. Si votre hôte virtuel utilise une référence au keystore, mettez à jour la référence comme décrit dans la section Utiliser des références.
    2. Si votre hôte virtuel utilise un nom direct du keystore :
      1. Mettez à jour tous les hôtes virtuels faisant référence à l'ancien keystore et à l'ancien alias de clé pour référencer le nouveau keystore et l'alias de clé.
      2. Redémarrez les routeurs un par un. Notez que si vous avez supprimé l'ancien keystore et créé un autre keystore portant le même nom, aucun redémarrage du routeur n'est nécessaire.

        Aucun redéploiement du proxy n'est nécessaire.
  3. Pour un point de terminaison/serveur cible utilisé par des connexions sortantes, c'est-à-dire d'Apigee vers un serveur backend :
    1. Si le point de terminaison ou le serveur cible utilise des références au keystore, mettez à jour la référence comme décrit dans la section Utiliser des références. Aucun redéploiement du proxy n'est nécessaire.
    2. Si le point de terminaison ou le serveur cible utilise une variable de flux, mettez-la à jour. Aucun redéploiement du proxy n'est nécessaire.
    3. Si le point de terminaison ou le serveur cible utilise un nom direct du keystore :
      1. Mettez à jour la configuration du point de terminaison cible/du serveur cible pour tous les proxys d'API faisant référence à l'ancien keystore et à l'ancien alias de clé afin de référencer le nouveau keystore et l'alias de clé.
      2. Pour tous les proxys d'API qui référencent le keystore à partir d'une définition TargetEndpoint, vous devez redéployer le proxy.

        Si TargetEndpoint fait référence à une définition TargetServer et que celle-ci fait référence au keystore, aucun redéploiement du proxy n'est nécessaire.
      3. Si le keystore est utilisé pour le protocole TLS bidirectionnel entre Edge et le service de backend, et que vous avez supprimé/recréé le keystore portant le même nom, vous devez redémarrer les processeurs de messages Edge.
  4. Après avoir vérifié que votre nouveau keystore fonctionne correctement, supprimez-le avec le certificat et la clé expirés, comme décrit ci-dessus.

Mettre à jour un certificat TLS dans un Truststore

Si vous utilisez des références au truststore, le processus de mise à jour d'un certificat dans un truststore est le même que pour un keystore, comme indiqué ci-dessus. Les seules différences sont les suivantes :

  • Lorsque vous importez le nouveau certificat dans le nouveau Truststore, le nom d'alias n'a pas d'importance pour les Truststores.
  • Si un certificat fait partie d'une chaîne, vous devez soit créer un fichier unique contenant tous les certificats et l'importer dans un seul alias, soit importer tous les certificats de la chaîne séparément dans le magasin de confiance en utilisant un alias différent pour chaque certificat.

Si vous utilisez des noms directs de vos keystores et de vos Trustedstores:

  1. Importez un nouveau certificat dans le Truststore, comme décrit dans la section Keystores et Truststores. Il n'est pas nécessaire de supprimer l'ancien certificat.
  2. Pour un hôte virtuel utilisé par des connexions entrantes, c'est-à-dire une requête API dans Edge, redémarrez les routeurs un par un.
  3. Pour un point de terminaison/serveur cible cible utilisé par des connexions sortantes, c'est-à-dire d'Apigee vers un serveur backend, redémarrez un par un les processeurs de messages Edge.
  4. Vérifiez que votre nouveau magasin de confiance fonctionne correctement.