API Incidents

Cette page s'applique à Apigee et à Apigee hybrid.

Consultez la documentation d'Apigee Edge.

L'API Incidents vous permet d'afficher des statistiques sur les incidents de sécurité liés à la détection d'abus.

Paramètres dans des exemples d'appels d'API

Les sections suivantes présentent des exemples d'appels d'API qui utilisent l'API Incidents. Les appels d'API contiennent les paramètres de variable suivants :

  • ORG est votre organisation.
  • ENV est l'environnement dans lequel vous souhaitez calculer les scores.
  • INCIDENT_UUID est l'UUID de l'incident.
  • $TOKEN est la variable d'environnement d'un jeton d'accès OAuth.

Répertorier les incidents et obtenir leurs détails

Les exemples suivants montrent comment répertorier les incidents et obtenir leurs détails.

Exemple : Répertorier tous les incidents pour un environnement

Pour répertorier tous les incidents d'un environnement, envoyez la requête suivante :

curl "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityIncidents" \
       -H 'Content-type: application/json' \
       -H "Authorization: Bearer $TOKEN"

Consultez la page de référence SecurityIncident pour obtenir la description de la requête et de la réponse.

Exemple : obtenir les détails d'un incident spécifique

Pour obtenir les détails d'un incident spécifique, envoyez une requête de ce type :

curl "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityIncidents/INCIDENT_UUID" \
       -H 'Content-type: application/json' \
       -H "Authorization: Bearer $TOKEN"

INCIDENT_UUID : UUID de l'incident, qui est renvoyé dans le champ name par l'appel affiché dans la section Exemple : Répertorier tous les incidents pour un environnement.

Consultez la page de référence SecurityIncident pour obtenir la description de la requête et de la réponse.

Archiver des incidents

Pour vous aider à distinguer les incidents que vous avez déjà examinés des autres, vous pouvez archiver ceux qui ne vous intéressent plus. L'archivage des incidents a les effets suivants :

  • Dans l'interface utilisateur d'Apigee, les incidents archivés ne sont pas affichés dans la liste Environnement > Incidents (à condition que Inclure les incidents archivés ne soit pas sélectionné).
  • Dans l'API, lorsque vous effectuez un appel pour répertorier tous les incidents, les incidents archivés comportent la ligne suivante :
    "observability": "ARCHIVED"

    Vous pouvez utiliser le champ "observability" pour filtrer les incidents archivés dans une liste d'incidents.

    Les valeurs possibles pour "observability" sont les suivantes :

    • ACTIVE
    • ARCHIVED

Les incidents archivés ne sont pas supprimés. Vous pouvez toujours les annuler, ce qui fait passer la valeur de l'incident "observability" à ACTIVE.

Les exemples suivants montrent comment archiver et désarchiver des incidents.

Archiver un incident

Pour archiver un incident, envoyez une requête de ce type :

curl "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityIncidents/INCIDENT_UUID?updateMask=observability" \
       -X POST \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json" \
       -d '{"name": "organizations/ORG/environments/ENV/securityIncidents/INCIDENT_UUID",
            "observability": "ARCHIVED"}' \
       -X PATCH

La réponse renvoyée est semblable à celle-ci :

{
    "name": "INCIDENT_UUID",
    "displayName": "Multi type attack from US",
    "firstDetectedTime": "2023-04-04T17:00:00Z",
    "lastDetectedTime": "2023-09-12T03:10:00Z",
    "detectionTypes": [
      "Advanced Anomaly Detection",
      "OAuth Abuser"
    ],
    "trafficCount": "4052130",
    "containsMlAbuses": false,
    "riskLevel": "MODERATE",
    "observability": "ARCHIVED"
}

La dernière ligne, "observability": "ARCHIVED", indique que l'incident a été archivé.

Désarchiver un incident

Pour désarchiver incident, utilisez le même appel que dans la section précédente, mais avec la ligne suivante :

"observability": "ACTIVE"

Filtrer les incidents par état d'archivage

L'exemple suivant filtre les résultats d'un appel pour répertorier les incidents afin que seuls les incidents actifs soient renvoyés.

curl "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityIncidents?filter=observability=\"ACTIVE\"" \
       -X POST \
       -H "Authorization: Bearer $TOKEN" \
       -H "Content-Type: application/json"

La réponse renvoyée est semblable à celle-ci :

{
  "securityIncidents": [
    {
      "name": "1850fbb9-53a9-44e7-8893-f0b0c987d55e",
      "displayName": "Multi type attack from US",
      "firstDetectedTime": "2023-04-04T17:00:00Z",
      "lastDetectedTime": "2023-09-12T03:10:00Z",
      "detectionTypes": [
        "Advanced Anomaly Detection",
        "OAuth Abuser"
      ],
      "trafficCount": "4052130",
      "containsMlAbuses": false,
      "riskLevel": "MODERATE",
      "observability": "ACTIVE"
    }
  ],
  "nextPageToken": "ClAKAjUwEj1saXN0U2VjdXJpdHlJbmNpZGVudC9hcGlzZWN1cml0eS1tbHRlc3QtYXV0b3B1c2gvZGVmYXVsdC1wcm9kGgsI_KW1qQYQ6fqSDg"
}

Archiver ou désarchiver plusieurs incidents de sécurité

Pour archiver ou désarchiver plusieurs incidents de sécurité, saisissez une commande semblable à celle-ci :

curl "https://apigee.googleapis.com/v1/organizations/ORG/environments/ENV/securityIncidents:batchUpdate" \
       -X POST \
       -d '{"requests": 
        [{"security_incident": {"name": "organizations/apisecurity-mltest-autopush/environments/default-prod/securityIncidents/INCIDENT_UUID1", "observability": "ARCHIVE"}, "update_mask": "observability"}, 
         {"security_incident": {"name": "organizations/apisecurity-mltest-autopush/environments/default-prod/securityIncidents/INCIDENT_UUID2", "observability": "ARCHIVE"}, "update_mask": "observability"}]}'

Limites de l'API Security Incidents

L'API Security Incident présente les limites suivantes :

  • Les incidents sont stockés pendant 14 mois au maximum.
  • ListIncidents n'accepte les filtres que pour les éléments suivants :
    • first_detected_time
    • last_detected_time
    • apiproxy
  • Lorsque vous activez l'API Advanced pour une organisation pour la première fois ou que vous la réactivez ultérieurement, il existe un délai pendant lequel les événements sont regroupés en incidents. Ensuite, les incidents sont recalculés régulièrement.