Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Espace de noms : microsoft.graph.security
Importante
Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Créez un objet detectionRule .
Cette API est disponible dans les déploiements de cloud national suivants.
| Service global | Gouvernement des États-Unis L4 | Us Government L5 (DOD) | Chine gérée par 21Vianet |
|---|---|---|---|
| ✅ | ❌ | ❌ | ❌ |
Autorisations
Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.
| Type d’autorisation | Autorisations avec privilèges minimum | Autorisations privilégiées plus élevées |
|---|---|---|
| Déléguée (compte professionnel ou scolaire) | CustomDetection.ReadWrite.All | Non disponible. |
| Déléguée (compte Microsoft personnel) | Non prise en charge. | Non prise en charge. |
| Application | CustomDetection.ReadWrite.All | Non disponible. |
Importante
Pour l’accès délégué à l’aide de comptes professionnels ou scolaires, l’utilisateur connecté doit se voir attribuer un rôle qui accorde les autorisations requises pour cette opération. Les règles de détection personnalisées utilisent le modèle de contrôle d’accès en fonction du rôle (RBAC) Microsoft Defender XDR unifié. Les rôles suivants sont pris en charge :
- Réglage de la détection (Gérer) : Microsoft Defender XDR autorisation RBAC unifiée qui accorde un accès géré aux détections dans le portail Microsoft Defender, y compris les détections personnalisées, le réglage des alertes et les indicateurs de menace de compromission.
- Administrateur de la sécurité : rôle Microsoft Entra qui accorde des autorisations de gestion sur Microsoft Defender portails et services.
- Opérateur de sécurité : rôle Microsoft Entra. Suffisant pour gérer les règles de détection personnalisées uniquement lorsque le contrôle d’accès en fonction du rôle est désactivé dans Microsoft Defender pour point de terminaison. Si RBAC est configuré, l’autorisation Gérer les paramètres de sécurité pour Defender pour point de terminaison est également requise.
Des autorisations supplémentaires spécifiques à la charge de travail peuvent être nécessaires pour gérer les règles qui ciblent les données de charges de travail Defender spécifiques (par exemple, Defender pour point de terminaison, Defender pour Office 365). Pour plus d’informations, consultez Autorisations requises pour la gestion des détections personnalisées.
Requête HTTP
POST /security/rules/detectionRules
En-têtes de demande
| Nom | Description |
|---|---|
| Autorisation | Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation. |
| Content-Type | application/json. Obligatoire. |
Corps de la demande
Dans le corps de la demande, fournissez une représentation JSON de l’objet microsoft.graph.security.detectionRule .
Vous pouvez spécifier les propriétés et relations suivantes lors de la création d’une règle detectionRule.
| Propriété | Type | Description |
|---|---|---|
| description | String | Description fournie par l’utilisateur de la règle de détection. Facultatif. |
| detectionAction | microsoft.graph.security.detectionAction | Actions effectuées lorsqu’une détection est effectuée par cette règle, y compris l’alerte créée et toutes les actions de réponse automatisées. Facultatif. |
| displayName | String | Nom d’affichage de la règle. Obligatoire. |
| id | String | Identificateur unique fourni par le client de la règle. Obligatoire. |
| isEnabled | Boolean | Déconseillé. Utilisez status à la place. La isEnabled propriété sera supprimée de cette ressource le 01/10/2026. Facultatif. |
| queryCondition | microsoft.graph.security.queryCondition | Requête de repérage avancée qui définit la logique de détection de cette règle. Obligatoire. |
| planifier | microsoft.graph.security.ruleSchedule | Planification de déclenchement de cette règle. Obligatoire. |
| status | microsoft.graph.security.detectionRuleStatus | Exécution actuelle status de la règle. Les valeurs possibles sont : enabled, disabled, autoDisabled, unknownFutureValue. Obligatoire. |
Réponse
Si elle réussit, cette méthode renvoie un 201 Created code de réponse et un objet microsoft.graph.security.detectionRule dans le corps de la réponse.
Exemples
Demande
L’exemple suivant illustre une demande.
POST https://graph.microsoft.com/beta/security/rules/detectionRules
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.security.detectionRule",
"id": "office-encoded-powershell",
"displayName": "Suspicious encoded PowerShell from Office",
"description": "Detects encoded PowerShell processes launched by Office applications, a common phishing payload pattern.",
"status": "enabled",
"queryCondition": {
"queryText": "DeviceProcessEvents | where InitiatingProcessFileName in~ ('winword.exe','excel.exe','outlook.exe') | where FileName == 'powershell.exe' | where ProcessCommandLine has '-enc'"
},
"schedule": {
"frequency": "PT1H"
},
"detectionAction": {
"alertTemplate": {
"title": "Suspicious encoded PowerShell from Office",
"description": "An Office app launched an encoded PowerShell command, which may indicate phishing-driven code execution.",
"severity": "high",
"recommendedActions": "Investigate the parent Office document, isolate the device, and review the user's recent email activity.",
"entityMappings": {
"accounts": [
{
"nameColumn": "AccountName",
"ntDomainColumn": "AccountDomain",
"sidColumn": "AccountSid"
}
],
"hosts": [
{
"deviceIdColumn": "DeviceId",
"nameColumn": "DeviceName"
}
],
"files": [
{
"nameColumn": "FileName",
"sha1Column": "SHA1",
"sha256Column": "SHA256"
}
]
},
"tactics": [
{
"tactic": "Execution",
"techniques": [
{
"technique": "T1059.001"
}
]
}
]
}
}
}
Réponse
L’exemple suivant illustre la réponse.
Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.
HTTP/1.1 201 Created
Content-Type: application/json
Location: https://graph.microsoft.com/beta/security/rules/detectionRules/office-encoded-powershell
{
"@odata.type": "#microsoft.graph.security.detectionRule",
"id": "office-encoded-powershell",
"displayName": "Suspicious encoded PowerShell from Office",
"description": "Detects encoded PowerShell processes launched by Office applications, a common phishing payload pattern.",
"status": "enabled",
"createdBy": "alice@contoso.com",
"createdDateTime": "2026-05-25T10:15:00Z",
"lastModifiedBy": "alice@contoso.com",
"lastModifiedDateTime": "2026-05-25T10:15:00Z",
"queryCondition": {
"queryText": "DeviceProcessEvents | where InitiatingProcessFileName in~ ('winword.exe','excel.exe','outlook.exe') | where FileName == 'powershell.exe' | where ProcessCommandLine has '-enc'"
},
"schedule": {
"frequency": "PT1H"
},
"detectionAction": {
"alertTemplate": {
"title": "Suspicious encoded PowerShell from Office",
"description": "An Office app launched an encoded PowerShell command, which may indicate phishing-driven code execution.",
"severity": "high",
"recommendedActions": "Investigate the parent Office document, isolate the device, and review the user's recent email activity.",
"entityMappings": {
"accounts": [
{
"nameColumn": "AccountName",
"sidColumn": "AccountSid"
}
]
},
"tactics": [
{
"tactic": "Execution",
"techniques": [
{
"technique": "T1059.001"
}
]
}
]
},
"automatedActions": {
"isolateDevices": [
{
"deviceIdColumn": "DeviceId",
"isolationType": "full"
}
],
"initiateInvestigations": [
{
"deviceIdColumn": "DeviceId"
}
]
}
}
}