Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Espaço de nomes: microsoft.graph.security
Importante
As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.
Crie um novo objeto detectionRule .
Permissões
Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.
| Tipo de permissão | Permissões com menos privilégios | Permissões com privilégios superiores |
|---|---|---|
| Delegado (conta corporativa ou de estudante) | CustomDetection.ReadWrite.All | Indisponível. |
| Delegado (conta pessoal da Microsoft) | Sem suporte. | Sem suporte. |
| Application | CustomDetection.ReadWrite.All | Indisponível. |
Importante
Para acesso delegado através de contas escolares ou profissionais, tem de ser atribuída ao utilizador com sessão iniciada uma função que conceda as permissões necessárias para esta operação. As regras de deteção personalizadas utilizam o Microsoft Defender XDR modelo de controlo de acesso baseado em funções (RBAC) unificado. As funções a seguir têm suporte:
- Otimização da deteção (Gerir) – uma permissão RBAC unificada Microsoft Defender XDR que concede a gestão do acesso às deteções no portal do Microsoft Defender, incluindo deteções personalizadas, otimização de alertas e indicadores de ameaças de comprometimento.
- Administrador de Segurança – uma função de Microsoft Entra que concede permissões de gestão em portais e serviços Microsoft Defender.
- Operador de Segurança – uma função de Microsoft Entra. Suficiente para gerir regras de deteção personalizadas apenas quando o controlo de acesso baseado em funções é desativado no Microsoft Defender para Ponto de Extremidade. Se o RBAC estiver configurado, também é necessária a permissão Gerir Definições de Segurança do Defender para Endpoint.
Podem ser necessárias permissões adicionais específicas da carga de trabalho para gerir regras que visam dados de cargas de trabalho específicas do Defender (por exemplo, Defender para Endpoint, Defender para Office 365). Para obter mais informações, veja Permissões necessárias para gerir deteções personalizadas.
Solicitação HTTP
POST /security/rules/detectionRules
Cabeçalhos de solicitação
| Nome | Descrição |
|---|---|
| Autorização | {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-Type | application/json. Obrigatório. |
Corpo da solicitação
No corpo do pedido, forneça uma representação JSON do objeto microsoft.graph.security.detectionRule .
Pode especificar as seguintes propriedades e relações ao criar uma deteçãoRule.
| Propriedade | Tipo | Descrição |
|---|---|---|
| description | Cadeia de caracteres | Uma descrição fornecida pelo utilizador da regra de deteção. Opcional. |
| detectionAction | microsoft.graph.security.detectionAction | As ações executadas quando uma deteção é efetuada por esta regra, incluindo o alerta que é criado e quaisquer ações de resposta automatizadas. Opcional. |
| displayName | Cadeia de caracteres | O nome de exibição da regra. Obrigatório. |
| id | Cadeia de caracteres | O identificador exclusivo fornecido pelo cliente da regra. Obrigatório. |
| isEnabled | Booliano | Depreciado. Em alternativa, utilize status. A isEnabled propriedade será removida deste recurso em 2026-10-01. Opcional. |
| queryCondition | microsoft.graph.security.queryCondition | A consulta de investigação avançada que define a lógica de deteção desta regra. Obrigatório. |
| Cronograma | microsoft.graph.security.ruleSchedule | A agenda de acionamento desta regra. Obrigatório. |
| status | microsoft.graph.security.detectionRuleStatus | A execução atual status da regra. Os valores possíveis são: enabled, disabled, autoDisabled, unknownFutureValue. Obrigatório. |
Resposta
Se for bem-sucedido, este método devolve um 201 Created código de resposta e um objeto microsoft.graph.security.detectionRule no corpo da resposta.
Exemplos
Solicitação
O exemplo a seguir mostra uma solicitação.
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"
}
]
}
]
}
}
}
Resposta
O exemplo a seguir mostra a resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
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"
}
]
}
}
}