Analytic rule catalog
CTE - License Expiring Soon 30 Days
Back
| Id | ec305a18-2520-443d-9f54-18dea3637a15 |
| Rulename | CTE - License Expiring Soon (30 Days) |
| Description | A paid Cybereinforce license is expiring within 30 days - a reminder to plan renewal before it lapses. Emitted once per license term by the daily tenant health-check job (api/src/functions/tenantHealthChecks.js); re-arms automatically on renewal. Trial licenses do not get this 30-day reminder, only the 7-day critical one below. |
| Severity | Medium |
| Required data connectors | cybereinforce_cte |
| Kind | Scheduled |
| Query frequency | 24h |
| Query period | 2d |
| Trigger threshold | 0 |
| Trigger operator | gt |
| Source Uri | https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cybereinforce/Analytic%20Rules/LicenseExpiringSoon30Days.yaml |
| Version | 1.0.0 |
| Arm template | ec305a18-2520-443d-9f54-18dea3637a15.json |
CybereinforceCTE_CL
| where EventType == "license.expiring_soon"
| extend d = parse_json(Details)
| extend DaysRemaining = toint(d.daysRemaining), EndAt = tostring(d.endAt), Plan = tostring(d.plan), AppName = "Cybereinforce"
| project TimeGenerated, TenantId, DaysRemaining, EndAt, Plan, AppName, Severity, Category, Source
name: CTE - License Expiring Soon (30 Days)
triggerOperator: gt
query: |
CybereinforceCTE_CL
| where EventType == "license.expiring_soon"
| extend d = parse_json(Details)
| extend DaysRemaining = toint(d.daysRemaining), EndAt = tostring(d.endAt), Plan = tostring(d.plan), AppName = "Cybereinforce"
| project TimeGenerated, TenantId, DaysRemaining, EndAt, Plan, AppName, Severity, Category, Source
queryFrequency: 24h
description: |
A paid Cybereinforce license is expiring within 30 days - a reminder to plan renewal before it lapses. Emitted once per license term by the daily tenant health-check job (api/src/functions/tenantHealthChecks.js); re-arms automatically on renewal. Trial licenses do not get this 30-day reminder, only the 7-day critical one below.
id: ec305a18-2520-443d-9f54-18dea3637a15
triggerThreshold: 0
queryPeriod: 2d
version: 1.0.0
kind: Scheduled
relevantTechniques: []
severity: Medium
requiredDataConnectors:
- connectorId: cybereinforce_cte
dataTypes:
- CybereinforceCTE_CL
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cybereinforce/Analytic%20Rules/LicenseExpiringSoon30Days.yaml
tactics: []
entityMappings:
- fieldMappings:
- identifier: Name
columnName: AppName
- identifier: InstanceName
columnName: TenantId
entityType: CloudApplication
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspace": {
"type": "String"
}
},
"resources": [
{
"apiVersion": "2024-01-01-preview",
"id": "[concat(resourceId('Microsoft.OperationalInsights/workspaces/providers', parameters('workspace'), 'Microsoft.SecurityInsights'),'/alertRules/ec305a18-2520-443d-9f54-18dea3637a15')]",
"kind": "Scheduled",
"name": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/ec305a18-2520-443d-9f54-18dea3637a15')]",
"properties": {
"alertRuleTemplateName": "ec305a18-2520-443d-9f54-18dea3637a15",
"customDetails": null,
"description": "A paid Cybereinforce license is expiring within 30 days - a reminder to plan renewal before it lapses. Emitted once per license term by the daily tenant health-check job (api/src/functions/tenantHealthChecks.js); re-arms automatically on renewal. Trial licenses do not get this 30-day reminder, only the 7-day critical one below.\n",
"displayName": "CTE - License Expiring Soon (30 Days)",
"enabled": true,
"entityMappings": [
{
"entityType": "CloudApplication",
"fieldMappings": [
{
"columnName": "AppName",
"identifier": "Name"
},
{
"columnName": "TenantId",
"identifier": "InstanceName"
}
]
}
],
"OriginalUri": "https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cybereinforce/Analytic%20Rules/LicenseExpiringSoon30Days.yaml",
"query": "CybereinforceCTE_CL\n| where EventType == \"license.expiring_soon\"\n| extend d = parse_json(Details)\n| extend DaysRemaining = toint(d.daysRemaining), EndAt = tostring(d.endAt), Plan = tostring(d.plan), AppName = \"Cybereinforce\"\n| project TimeGenerated, TenantId, DaysRemaining, EndAt, Plan, AppName, Severity, Category, Source\n",
"queryFrequency": "PT24H",
"queryPeriod": "P2D",
"severity": "Medium",
"subTechniques": [],
"suppressionDuration": "PT1H",
"suppressionEnabled": false,
"tactics": [],
"techniques": [],
"templateVersion": "1.0.0",
"triggerOperator": "GreaterThan",
"triggerThreshold": 0
},
"type": "Microsoft.OperationalInsights/workspaces/providers/alertRules"
}
]
}