|
| 1 | +{ |
| 2 | + "$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#", |
| 3 | + "handler": "Microsoft.Azure.CreateUIDef", |
| 4 | + "version": "0.1.2-preview", |
| 5 | + "parameters": { |
| 6 | + "config": { |
| 7 | + "isWizard": false, |
| 8 | + "basics": { |
| 9 | + "description": "<img src=\"https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Logos/Azure_Sentinel.svg\"width=\"75px\"height=\"75px\">\n\n**Note:** Please refer to the following before installing the solution: \n\n• Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/TacitRed-IOC-CrowdStrike/ReleaseNotes.md)\n\n • There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution, please refer to them before installing.\n\nThe TacitRed CrowdStrike IOC Automation solution provides example playbooks that demonstrate how to consume TacitRed threat intelligence from Microsoft Sentinel and prepare indicators for ingestion into CrowdStrike.\n\n**Playbooks:** 1\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", |
| 10 | + "subscription": { |
| 11 | + "resourceProviders": [ |
| 12 | + "Microsoft.OperationsManagement/solutions", |
| 13 | + "Microsoft.OperationalInsights/workspaces/providers/alertRules", |
| 14 | + "Microsoft.Insights/workbooks", |
| 15 | + "Microsoft.Logic/workflows" |
| 16 | + ] |
| 17 | + }, |
| 18 | + "location": { |
| 19 | + "metadata": { |
| 20 | + "hidden": "Hiding location, we get it from the log analytics workspace" |
| 21 | + }, |
| 22 | + "visible": false |
| 23 | + }, |
| 24 | + "resourceGroup": { |
| 25 | + "allowExisting": true |
| 26 | + } |
| 27 | + } |
| 28 | + }, |
| 29 | + "basics": [ |
| 30 | + { |
| 31 | + "name": "getLAWorkspace", |
| 32 | + "type": "Microsoft.Solutions.ArmApiControl", |
| 33 | + "toolTip": "This filters by workspaces that exist in the Resource Group selected", |
| 34 | + "condition": "[greater(length(resourceGroup().name),0)]", |
| 35 | + "request": { |
| 36 | + "method": "GET", |
| 37 | + "path": "[concat(subscription().id,'/providers/Microsoft.OperationalInsights/workspaces?api-version=2020-08-01')]" |
| 38 | + } |
| 39 | + }, |
| 40 | + { |
| 41 | + "name": "workspace", |
| 42 | + "type": "Microsoft.Common.DropDown", |
| 43 | + "label": "Workspace", |
| 44 | + "placeholder": "Select a workspace", |
| 45 | + "toolTip": "This dropdown will list only workspace that exists in the Resource Group selected", |
| 46 | + "constraints": { |
| 47 | + "allowedValues": "[map(filter(basics('getLAWorkspace').value, (filter) => contains(toLower(filter.id), toLower(resourceGroup().name))), (item) => parse(concat('{\"label\":\"', item.name, '\",\"value\":\"', item.name, '\"}')))]", |
| 48 | + "required": true |
| 49 | + }, |
| 50 | + "visible": true |
| 51 | + } |
| 52 | + ], |
| 53 | + "steps": [ |
| 54 | + { |
| 55 | + "name": "playbooks", |
| 56 | + "label": "Playbooks", |
| 57 | + "subLabel": { |
| 58 | + "preValidation": "Configure the playbooks", |
| 59 | + "postValidation": "Done" |
| 60 | + }, |
| 61 | + "bladeTitle": "Playbooks", |
| 62 | + "elements": [ |
| 63 | + { |
| 64 | + "name": "playbooks-text", |
| 65 | + "type": "Microsoft.Common.TextBlock", |
| 66 | + "options": { |
| 67 | + "text": "This solution installs the Playbook templates to help implement your Security Orchestration, Automation and Response (SOAR) operations. After installing the solution, these will be deployed under Playbook Templates in the Automation blade in Microsoft Sentinel. They can be configured and managed from the Manage solution view in Content Hub." |
| 68 | + } |
| 69 | + }, |
| 70 | + { |
| 71 | + "name": "playbooks-link", |
| 72 | + "type": "Microsoft.Common.TextBlock", |
| 73 | + "options": { |
| 74 | + "link": { |
| 75 | + "label": "Learn more", |
| 76 | + "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-respond-threats-playbook?WT.mc_id=Portal-Microsoft_Azure_CreateUIDef" |
| 77 | + } |
| 78 | + } |
| 79 | + } |
| 80 | + ] |
| 81 | + } |
| 82 | + ], |
| 83 | + "outputs": { |
| 84 | + "workspace-location": "[first(map(filter(basics('getLAWorkspace').value, (filter) => and(contains(toLower(filter.id), toLower(resourceGroup().name)),equals(filter.name,basics('workspace')))), (item) => item.location))]", |
| 85 | + "location": "[location()]", |
| 86 | + "workspace": "[basics('workspace')]" |
| 87 | + } |
| 88 | + } |
| 89 | +} |
0 commit comments