Configurer des alertes d'expiration

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

Utilisez une alerte d'expiration TLS pour générer une notification lorsque le certificat TLS dans un environnement est sur le point d'expirer.

À propos des certificats TLS

TLS (Transport Layer Security) est la technologie de sécurité standard permettant d'établir une liaison chiffrée entre un serveur Web et un client Web, tel qu'un navigateur ou un l'application. Un lien chiffré garantit que toutes les données transmises entre le serveur et le client sont conservées privé.

Un certificat TLS est un fichier numérique qui identifie une entité dans une transaction TLS. Edge utilise un protocole TLS pour configurer le protocole TLS:

Un certificat TLS contient une date d'expiration. Si un certificat TLS expire, la connexion TLS échoue jusqu'à ce que vous mettiez à jour le certificat. Cela signifie que toutes les requêtes adressées à votre API échoueront tant que vous n'aurez pas mis à jour le certificat.

À propos des alertes d'expiration

Plutôt que d'attendre l'expiration d'un certificat et l'échec des requêtes adressées à votre API, utilisez un alerte d'expiration pour générer une notification lorsqu'un certificat TLS dans un environnement est sur le point d'expirer. Une fois l'alerte déclenchée, vous pouvez mettre à jour le certificat afin que vos clients en cas d'interruption du service.

Lorsque vous configurez l'alerte, ne spécifiez pas un certificat individuel, mais un environnement spécifique. L'alerte se déclenche lorsqu'un certificat déployé est programmé expire au cours de la période spécifiée.

Vous pouvez configurer l'alerte d'expiration pour qu'elle se produise:

  • Un jour avant l'expiration des certificats
  • 14 jours avant l'expiration des certificats
  • 30 jours avant l'expiration d'un certificat
Pour en savoir plus sur les alertes, consultez Configurer des alertes et des notifications.

Ajouter des alertes et des notifications d'expiration

Pour ajouter des alertes et des notifications d'expiration: <ph type="x-smartling-placeholder">
    </ph>
  1. Cliquez sur Analyser > Règles d'alerte dans l'interface utilisateur Edge.
  2. Cliquez sur +Alerte.
  3. Saisissez les informations générales suivantes concernant l'alerte :
    Champ Description
    Nom de l'alerte Nom de l'alerte. Utilisez un nom qui décrit le déclencheur et qui soit significatif pour vous. Le nom ne doit pas dépasser 128 caractères.
    Description Description de l'alerte.
    Type d'alerte Sélectionnez Expiration TLS. Voir À propos des types d'alerte.
    Environnement Sélectionnez l'environnement dans la liste déroulante.
    État Bouton permettant d'activer ou de désactiver l'alerte.
  4. Définissez le seuil et la dimension de la condition qui déclenchera l'alerte.
    Champ de condition Description
    Seuil

    Configurez la période des certificats arrivant à expiration. Vous pouvez choisir de déclencher une alerte lorsqu'un certificat va expirer dans:

    • 1 jour
    • 14 jours
    • 30 jours
    Dimension Les dimensions sont fixées sur la valeur Tous les certificats TLS correspondant à n'importe quel certificat TLS dans l'environnement.
  5. Cliquez sur + Notification pour ajouter une notification d'alerte.
    Détails de la notification Description
    Canal Sélectionnez le canal de notification que vous souhaitez utiliser et spécifiez la destination : e-mail, Slack, PagerDuty ou webhook.
    Destination Spécifiez la destination en fonction du type de canal sélectionné: <ph type="x-smartling-placeholder">
      </ph>
    • E-mail - Adresse e-mail, telle que joe@company.com
    • Slack - URL du canal Slack, telle que https://hooks.slack.com/services/T00000000/B00000000/XXXXX
    • PagerDuty - Code PagerDuty, tel que abcd1234efgh56789
    • Webhook - URL de webhook, tel que https://apigee.com/test-webhook

      Remarque : Vous ne pouvez spécifier qu'une seule destination par notification. Pour spécifier plusieurs destinations pour le même type de canal, ajoutez des notifications supplémentaires.

  6. Pour ajouter d'autres notifications, répétez l'étape précédente.
  7. Si vous avez ajouté une notification, définissez les champs suivants :
    Champ Description
    Playbook (Facultatif) Champ de texte au format libre pour fournir une brève description des actions recommandées pour résoudre les alertes lorsqu'elles se déclenchent. Vous pouvez également indiquer un lien vers votre wiki interne ou votre page de communauté, où vous faites référence aux bonnes pratiques. Les informations contenues dans ce champ seront incluses dans la notification. Le contenu de ce champ ne peut pas dépasser 1 500 caractères.
    Limite Fréquence d'envoi des notifications. Sélectionnez une valeur dans la liste déroulante.
  8. Cliquez sur Enregistrer.

Afficher les alertes dans le tableau de bord des événements

Lorsqu'Edge détecte une condition d'alerte, il la consigne automatiquement dans le Événements dans l'interface utilisateur Edge. Liste des événements affichés dans le tableau de bord "Événements" inclut toutes les alertes, corrigées et certifiées.

