Réponses d’erreur microsoft Graph API de sécurité
Espace de noms: microsoft.graph
Les erreurs dans le API de sécurité Microsoft Graph sont retournées à l’aide du code de status de contenu partiel HTTP 206 standard et sont remises via un en-tête d’avertissement.
Erreurs
Le API de sécurité Microsoft Graph est un service fédéré qui reçoit plusieurs réponses de tous les fournisseurs de données. Lorsqu’une erreur HTTP est reçue par le API de sécurité Microsoft Graph, il renvoie un en-tête d’avertissement au format suivant :
{Vendor}/{Provider}/{StatusCode}/{LatencyInMs}
Cet en-tête d’avertissement n’est renvoyé aux clients que lorsque l’un des fournisseurs de données retourne un code d’erreur autre que 2xx ou 404. Par exemple :
- HttpStatusCode.Forbidden (403) peut être retourné si l’accès à la ressource n’est pas accordé.
- Si un fournisseur expire, HttpStatusCode.GatewayTimeout (504) est retourné dans l’en-tête d’avertissement.
- Si une erreur de fournisseur interne se produit, HttpStatusCode.InternalServerError (500) est utilisé dans l’en-tête d’avertissement.
Si un fournisseur de données retourne 2xx ou 404, il n’est pas affiché dans l’en-tête d’avertissement, car ces codes sont censés réussir ou lorsque les données sont introuvables respectivement. Dans un système fédéré, un 404 introuvable est attendu autant de fois que les données ne sont connues que d’un ou de plusieurs fournisseurs, mais pas de tous.
Exemple
Un utilisateur demande security/alerts/{alert_id}
.
Provider 1: 404 (provider does not have a record of this alert ID)
Provider 2: 504 (provider timed out)
Provider 3: 200 (success)
Provider 4: 403 (customer has not licensed this provider)
Étant donné que les conditions 404 et 200 sont toutes deux attendues, l’en-tête d’avertissement contient les éléments suivants :
Warning : 199 - "{Vendor2}/{Provider 2}/504/10000", (usual timeout limit is set at 10 seconds)
199 - "{Vendor4}/{Provider 4}/403/10" (Provider 4 rejected the request in 10 ms)
Note: Chaque en-tête HTTP étant une collection de sous-éléments, les utilisateurs peuvent énumérer l’en-tête Avertissement et case activée tous les éléments.
Contraintes
Le $top
paramètre de requête OData a une limite de 1 000 alertes. Nous vous recommandons d’inclure uniquement $top
et non $skip
dans la première requête obtenir. Vous pouvez utiliser @odata.nextLink
pour la pagination. Si vous devez utiliser $skip
, la limite est de 500 alertes. Par exemple, /security/alerts?$top=10&$skip=500
retourne un 200 OK
code de réponse, mais /security/alerts?$top=10&$skip=501
retourne un 400 Bad Request
code de réponse. Pour plus d’informations, voir Réponses d’erreur de l’API Microsoft Graph Security.
Une solution de contournement pour cette limite consiste à utiliser le $filter
paramètre de requête OData avec le eventDateTime
de l’entité d’alerte de l’API de sécurité Microsoft Graph, en utilisant ?$filter=eventDateTime gt {YYYY-MM-DDT00:00:00.000Z}
et en remplaçant la valeur dateTime par la dernière (1500e) alerte. Vous pouvez également définir une plage pour ; eventDateTime
par exemple, alerts ?$filter=eventDateTime gt 2018-11-11 T00 :00 :00.000Z&eventDateTime lt 2018-11-12 T00 :00 :00.000Z
Contenu connexe
Si vous rencontrez des problèmes avec l’autorisation, consultez Autorisation et microsoft Graph API de sécurité.