Vous consultez la documentation Apigee Edge.
Accédez à la
documentation**Apigee X**. info
Utilisez une alerte d'expiration TLS pour générer une notification lorsqu'un 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 un lien chiffré entre un serveur Web et un client Web, tel qu'un navigateur ou une application. Un lien chiffré garantit que toutes les données qui transitent entre le serveur et le client restent privées.
Un certificat TLS est un fichier numérique qui identifie une entité dans une transaction TLS. Edge utilise un certificat TLS pour configurer TLS pour les éléments suivants :
- Accédez à vos proxys d'API par des clients API. Utilisez des hôtes virtuels pour configurer TLS.
- Accédez à vos services de backend par Edge. Utilisez des points de terminaison cibles et des serveurs cibles sur le processeur de messages Edge pour configurer TLS.
Un certificat TLS contient une date d'expiration. Si un certificat TLS expire, la connexion TLS échoue jusqu'à ce que vous le mettiez à jour. 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 qu'un certificat expire et que les requêtes adressées à votre API échouent, utilisez une 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 ne subissent aucune interruption de service.
Lorsque vous configurez l'alerte, ne spécifiez pas de certificat individuel, mais un environnement spécifique. L'alerte est déclenchée lorsqu'un certificat déployé doit expirer dans la plage de temps spécifiée.
Vous pouvez définir l'alerte d'expiration pour qu'elle se produise :
- 1 jour avant l'expiration d'un certificat
- 14 jours avant l'expiration d'un certificat
- 30 jours avant l'expiration d'un certificat
Ajouter des alertes et des notifications d'expiration
Pour ajouter des alertes et des notifications d'expiration :- Cliquez sur Analyser > Règles d'alerte dans l'interface utilisateur Edge.
- Cliquez sur +Alerte.
- 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 vous sera utile. Le nom ne peut pas dépasser 128 caractères. Description Description de l'alerte. Type d'alerte Sélectionnez Expiration TLS. Pour en savoir plus, consultez À propos des types d'alerte. Environnement Sélectionnez l'environnement dans la liste déroulante. État Activez ou désactivez l'alerte. - Définissez le seuil et la dimension de la condition qui déclenchera l'alerte.
Champ de condition Description Seuil Configurez la plage de temps pour les certificats expirés. Vous pouvez choisir de générer une alerte lorsqu'un certificat expirera dans :
- 1 jour
- 14 jours
- 30 jours
Dimension La dimension est définie sur la valeur Tous les certificats TLS correspondant à n'importe quel certificat TLS dans l'environnement. - 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é : - 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, telle que
https://apigee.com/test-webhookRemarque : Vous ne pouvez spécifier qu'une seule destination par notification. Pour spécifier plusieurs destinations pour un même type de chaîne, ajoutez des notifications supplémentaires.
- E-mail : adresse e-mail, telle que
- Pour ajouter des notifications supplémentaires, répétez l'étape précédente.
- Si vous avez ajouté une notification, définissez les champs suivants :
Champ Description Playbook (Facultatif) Champ de texte libre permettant de 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 ou la page de votre communauté sur laquelle vous référencez les 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. Limitation Fréquence d'envoi des notifications. Sélectionnez une valeur dans la liste déroulante. - Cliquez sur Enregistrer.
Afficher les alertes dans le tableau de bord "Événements"
Lorsque Edge détecte une condition d'alerte, il consigne automatiquement cette condition dans le tableau de bord Événements de l'interface utilisateur Edge. La liste des événements affichés dans le tableau de bord "Événements" inclut toutes les alertes, qu'elles soient fixes ou liées à un certificat.
Pour afficher une alerte :
Cliquez sur Analyser > Événements dans l'interface utilisateur Edge. Le nouveau tableau de bord "Events" (Événements) s'affiche :
Filtrez le tableau de bord des événements selon :
- Environnement
- Région
- Période
- Sélectionnez une ligne dans le tableau de bord "Événements" pour afficher le Keystore contenant le certificat expirant afin d' examiner plus en détail l'alerte. Sur la page "Keystore", vous pouvez importer un nouveau certificat et supprimer le certificat expirant.
Utiliser les API d'alerte avec les alertes d'expiration
La plupart des API que vous utilisez pour créer et gérer des alertes d'expiration sont identiques à celles que vous utilisez avec les alertes fixes. Les API d'alerte suivantes fonctionnent de la même manière pour les alertes fixes et d'expiration :
- Get an Alert (Obtenir une alerte) : obtenez une définition d'alerte fixe ou d'anomalie.
- Get Alert History (Obtenir l'historique des alertes) : permet d'obtenir des statistiques sur l'historique des alertes.
- Delete an Alert (Supprimer une alerte) : supprimez une définition d'alerte fixe ou d'anomalie.
- Supprimer une alerte (Obtenir une instance d'alerte) : obtenez des informations sur une alerte déclenchée.
- Get Alert Count (Obtenir le nombre d'alertes) : obtenez le nombre total d'alertes.
Toutefois, certaines API disposent de propriétés supplémentaires qui permettent de gérer les alertes d'anomalies, parmi lesquelles :
- Recevoir des alertes : affichez toutes les alertes, y compris les alertes fixes et d'anomalies.
- Créer une alerte : créez une alerte fixe ou d'anomalie.
- Update an Alert (Mettre à jour une alerte) : mettez à jour une définition d'alerte fixe ou d'anomalie.
Créer ou mettre à jour une alerte d'expiration
Utilisez les mêmes API pour créer ou mettre à jour une alerte d'expiration, comme vous le faites actuellement pour une alerte fixe. Le corps de l'appel d'API pour créer ou mettre à jour une alerte d'expiration est identique à celui utilisé pour une alerte fixe, avec les modifications suivantes :
Vous devez ajouter les nouvelles propriétés suivantes pour spécifier 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é
metricsn'accepte que les valeursexpiration. - Utilisez la propriété
gracePeriodSecondspour spécifier la plage de temps de l'expiration du certificat en secondes, pour une durée maximale de 30 jours. - Les propriétés
threshold,durationSecondsetcomparatorne sont pas acceptées.
- La propriété
- Dans l'élément
dimensionsdu tableauconditions:- Vous devez définir la valeur de la propriété
certificatesurANY. - Vous devez définir la valeur de la propriété
proxysurALL. - Les propriétés
statusCode,developerApp,collection,faultCodeCategory,faultCodeSubCategoryetfaultCodeNamene sont pas acceptées.
- Vous devez définir la valeur de la propriété
- La propriété
reportEnabledn'est pas acceptée pour les alertes d'expiration.
L'exemple d'appel d'API suivant crée une alerte d'expiration qui se déclenche lorsqu'un certificat dans l'environnement de production expirera dans les 30 prochains jours. Une notification est envoyée à l'adresse e-mail spécifiée lorsque l'alerte est déclenchée :
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
Obtenir un jeton d'accès OAuth 2.0.
Pour plus d'informations sur les options cURL utilisées dans cet exemple, consultez la page Utiliser cURL.
Recevoir des alertes d'expiration
Par défaut, l'API Recevoir des alertes renvoie des informations sur toutes les alertes définies, qu'elles soient fixes ou d'expiration. Cette API utilise désormais des paramètres de requête pour vous permettre de filtrer les résultats :
enabled: sitruespécifie de ne renvoyer que les alertes activées. La valeur par défaut estfalse.alertType: indique le type d'alerte à renvoyer. Les valeurs autorisées sontruntime(par défaut) etcert.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écifiezcertfixedpour renvoyer les alertes d'expiration.
Par exemple, utilisez l'appel d'API suivant pour renvoyer uniquement les alertes activées 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 ne renvoie que les alertes d'expiration, qu'elles soient activées ou 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
Obtenir un jeton d'accès OAuth 2.0.
Pour plus d'informations sur les options cURL utilisées dans cet exemple, consultez la page Utiliser cURL.