Pour afficher une alerte:

  1. Cliquez sur Analyser > Événements dans l'interface utilisateur Edge. Le nouveau tableau de bord des événements s'affiche:

  2. Filtrez le tableau de bord "Événements" selon les critères suivants:

    • Environnement
    • Région
    • Période
  3. Sélectionnez une ligne dans le tableau de bord des événements pour afficher le keystore contenant le certificat arrivant à expiration examiner l'alerte plus en détail. Depuis la page Keystore, vous pouvez importer un nouveau certificat et supprimer le arrivant à expiration.

Utiliser les API d'alerte avec les alertes d'expiration

La plupart des API que vous utilisez pour créer et gérer les alertes d'expiration sont les mêmes que celles que vous utilisez avec des alertes fixes. Les API d'alerte suivantes fonctionnent de la même manière pour les alertes corrigées et celles qui arrivent à expiration:

Toutefois, certaines API disposent de propriétés supplémentaires qui permettent de gérer les alertes d'anomalies, parmi lesquelles :

Créer ou mettre à jour une alerte d'expiration

Utiliser les mêmes API pour créer ou mettre à jour une alerte d'expiration comme vous le faites actuellement pour une alerte fixe. Corps de l'appel d'API pour créer ou mettre à jour Une alerte d'expiration est identique à une alerte fixe, avec les modifications suivantes:

  • Vous devez ajouter les propriétés suivantes pour indiquer que l'alerte est une alerte d'expiration:

    "alertType": "cert"
    "alertSubType": "certfixed"

    Les valeurs par défaut de ces propriétés sont les suivantes :

    "alertType": "runtime"
    "alertSubType": "fixed"
  • Dans le tableau conditions :

    • La propriété metrics n'accepte que les valeurs de expiration.
    • Utilisez la propriété gracePeriodSeconds pour spécifier la période d'expiration du certificat en secondes, avec une durée maximale de 30 jours.
    • Les propriétés threshold, durationSeconds et comparator ne sont pas acceptées.
  • Dans l'élément dimensions du tableau conditions: <ph type="x-smartling-placeholder">
      </ph>
    • Vous devez définir la valeur de la propriété certificate sur ANY.
    • Vous devez définir la valeur de la propriété proxy sur ALL.
    • Les éléments statusCode, developerApp, collection, faultCodeCategory Les propriétés faultCodeSubCategory et faultCodeName ne sont pas acceptées.
  • La propriété reportEnabled n'est pas compatible avec les alertes d'expiration.

L'exemple d'appel d'API suivant crée une alerte d'expiration qui est déclenchée lorsque n'importe quelle requête dans le champ de production expire dans les 30 prochains jours. Une notification est envoyée à l'adresse e-mail spécifiée lorsque l'alerte se déclenche:

curl 'https://apimonitoring.enterprise.apigee.com/alerts' \
 -X POST \
 -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -d '{
  "organization":"myorg",
  "name":"My Cert Expiry Alert",
  "description":"My Cert Expiry Alert",
  "environment":"prod",
  "enabled":true,
  "alertType": "cert",
  "alertSubType": "certfixed",
  "conditions":[
  {
    "description":"My Cert Expiry Alert",
    "dimensions":{
      "org":"myorg",
      "env":"prod",
      "proxy":"ALL",
      "certificate": "ANY"
    },
    "metric":"expiration",
    "gracePeriodSeconds": 2592000
  }],
  "notifications":[{
    "channel":"email",
    "destination":"ops@acme.com"
  }],
  "playbook":"http://acme.com/pb.html",
  "throttleIntervalSeconds":3600,
  "reportEnabled":false
}'

Définissez $ACCESS_TOKEN sur votre jeton d'accès OAuth 2.0, comme décrit dans la section Obtenir un jeton d'accès OAuth 2.0. Pour en savoir plus sur les options cURL utilisées dans cet exemple, consultez la section Utiliser cURL.

Recevoir des alertes d'expiration

Par défaut, l'API Get Alerts renvoie des informations sur toutes les alertes définies, à la fois fixes et arrivées à expiration. Cette API utilise désormais des paramètres de requête pour vous permettre de filtrer les résultats :

  • enabled : si true spécifie de ne renvoyer que les alertes activées. La valeur par défaut est false.
  • alertType : indique le type d'alerte à renvoyer. Les valeurs autorisées sont runtime (valeur par défaut) et cert.
  • alertSubType : indique le sous-type d'alerte à renvoyer. La valeur par défaut n'est pas définie, ce qui implique le renvoi de tous les sous-types d'alerte. Spécifiez certfixed pour renvoyer les alertes d'expiration.

Par exemple, utilisez l'appel d'API suivant pour ne renvoyer que les alertes d'activation pour l'organisation nommée myorg:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'

L'appel suivant renvoie uniquement des alertes d'expiration, activées et désactivées:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=cert&alertSubType=certfixed'

Définissez $ACCESS_TOKEN sur votre jeton d'accès OAuth 2.0, comme décrit dans la section Obtenir un jeton d'accès OAuth 2.0. Pour en savoir plus sur les options cURL utilisées dans cet exemple, consultez la section Utiliser cURL.