Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este inicio rápido, aprenderá a usar una plantilla de Azure Resource Manager o un archivo de Bicep para crear una automatización de flujos de trabajo. La automatización de flujos de trabajo desencadenará una aplicación lógica cuando Microsoft Defender for Cloud reciba alertas de seguridad específicas.
Requisitos previos
Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Para ver una lista de los roles y permisos necesarios para la característica de automatización del flujo de trabajo de Microsoft Defender for Cloud, consulte la información sobre la automatización del flujo de trabajo.
En los ejemplos de este inicio rápido se supone que tiene una aplicación lógica existente. Para implementar el ejemplo, se pasan parámetros que contienen el nombre de la aplicación lógica y el grupo de recursos. Para obtener información sobre cómo implementar una aplicación lógica, consulte Inicio rápido: Creación e implementación de un flujo de trabajo de aplicación lógica de consumo en Azure Logic Apps multiinquilino con Bicep o Inicio rápido: Creación e implementación de un flujo de trabajo de aplicación lógica de consumo en Azure Logic Apps multiinquilino con una plantilla de ARM.
Tutorial de plantilla de ARM
Una plantilla de Azure Resource Manager es un archivo de notación de objetos JavaScript (JSON) que define tanto la infraestructura como la configuración de un proyecto. La plantilla usa sintaxis declarativa. Se describe la implementación deseada sin escribir la secuencia de comandos de programación para crear la implementación.
Si su entorno cumple los requisitos previos y está familiarizado con el uso de plantillas de Resource Manager, seleccione el botón Implementar en Azure. La plantilla se abrirá en Azure Portal.
Revisión de la plantilla
La plantilla usada en este inicio rápido forma parte de las plantillas de inicio rápido de Azure.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "5191074894407113732"
}
},
"parameters": {
"automationName": {
"type": "string",
"maxLength": 24,
"minLength": 3
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for the automation"
}
},
"logicAppName": {
"type": "string",
"minLength": 3
},
"logicAppResourceGroupName": {
"type": "string",
"minLength": 3
},
"subscriptionId": {
"type": "string",
"defaultValue": "[subscription().subscriptionId]",
"metadata": {
"description": "The Azure resource GUID id of the subscription"
}
},
"alertSettings": {
"type": "object",
"metadata": {
"description": "The alert settings object used for deploying the automation"
}
}
},
"variables": {
"automationDescription": "automation description for subscription {0}",
"scopeDescription": "automation scope for subscription {0}"
},
"resources": [
{
"type": "Microsoft.Security/automations",
"apiVersion": "2019-01-01-preview",
"name": "[parameters('automationName')]",
"location": "[parameters('location')]",
"properties": {
"description": "[format(variables('automationDescription'), parameters('subscriptionId'))]",
"isEnabled": true,
"actions": [
{
"actionType": "LogicApp",
"logicAppResourceId": "[resourceId('Microsoft.Logic/workflows', parameters('logicAppName'))]",
"uri": "[listCallbackURL(resourceId(parameters('subscriptionId'), parameters('logicAppResourceGroupName'), 'Microsoft.Logic/workflows/triggers', parameters('logicAppName'), 'manual'), '2019-05-01').value]"
}
],
"scopes": [
{
"description": "[format(variables('scopeDescription'), parameters('subscriptionId'))]",
"scopePath": "[subscription().id]"
}
],
"sources": [
{
"copy": [
{
"name": "ruleSets",
"count": "[length(range(0, length(parameters('alertSettings').alertSeverityMapping)))]",
"input": {
"rules": [
{
"propertyJPath": "[parameters('alertSettings').alertSeverityMapping[range(0, length(parameters('alertSettings').alertSeverityMapping))[copyIndex('ruleSets')]].jpath]",
"propertyType": "String",
"expectedValue": "[parameters('alertSettings').alertSeverityMapping[range(0, length(parameters('alertSettings').alertSeverityMapping))[copyIndex('ruleSets')]].expectedValue]",
"operator": "[parameters('alertSettings').alertSeverityMapping[range(0, length(parameters('alertSettings').alertSeverityMapping))[copyIndex('ruleSets')]].operator]"
},
{
"propertyJPath": "Severity",
"propertyType": "String",
"expectedValue": "[parameters('alertSettings').alertSeverityMapping[range(0, length(parameters('alertSettings').alertSeverityMapping))[copyIndex('ruleSets')]].severity]",
"operator": "Equals"
}
]
}
}
],
"eventSource": "Alerts"
}
]
}
}
]
}
Recursos relevantes
- Microsoft.Security/automations: La automatización que desencadenará la aplicación lógica al recibir una alerta de Microsoft Defender for Cloud que contenga una cadena específica.
- Microsoft.Logic/workflows: Una aplicación lógica vacía que se puede desencadenar.
Para ver más plantillas de inicio rápido de Defender for Cloud, consulte estas versiones facilitadas por la comunidad.
Implementación de la plantilla
PowerShell:
New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.security/securitycenter-create-automation-for-alertnamecontains/azuredeploy.json
CLI:
az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment az deployment group create --resource-group <my-resource-group> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.security/securitycenter-create-automation-for-alertnamecontains/azuredeploy.json
Portal:
Para más información acerca de esta opción de implementación, consulte Uso de un botón de implementación para implementar plantillas desde el repositorio de GitHub.
Revisión de los recursos implementados
Use Azure Portal para comprobar que la automatización de flujos de trabajo se ha implementado.
Inicie sesión en Azure Portal.
Busque y seleccione Microsoft Defender for Cloud.
Seleccione Filtro.
Seleccione la suscripción específica en la que ha implementado la nueva automatización de flujos de trabajo.
En el menú de Microsoft Defender for Cloud, abra la automatización del flujo de trabajo y busque la nueva automatización.
Sugerencia
Si tiene muchas automatizaciones de flujos de trabajo en la suscripción, use la opción de filtrar por nombre.
Limpieza de recursos
Cuando ya no la necesite, elimine la automatización de flujos de trabajo mediante Azure Portal.
Inicie sesión en Azure Portal.
Busque y seleccione Microsoft Defender for Cloud.
Seleccione Filtro.
Seleccione la suscripción específica en la que ha implementado la nueva automatización de flujos de trabajo.
En el menú de Microsoft Defender for Cloud, abra la automatización del flujo de trabajo y busque la automatización que se va a eliminar.
Active la casilla correspondiente al elemento que se va a eliminar.
En la barra de herramientas, seleccione Eliminar.
Tutorial de Bicep
Bicep es un lenguaje específico de dominio (DSL) que usa una sintaxis declarativa para implementar recursos de Azure. Brinda sintaxis concisa, seguridad de tipos confiable y compatibilidad con la reutilización de código. Bicep ofrece la mejor experiencia de creación para sus soluciones de infraestructura como código en Azure.
Revisión del archivo de Bicep
El archivo de Bicep usado en este inicio rápido forma parte de las plantillas de inicio rápido de Azure.
@minLength(3)
@maxLength(24)
param automationName string
@description('Location for the automation')
param location string = resourceGroup().location
@minLength(3)
param logicAppName string
@minLength(3)
param logicAppResourceGroupName string
@description('The Azure resource GUID id of the subscription')
param subscriptionId string = subscription().subscriptionId
@description('The alert settings object used for deploying the automation')
param alertSettings object
var automationDescription = 'automation description for subscription {0}'
var scopeDescription = 'automation scope for subscription {0}'
resource automation 'Microsoft.Security/automations@2019-01-01-preview' = {
name: automationName
location: location
properties: {
description: format(automationDescription, subscriptionId)
isEnabled: true
actions: [
{
actionType: 'LogicApp'
logicAppResourceId: resourceId('Microsoft.Logic/workflows', logicAppName)
uri: listCallbackURL(resourceId(subscriptionId, logicAppResourceGroupName, 'Microsoft.Logic/workflows/triggers', logicAppName, 'manual'), '2019-05-01').value
}
]
scopes: [
{
description: format(scopeDescription, subscriptionId)
scopePath: subscription().id
}
]
sources: [
{
eventSource: 'Alerts'
ruleSets: [for j in range(0, length(alertSettings.alertSeverityMapping)): {
rules: [
{
propertyJPath: alertSettings.alertSeverityMapping[j].jpath
propertyType: 'String'
expectedValue: alertSettings.alertSeverityMapping[j].expectedValue
operator: alertSettings.alertSeverityMapping[j].operator
}
{
propertyJPath: 'Severity'
propertyType: 'String'
expectedValue: alertSettings.alertSeverityMapping[j].severity
operator: 'Equals'
}
]
}]
}
]
}
}
Recursos relevantes
- Microsoft.Security/automations: La automatización que desencadenará la aplicación lógica al recibir una alerta de Microsoft Defender for Cloud que contenga una cadena específica.
- Microsoft.Logic/workflows: Una aplicación lógica vacía que se puede desencadenar.
Para ver más plantillas de inicio rápido de Defender for Cloud, consulte estas versiones facilitadas por la comunidad.
Implementación del archivo de Bicep
Guarde el archivo de Bicep como main.bicep en el equipo local.
Implemente el archivo de Bicep mediante la CLI de Azure o Azure PowerShell.
az group create --name exampleRG --location eastus az deployment group create --resource-group exampleRG --template-file main.bicep --parameters automationName=<automation-name> logicAppName=<logic-name> logicAppResourceGroupName=<group-name> alertSettings={alert-settings}
Debe escribir los parámetros siguientes:
- automationName: reemplace <automation-name> por el nombre de la automatización. Tiene una longitud mínima de 3 caracteres y una máxima de 24.
- logicAppName: reemplace <logic-name> por el nombre de la aplicación lógica. Tiene una longitud mínima de tres caracteres.
- logicAppResourceGroupName: reemplace <group-name> por el nombre del grupo de recursos en el que se encuentran los recursos. Tiene una longitud mínima de tres caracteres.
- alertSettings: reemplace {alert-settings} por el objeto de configuración de alerta usado para implementar la automatización.
Nota:
Una vez finalizada la implementación, debería mostrarse un mensaje indicando que la implementación se realizó correctamente.
Revisión de los recursos implementados
Use los Azure Portal, CLI de Azure o Azure PowerShell para enumerar los recursos implementados en el grupo de recursos.
az resource list --resource-group exampleRG
Limpieza de recursos
Cuando ya no los necesite, use Azure Portal, la CLI de Azure o Azure PowerShell para eliminar el grupo de recursos y los recursos que hay en él.
az group delete --name exampleRG
Pasos siguientes
Para obtener tutoriales paso a paso que le guíen a lo largo del proceso de creación de una plantilla de ARM o un archivo de Bicep, vea: