Merge pull request #11429 from illumio-shield/illumio-sentinel-playbook

Illumio sentinel playbook
This commit is contained in:
v-prasadboke 2024-11-28 16:15:14 +05:30 коммит произвёл GitHub
Родитель 4df4cd4e6e dae1e6177d
Коммит 63b7dd4994
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
9 изменённых файлов: 921 добавлений и 1 удалений

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 97 KiB

Просмотреть файл

Просмотреть файл

@ -0,0 +1,545 @@
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"title": "Illumio Get Ven Details Playbook",
"description": "This playbook leverages Illumio workloads API to enrich IP, Hostname and Labels, found in Microsoft Sentinel alerts. <img src=\"https://raw.githubusercontent.com/illumio-shield/Azure-Sentinel/illumio-sentinel-playbook/Solutions/IllumioSaaS/Playbooks/Illumio-Get-Ven-Details/images/illumio-get-ven-details-playbook.png\"/>.",
"prerequisites": [
"To use this playbook, ensure that you have valid API key and secret, org id and pce fqdn. Ensure that you deploy the template with the required context."
],
"postDeployment": [
"After deployment open the playbook in edit mode and configure/authorize all connections and press save. <img src=\"https://raw.githubusercontent.com/illumio-shield/Azure-Sentinel/illumio-sentinel-playbook/Solutions/IllumioSaaS/Playbooks/Illumio-Get-Ven-Details/images/illumio-get-ven-details-playbook.png\"/>"
],
"prerequisitesDeployTemplateFile": "",
"lastUpdateTime": "2024-11-21T00:00:00.000Z",
"entities": [
"ip",
"host"
],
"tags": [ "Enrichment" ],
"support": {
"tier": "Partner"
},
"author": {
"name": "Illumio"
},
"releaseNotes": [
{
"version": "1.0",
"title": "Illumio Get Ven Details",
"notes": [ "Initial version" ]
}
]
},
"parameters": {
"PlaybookName": {
"defaultValue": "Illumio-Ven-Details",
"type": "String",
"metadata": {
"description": "PlayBook Name"
}
},
"DeployersUserName": {
"defaultValue": "<username>@<domain>",
"type": "string"
},
"FunctionAppName": {
"defaultValue": "IllumioVenDetails",
"type": "String",
"metadata": {
"description": "Function app Name"
}
},
"PCE_FQDN": {
"type": "String",
"metadata": {
"description": "FQDN of PCE"
}
},
"PORT": {
"type": "String",
"metadata": {
"description": "Port that PCE connects to, like 443"
}
},
"ORG_ID": {
"type": "String",
"metadata": {
"description": "Customer's org id"
}
},
"API_KEY": {
"type": "String",
"metadata": {
"description": "API key"
}
},
"API_SECRET": {
"type": "String",
"metadata": {
"description": "API secret"
}
}
},
"variables": {
"location": "[resourceGroup().location]",
"hostingPlanName": "[parameters('FunctionAppName')]",
"storageAccountName": "vendetailsstorage",
"functionAppName": "[parameters('FunctionAppName')]",
"applicationInsightsName": "[parameters('FunctionAppName')]",
"pceFQDN": "[parameters('PCE_FQDN')]",
"port": "[parameters('PORT')]",
"orgId": "[parameters('ORG_ID')]",
"apiKey": "[parameters('API_KEY')]",
"apiSecret": "[parameters('API_SECRET')]",
"o365ConnectionName": "[concat('o365-', parameters('PlaybookName'))]",
"sentinelConnectionName": "[concat('azuresentinel-', parameters('PlaybookName'))]"
},
"resources": [
{
"type": "Microsoft.Web/connections",
"apiVersion": "2016-06-01",
"name": "[variables('o365ConnectionName')]",
"location": "[resourceGroup().location]",
"properties": {
"displayName": "[parameters('DeployersUserName')]",
"customParameterValues": {},
"api": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/office365')]"
}
}
},
{
"type": "Microsoft.Web/connections",
"apiVersion": "2016-06-01",
"name": "[variables('sentinelConnectionName')]",
"location": "[resourceGroup().location]",
"properties": {
"displayName": "[parameters('DeployersUserName')]",
"customParameterValues": {},
"api": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/azuresentinel')]"
}
}
},
{
"type": "Microsoft.Web/serverfarms",
"apiVersion": "2020-06-01",
"name": "[variables('hostingPlanName')]",
"location": "[variables('location')]",
"sku": {
"name": "Y1",
"tier": "Dynamic"
},
"properties": {
"name": "[variables('hostingPlanName')]",
"computeMode": "Dynamic"
}
},
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2019-06-01",
"name": "[variables('storageAccountName')]",
"location": "[variables('location')]",
"sku": {
"name": "Standard_LRS",
"tier": "Standard"
},
"kind": "StorageV2",
"properties": {
"accessTier": "Hot",
"minimumTlsVersion": "TLS1_2",
"supportsHttpsTrafficOnly": "true",
"allowBlobPublicAccess": "false",
"allowSharedKeyAccess": "true",
"networkAcls": {
"bypass": "AzureServices",
"defaultAction": "Allow",
"ipRules": []
}
}
},
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[variables('applicationInsightsName')]",
"location": "[resourceGroup().location]",
"tags": {
"[concat('hidden-link:', resourceId('Microsoft.Web/sites', variables('applicationInsightsName')))]": "Resource"
},
"properties": {
"Application_Type": "web"
},
"kind": "web"
},
{
"type": "Microsoft.Web/sites",
"apiVersion": "2020-06-01",
"name": "[variables('functionAppName')]",
"location": "[variables('location')]",
"kind": "functionapp,linux",
"identity": {
"type": "SystemAssigned"
},
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
"[resourceId('Microsoft.Insights/components', variables('applicationInsightsName'))]"
],
"properties": {
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
"siteConfig": {
"appSettings": [
{
"name": "AzureWebJobsStorage",
"value": "[concat('DefaultEndpointsProtocol=https;AccountName=', variables('storageAccountName'), ';EndpointSuffix=', environment().suffixes.storage, ';AccountKey=',listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName')), '2019-06-01').keys[0].value)]"
},
{
"name": "FUNCTIONS_EXTENSION_VERSION",
"value": "~4"
},
{
"name": "FUNCTIONS_WORKER_RUNTIME",
"value": "node"
},
{
"name": "WEBSITE_NODE_DEFAULT_VERSION",
"value": "~20"
},
{
"name": "APPINSIGHTS_INSTRUMENTATIONKEY",
"value": "[reference(resourceId('microsoft.insights/components', variables('applicationInsightsName')), '2020-02-02-preview').InstrumentationKey]"
},
{
"name": "WEBSITE_RUN_FROM_PACKAGE",
"value": "https://raw.githubusercontent.com/illumio-shield/Azure-Sentinel/illumio-sentinel-playbook/Solutions/IllumioSaaS/Playbooks/Illumio-Get-Ven-Details/illumio-ven-details.zip"
},
{
"name": "PCE_FQDN",
"value": "[variables('pceFQDN')]"
},
{
"name": "PORT",
"value": "[variables('port')]"
},
{
"name": "ORG_ID",
"value": "[variables('orgId')]"
},
{
"name": "API_KEY",
"value": "[variables('apiKey')]"
},
{
"name": "API_SECRET",
"value": "[variables('apiSecret')]"
}
]
},
"cors": {
"allowedOrigins": [
"https://functions.azure.com",
"https://functions-staging.azure.com",
"https://functions-next.azure.com"
],
"supportCredentials": false
}
}
},
{
"type": "Microsoft.Logic/workflows",
"apiVersion": "2017-07-01",
"location": "[variables('location')]",
"name": "[parameters('PlaybookName')]",
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
"[resourceId('Microsoft.Insights/components', variables('applicationInsightsName'))]",
"[resourceId('Microsoft.Web/sites', variables('functionAppName'))]",
"[resourceId('Microsoft.Web/connections', variables('o365ConnectionName'))]"
],
"properties": {
"state": "Enabled",
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
}
},
"triggers": {
"Microsoft_Sentinel_alert": {
"type": "ApiConnectionWebhook",
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['azuresentinel']['connectionId']"
}
},
"body": {
"callback_url": "@listCallbackUrl()"
},
"path": "/subscribe"
}
}
},
"actions": {
"IllumioVenDetails-fetchVenDetails": {
"type": "Function",
"inputs": {
"body": "@triggerBody()",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/fetchVenDetails')]"
}
},
"runAfter": {
}
},
"Initialize_variable": {
"runAfter": {
"IllumioVenDetails-fetchVenDetails": [
"Succeeded"
]
},
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "varStyle",
"type": "object",
"value": {
"cellStyle": "style=\"font-family: Calibri; padding: 5px; border: 1px solid black;\"",
"headerStyle": "style=\"font-family: Helvetica; padding: 5px; border: 1px solid black;\"",
"numcellStyle": "style=\"font-family: Calibri; padding: 5px; border: 1px solid black;text-align: center;\"",
"rowStyleHighValues": "style=\"font-size:110%;background-color:#b32400; padding: 5px; border: 1px solid black;text-align: center;\"",
"rowStyleInfoValues": "style=\"background-color:#a6a6a6; padding: 5px; border: 1px solid black;text-align: center;\"",
"rowStyleLowValues": "style=\"background-color:#ffcc00; padding: 5px; border: 1px solid black;text-align: center;\"",
"rowStyleMedValues": "style=\"background-color:#ff6600; padding: 5px; border: 1px solid black;text-align: center;\"",
"tableStyle": "style=\"border-collapse: collapse;\""
}
}
]
}
},
"Initialize_variable_1": {
"runAfter": {
"Initialize_variable": [
"Succeeded"
]
},
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "varHTMLTable",
"type": "string",
"value": "<table @{variables('varStyle').tableStyle}>\n <tr>\n <th @{variables('varStyle').headerStyle}>Incident Number</th>\n <th @{variables('varStyle').headerStyle}>Created Time</th>\n <th @{variables('varStyle').headerStyle}>Title</th>\n <th @{variables('varStyle').headerStyle}>Ven Details</th>\n <th @{variables('varStyle').headerStyle}>Description</th>\n <th @{variables('varStyle').headerStyle}>Incident URL</th>\n </tr>"
}
]
}
},
"Initialize_variable_2": {
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "varSeverityColour",
"type": "string",
"value": "@triggerBody()?['Severity']"
}
]
},
"runAfter": {
"Initialize_variable_3": [
"Succeeded"
]
}
},
"Parse_JSON": {
"runAfter": {
"Initialize_variable_2": [
"Succeeded"
]
},
"type": "ParseJson",
"inputs": {
"content": "@body('IllumioVenDetails-fetchVenDetails')",
"schema": {
"type": "object",
"properties": {
"response": {
"type": "array",
"items": {
"type": "object",
"properties": {
"public_ip": {
"type": [
"string",
"null"
]
},
"hostname": {
"type": [
"string",
"null"
]
},
"labels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"href": {
"type": "string"
},
"key": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"href",
"key",
"value"
]
}
}
},
"required": [
"public_ip",
"hostname",
"labels"
]
}
}
}
}
}
},
"For_each": {
"type": "Foreach",
"foreach": "@body('Parse_JSON')?['response']",
"actions": {
"Append_to_string_variable": {
"type": "AppendToStringVariable",
"inputs": {
"name": "EntityTable",
"value": "<tr>\n <td @{variables('varStyle').cellStyle}>@{item()?['public_ip']}</td>\n <td @{variables('varStyle').cellStyle}>@{item()?['hostname']}</td> \n <td @{variables('varSeverityColour')}>@{item()?['labels']}</td> \n</tr>"
}
}
},
"runAfter": {
"Parse_JSON": [
"Succeeded"
]
}
},
"Append_to_string_variable_1": {
"type": "AppendToStringVariable",
"inputs": {
"name": "EntityTable",
"value": "</table>"
},
"runAfter": {
"Append_to_string_variable_2": [
"Succeeded"
]
}
},
"Condition": {
"type": "If",
"expression": {
"and": [
{
"greater": [
"@length(body('Parse_JSON')?['response'])",
0
]
}
]
},
"actions": {
"Send_an_email_(V2)": {
"type": "ApiConnection",
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['office365']['connectionId']"
}
},
"method": "post",
"body": {
"To": "[parameters('DeployersUserName')]",
"Subject": "Test Alert details",
"Body": "<p class=\"editor-paragraph\">In the following, is more information, about the new Azure Sentinel incident:</p><br><p class=\"editor-paragraph\">@{variables('varHTMLTable')}</p><br><p class=\"editor-paragraph\">Illumio</p>",
"Importance": "Normal"
},
"path": "/v2/Mail"
}
}
},
"else": {
"actions": {}
},
"runAfter": {
"Append_to_string_variable_1": [
"Succeeded"
]
}
},
"Initialize_variable_3": {
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "EntityTable",
"type": "string",
"value": "<table @{variables('varStyle').tableStyle}>\n <tr>\n <th @{variables('varStyle').headerStyle}>IP Address</th>\n <th @{variables('varStyle').headerStyle}>Hostname</th>\n <th @{variables('varStyle').headerStyle}>Labels</th>\n </tr>"
}
]
},
"runAfter": {
"Initialize_variable_1": [
"Succeeded"
]
}
},
"Append_to_string_variable_2": {
"type": "AppendToStringVariable",
"inputs": {
"name": "varHTMLTable",
"value": "</table>"
},
"runAfter": {
"For_each": [
"Succeeded"
]
}
}
},
"outputs": {}
},
"parameters": {
"$connections": {
"value": {
"azuresentinel": {
"connectionId": "[resourceId('Microsoft.Web/connections', variables('sentinelConnectionName'))]",
"connectionName": "[variables('sentinelConnectionName')]",
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/azuresentinel')]"
},
"office365": {
"connectionId": "[resourceId('Microsoft.Web/connections', variables('o365ConnectionName'))]",
"connectionName": "[variables('o365ConnectionName')]",
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/office365')]"
}
}
}
}
}
}
]
}

Двоичный файл не отображается.

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 240 KiB

Просмотреть файл

Просмотреть файл

@ -0,0 +1,371 @@
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"title": "Illumio Containment Switch Playbook",
"description": "This playbook leverages Illumio workloads API to contain and isolate a workload based on user inputs. <img src=\"https://raw.githubusercontent.com/illumio-shield/Azure-Sentinel/illumio-sentinel-playbook/Solutions/IllumioSaaS/Playbooks/Illumio-Port-Blocking-Switch/images/illumio-port-blocking-switch-playbook.png\"/>.",
"prerequisites": [
"To use this playbook, ensure that you have valid API key and secret, org id and pce fqdn. Ensure that you deploy the template with the required context."
],
"postDeployment": [
"After deployment open the playbook in edit mode and configure/authorize all connections and press save. <img src=\"https://raw.githubusercontent.com/illumio-shield/Azure-Sentinel/illumio-sentinel-playbook/Solutions/IllumioSaaS/Playbooks/Illumio-Port-Blocking-Switch/images/illumio-port-blocking-switch-playbook.png\"/>"
],
"prerequisitesDeployTemplateFile": "",
"lastUpdateTime": "2024-11-21T00:00:00.000Z",
"entities": [
],
"tags": [ "Remediation" ],
"support": {
"tier": "Partner"
},
"author": {
"name": "Illumio"
},
"releaseNotes": [
{
"version": "1.0",
"title": "Illumio Containment Switch",
"notes": [ "Initial version" ]
}
]
},
"parameters": {
"PlaybookName": {
"defaultValue": "Illumio-Port-Blocking-Switch",
"type": "String",
"metadata": {
"description": "PlayBook Name"
}
},
"FunctionAppName": {
"defaultValue": "IllumioPortBlockingApp",
"type": "String",
"metadata": {
"description": "Function app Name"
}
},
"PCE_FQDN": {
"type": "String",
"metadata": {
"description": "FQDN of PCE"
}
},
"PORT": {
"type": "String",
"metadata": {
"description": "Port that PCE connects to, like 443"
}
},
"ORG_ID": {
"type": "String",
"metadata": {
"description": "Customer's org id"
}
},
"API_KEY": {
"type": "String",
"metadata": {
"description": "API key"
}
},
"API_SECRET": {
"type": "String",
"metadata": {
"description": "API secret"
}
}
},
"variables": {
"location": "[resourceGroup().location]",
"hostingPlanName": "[parameters('FunctionAppName')]",
"storageAccountName": "portblockstorage",
"functionAppName": "[parameters('FunctionAppName')]",
"applicationInsightsName": "[parameters('FunctionAppName')]",
"pceFQDN": "[parameters('PCE_FQDN')]",
"port": "[parameters('PORT')]",
"orgId": "[parameters('ORG_ID')]",
"apiKey": "[parameters('API_KEY')]",
"apiSecret": "[parameters('API_SECRET')]",
"sentinelConnectionName": "[concat('azuresentinel-', parameters('PlaybookName'))]"
},
"resources": [
{
"type": "Microsoft.Web/serverfarms",
"apiVersion": "2020-06-01",
"name": "[variables('hostingPlanName')]",
"location": "[variables('location')]",
"sku": {
"name": "Y1",
"tier": "Dynamic"
},
"properties": {
"name": "[variables('hostingPlanName')]",
"computeMode": "Dynamic"
}
},
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2019-06-01",
"name": "[variables('storageAccountName')]",
"location": "[variables('location')]",
"sku": {
"name": "Standard_LRS",
"tier": "Standard"
},
"kind": "StorageV2",
"properties": {
"accessTier": "Hot",
"minimumTlsVersion": "TLS1_2",
"supportsHttpsTrafficOnly": "true",
"allowBlobPublicAccess": "false",
"allowSharedKeyAccess": "true",
"networkAcls": {
"bypass": "AzureServices",
"defaultAction": "Allow",
"ipRules": []
}
}
},
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[variables('applicationInsightsName')]",
"location": "[resourceGroup().location]",
"tags": {
"[concat('hidden-link:', resourceId('Microsoft.Web/sites', variables('applicationInsightsName')))]": "Resource"
},
"properties": {
"Application_Type": "web"
},
"kind": "web"
},
{
"type": "Microsoft.Web/sites",
"apiVersion": "2020-06-01",
"name": "[variables('functionAppName')]",
"location": "[variables('location')]",
"kind": "functionapp,linux",
"identity": {
"type": "SystemAssigned"
},
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
"[resourceId('Microsoft.Insights/components', variables('applicationInsightsName'))]"
],
"properties": {
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
"siteConfig": {
"appSettings": [
{
"name": "AzureWebJobsStorage",
"value": "[concat('DefaultEndpointsProtocol=https;AccountName=', variables('storageAccountName'), ';EndpointSuffix=', environment().suffixes.storage, ';AccountKey=',listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName')), '2019-06-01').keys[0].value)]"
},
{
"name": "FUNCTIONS_EXTENSION_VERSION",
"value": "~4"
},
{
"name": "FUNCTIONS_WORKER_RUNTIME",
"value": "node"
},
{
"name": "WEBSITE_NODE_DEFAULT_VERSION",
"value": "~20"
},
{
"name": "APPINSIGHTS_INSTRUMENTATIONKEY",
"value": "[reference(resourceId('microsoft.insights/components', variables('applicationInsightsName')), '2020-02-02-preview').InstrumentationKey]"
},
{
"name": "WEBSITE_RUN_FROM_PACKAGE",
"value": "https://raw.githubusercontent.com/illumio-shield/Azure-Sentinel/illumio-sentinel-playbook/Solutions/IllumioSaaS/Playbooks/Illumio-Port-Blocking-Switch/illumio-containment-switch.zip"
},
{
"name": "PCE_FQDN",
"value": "[variables('pceFQDN')]"
},
{
"name": "PORT",
"value": "[variables('port')]"
},
{
"name": "ORG_ID",
"value": "[variables('orgId')]"
},
{
"name": "API_KEY",
"value": "[variables('apiKey')]"
},
{
"name": "API_SECRET",
"value": "[variables('apiSecret')]"
}
]
},
"cors": {
"allowedOrigins": [
"https://functions.azure.com",
"https://functions-staging.azure.com",
"https://functions-next.azure.com"
],
"supportCredentials": false
}
}
},
{
"type": "Microsoft.Logic/workflows",
"apiVersion": "2017-07-01",
"name": "[parameters('PlaybookName')]",
"location": "[variables('location')]",
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
"[resourceId('Microsoft.Insights/components', variables('applicationInsightsName'))]",
"[resourceId('Microsoft.Web/sites', variables('functionAppName'))]"
],
"properties": {
"state": "Enabled",
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
}
},
"triggers": {
"When_a_HTTP_request_is_received": {
"type": "Request",
"kind": "Http",
"inputs": {
"method": "POST",
"schema": {
"type": "object",
"properties": {
"protocol": {
"type": "integer"
},
"port": {
"type": "integer"
}
}
}
}
}
},
"actions": {
"PortBlockingFunction-runTrafficQuery": {
"runAfter": {},
"type": "Function",
"inputs": {
"body": "@triggerBody()",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/runTrafficQuery')]"
}
}
},
"PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults": {
"runAfter": {
"PortBlockingFunction-runTrafficQuery": [
"Succeeded"
]
},
"type": "Function",
"inputs": {
"body": "@body('PortBlockingFunction-runTrafficQuery')",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/fetchVisibilityOnlyWorkloadsFromTrafficResults')]"
}
}
},
"PortBlockingFunction-createVirtualService": {
"runAfter": {
"PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults": [
"Succeeded"
]
},
"type": "Function",
"inputs": {
"body": "@body('PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults')",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/createVirtualService')]"
}
}
},
"PortBlockingFunction-bindWorkloadsToVirtualService": {
"runAfter": {
"PortBlockingFunction-createVirtualService": [
"Succeeded"
]
},
"type": "Function",
"inputs": {
"body": "@body('PortBlockingFunction-createVirtualService')",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/bindWorkloadsToVirtualService')]"
}
}
},
"PortBlockingFunction-createAllowRuleForVirtualService": {
"runAfter": {
"PortBlockingFunction-bindWorkloadsToVirtualService": [
"Succeeded"
]
},
"type": "Function",
"inputs": {
"body": "@body('PortBlockingFunction-bindWorkloadsToVirtualService')",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/createAllowRuleForVirtualService')]"
}
}
},
"PortBlockingFunction-changeWorkloadEnforcementState": {
"runAfter": {
"PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults": [
"Succeeded"
]
},
"type": "Function",
"inputs": {
"body": "@body('PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults')",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/changeWorkloadEnforcementState')]"
}
}
},
"PortBlockingFunction-createDenyRule": {
"runAfter": {
"PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults": [
"Succeeded"
]
},
"type": "Function",
"inputs": {
"body": "@body('PortBlockingFunction-fetchVisibilityOnlyWorkloadsFromTrafficResults')",
"function": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Web/sites/',parameters('Functionappname'), '/functions/createDenyRule')]"
}
}
}
},
"outputs": {}
},
"parameters": {
"$connections": {
"value": {
"azuresentinel": {
"connectionId": "[resourceId('Microsoft.Web/connections', variables('sentinelConnectionName'))]",
"connectionName": "[variables('sentinelConnectionName')]",
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/azuresentinel')]"
}
}
}
}
}
}
]
}

Двоичный файл не отображается.

Просмотреть файл

@ -19,8 +19,12 @@
"Analytic Rules/Illumio_VEN_Deactivated_Query.yaml",
"Analytic Rules/Illumio_VEN_Suspend_Query.yaml"
],
"Playbooks": [
"Playbooks/Illumio-Port-Blocking-Switch/azuredeploy.json",
"Playbooks/Illumio-Get-Ven-Details/azuredeploy.json"
],
"BasePath": "C:\\GitHub\\Azure-Sentinel\\Solutions\\IllumioSaaS",
"Version": "3.2.2",
"Version": "3.3.2",
"Metadata": "SolutionMetadata.json",
"TemplateSpec": true,
"Is1Pconnector": false