Skip to content

Commit f978e0f

Browse files
committed
TacitRed-Defender-ThreatIntelligence v3.0.2: Fix InvalidTemplate on hyphenated workspace names
- Remove non-standard 'workspace' parameter from FunctionApp inner template - Change SENTINEL_WORKSPACE_ID to use variables('workspace-name') instead of parameters('workspace'), matching the standard Content Hub pattern - Fixes deployment error where hyphenated workspace names (e.g. Sentinel-Defender-Prod-7) are parsed as arithmetic expressions in resourceId() calls - Bump version to 3.0.2 - Preserve 3.0.0 and 3.0.1 zip packages
1 parent 99b3040 commit f978e0f

File tree

4 files changed

+7
-12
lines changed

4 files changed

+7
-12
lines changed

Solutions/TacitRed-Defender-ThreatIntelligence/Data/Solution_TacitRedDefenderThreatIntelligence.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
],
1010
"Metadata": "SolutionMetadata.json",
1111
"BasePath": "C:\\GitHub\\Azure-Sentinel\\Solutions\\TacitRed-Defender-ThreatIntelligence",
12-
"Version": "3.0.1",
12+
"Version": "3.0.2",
1313
"TemplateSpec": true,
1414
"Is1Pconnector": false
1515
}
6.54 KB
Binary file not shown.

Solutions/TacitRed-Defender-ThreatIntelligence/Package/mainTemplate.json

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
"email": "support@data443.com",
3434
"_email": "[variables('email')]",
3535
"_solutionName": "TacitRed-Defender-ThreatIntelligence",
36-
"_solutionVersion": "3.0.1",
36+
"_solutionVersion": "3.0.2",
3737
"solutionId": "data443riskmitigationinc1761580347231.azure-sentinel-solution-tacitred-defender-ti",
3838
"_solutionId": "[variables('solutionId')]",
3939
"TacitRedDefenderTI_FunctionApp": "TacitRedDefenderTI_FunctionApp",
@@ -65,7 +65,7 @@
6565
"[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]"
6666
],
6767
"properties": {
68-
"description": "TacitRedDefenderTI_FunctionApp Playbook with template version 3.0.1",
68+
"description": "TacitRedDefenderTI_FunctionApp Playbook with template version 3.0.2",
6969
"mainTemplate": {
7070
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
7171
"contentVersion": "[variables('playbookVersion1')]",
@@ -83,12 +83,6 @@
8383
"description": "URL to the Function App code zip file"
8484
},
8585
"defaultValue": "https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/TacitRed-Defender-ThreatIntelligence/Playbooks/TacitRedDefenderTI_FunctionApp/functionCode.zip"
86-
},
87-
"workspace": {
88-
"type": "string",
89-
"metadata": {
90-
"description": "Workspace name for Log Analytics where Microsoft Sentinel is setup"
91-
}
9286
}
9387
},
9488
"variables": {
@@ -195,7 +189,7 @@
195189
},
196190
{
197191
"name": "SENTINEL_WORKSPACE_ID",
198-
"value": "[[resourceId('microsoft.OperationalInsights/Workspaces', parameters('workspace'))]"
192+
"value": "[[resourceId('microsoft.OperationalInsights/Workspaces', variables('workspace-name'))]"
199193
},
200194
{
201195
"name": "APPINSIGHTS_INSTRUMENTATIONKEY",
@@ -283,7 +277,7 @@
283277
"[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]"
284278
],
285279
"properties": {
286-
"description": "TacitRedToDefenderTI Playbook with template version 3.0.1",
280+
"description": "TacitRedToDefenderTI Playbook with template version 3.0.2",
287281
"mainTemplate": {
288282
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
289283
"contentVersion": "[variables('playbookVersion2')]",
@@ -492,7 +486,7 @@
492486
"apiVersion": "2023-04-01-preview",
493487
"location": "[parameters('workspace-location')]",
494488
"properties": {
495-
"version": "3.0.1",
489+
"version": "3.0.2",
496490
"kind": "Solution",
497491
"contentSchemaVersion": "3.0.0",
498492
"displayName": "TacitRed-Defender-ThreatIntelligence",

Solutions/TacitRed-Defender-ThreatIntelligence/ReleaseNotes.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@
22

33
| **Version** | **Date Modified (DD-MM-YYYY)** | **Change History** |
44
|-------------|--------------------------------|--------------------|
5+
| 3.0.2 | 18-02-2026 | Fixed InvalidTemplate error when deploying playbooks on workspaces with hyphenated names (e.g. `Sentinel-Defender-Prod-7`). Removed non-standard `workspace` parameter from Function App inner template and aligned SENTINEL_WORKSPACE_ID to use `variables('workspace-name')`, matching the standard Content Hub pattern used by 530+ Sentinel solutions. |
56
| 3.0.1 | 11-02-2026 | Fixed deployment failure: Restored functionCode.zip package removed in prior commit. Removed workspace-scoped roleAssignments from Function App template to resolve InvalidTemplate error during Content Hub deployment. |
67
| 3.0.0 | 09-12-2025 | Initial release of TacitRed Defender Threat Intelligence solution with Azure Function and Logic App playbook for syncing TacitRed compromised credentials to Microsoft Defender Threat Intelligence. |

0 commit comments

Comments
 (0)