Compartir a través de


Administración de contenido personalizado con repositorios de Microsoft Sentinel (versión preliminar pública)

La característica repositorios de Microsoft Sentinel proporciona una experiencia central para la implementación y administración del contenido de Sentinel como código. Los repositorios permiten conexiones a un control de código fuente externo para la integración continua y entrega continua (CI/CD). Esta automatización elimina la carga de los procesos manuales para actualizar e implementar el contenido personalizado en las áreas de trabajo. Para obtener más información del contenido de Sentinel, consulte Acerca de las soluciones y el contenido de Microsoft Sentinel.

Importante

La característica Repositorios de Microsoft Sentinel se encuentra actualmente en VERSIÓN PRELIMINAR. Consulte los Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer más términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.

Planeación de la conexión del repositorio

Los repositorios de Microsoft Sentinel requieren una planeación cuidadosa para asegurar que se tienen los permisos adecuados del área de trabajo en el repositorio (repo) que quiere conectar.

  • Solo se admiten conexiones a repositorios de GitHub y Azure DevOps.
  • Se requiere acceso de colaborador al repositorio de GitHub o al administrador de proyectos al repositorio de Azure DevOps.
  • La aplicación Microsoft Sentinel necesita autorización para el repositorio.
  • Las acciones deben estar habilitadas para GitHub.
  • Las canalizaciones deben estar habilitadas para Azure DevOps.
  • Una conexión de Azure DevOps debe estar en el mismo inquilino que el área de trabajo de Microsoft Sentinel.

La creación de una conexión a un repositorio requiere un rol de propietario en el grupo de recursos que contiene el área de trabajo de Microsoft Sentinel. Si no puede usar el rol Propietario en su entorno, use la combinación de administrador de acceso de usuario y roles de colaborador de Sentinel para crear la conexión.

Si encuentra contenido en un repositorio público en el que no es colaborador, primero importe, bifurque o clone el contenido en un repositorio donde sea colaborador. A continuación, conecte el repositorio al área de trabajo de Microsoft Sentinel. Para más información, consulte Implementación de contenido personalizado desde el repositorio.

Planee el contenido del repositorio

El contenido del repositorio debe almacenarse como archivos de Bicep o plantillas de Azure Resource Manager (ARM). Sin embargo, Bicep es más intuitivo y facilita la descripción de los recursos de Azure y el contenido de Microsoft Sentinel.

Implemente plantillas de archivo de Bicep junto con o en lugar de plantillas JSON de ARM. Si está pensando en usar infraestructura como opciones de código, le recomendamos que eche un vistazo a Bicep. Para más información, vea ¿Qué es Bicep?

Importante

Para usar plantillas de Bicep, la conexión de repositorios debe actualizarse si la conexión se creó antes del 1 de noviembre de 2024. Las conexiones de repositorios deben quitarse y volver a crearse para actualizarlas.

Incluso si el contenido original es una plantilla de ARM, considere la posibilidad de convertir a Bicep para que los procesos de revisión y actualización sean menos complejos. Bicep está estrechamente relacionado con ARM porque durante una implementación, cada archivo de Bicep se convierte en una plantilla de ARM. Para obtener más información sobre la conversión de plantillas de ARM, consulte Descompilar JSON de plantilla de ARM en Bicep.

Nota:

Limitaciones conocidas de Bicep:

  • Las plantillas de Bicep no admiten la propiedad id. Al descompilar JSON de ARM en Bicep, asegúrese de que no tiene esta propiedad. Por ejemplo, las plantillas de reglas analíticas exportadas desde Microsoft Sentinel tienen la propiedad id que necesita eliminación.
  • Cambie el esquema JSON de ARM a la versión 2019-04-01 para obtener los mejores resultados al descompilar.

Validación del contenido

Los siguientes tipos de contenido de Microsoft Sentinel se pueden implementar a través de una conexión de repositorio:

  • Reglas de análisis
  • Regalas de automatización
  • Consultas de búsqueda
  • Analizadores
  • Playbooks
  • Workbooks

Sugerencia

En este artículo no se describe cómo crear estos tipos de contenido desde cero. Para obtener más información, vea la wiki de GitHub de Microsoft Sentinel pertinente de cada tipo de contenido.

La implementación de repositorios no valida el contenido, excepto para confirmar que está en el formato JSON o Bicep correcto. Asegúrese de probar el contenido en Microsoft Sentinel antes de implementarlo.

Hay disponible un repositorio de ejemplo con plantillas para cada uno de los tipos de contenido enumerados. El repositorio también muestra cómo usar características avanzadas de las conexiones de repositorio. Para obtener más información, consulte ejemplo de repositorios de CI/CD de Microsoft Sentinel.

Captura de pantalla de una conexión de repositorio exitosa. Se muestra el contenido de RepositoriesSampleContent. Esta captura de pantalla es después de que el ejemplo se importó del repositorio de SentinelCICD a uno privado de GitHub en la organización FourthCoffee.

Número máximo de conexiones e implementaciones

  • Cada área de trabajo de Microsoft Sentinel está limitada actualmente a cinco conexiones de repositorio.
  • El historial de implementaciones de cada grupo de recursos de Azure está limitado a 800 implementaciones. Si tiene un gran volumen de implementaciones de plantilla uno o varios de los grupos de recursos, es posible que vea el error Deployment QuotaExceeded. Para obtener más información, consulte DeploymentQuotaExceeded en la documentación de las plantillas de Azure Resource Manager.

Mejora del rendimiento con implementaciones inteligentes

Sugerencia

Para garantizar que las implementaciones inteligentes funcionen en GitHub, los flujos de trabajo deben tener permisos de lectura y escritura en su repositorio. Consulta Administrar la configuración de Acciones de GitHub para un repositorio para obtener más detalles.

La característica de implementaciones inteligentes es una capacidad de back-end que mejora el rendimiento mediante el seguimiento activo de las modificaciones hechas en los archivos de contenido de un repositorio conectado. Usa un archivo CSV dentro de la carpeta .sentinel del repositorio para auditar cada confirmación. El flujo de trabajo evita volver a implementar el contenido que no se haya modificado desde la última implementación. Este proceso mejorará el rendimiento de la implementación y evitará alteraciones con contenido sin cambios en el área de trabajo, como restablecer las programaciones dinámicas de las reglas de análisis.

Las implementaciones inteligentes están habilitadas de manera predeterminada en las conexiones recién creadas. Si prefiere todo el contenido de control de código fuente implementado cada vez que se desencadene una implementación, tanto si ese contenido se modificó como si no, modifique el flujo de trabajo para deshabilitar las implementaciones inteligentes. Para obtener más información, consulte Personalización del flujo de trabajo o la canalización.

Considere las opciones de personalización de implementación

Tenga en cuenta las siguientes opciones de personalización al implementar contenido con repositorios de Microsoft Sentinel.

Personalización del flujo de trabajo o la canalización

Personalice el flujo de trabajo o la canalización de una de las maneras siguientes:

  • configurar diferentes desencadenadores de implementación
  • implementar contenido solo desde una carpeta raíz específica para un área de trabajo determinada
  • programar el flujo de trabajo para ejecutar periódicamente
  • combinar eventos de flujo de trabajo diferentes
  • desactivar las implementaciones inteligentes

Estas personalizaciones se definen en un archivo .yml específico del flujo de trabajo o la canalización. Para obtener más información sobre cómo implementar, consulte Personalización de implementaciones de repositorios

Personalización de la implementación

Una vez desencadenado el flujo de trabajo o la canalización, la implementación admite los siguientes escenarios:

  • priorizar el contenido que se implementará antes que el resto del contenido del repositorio
  • excluir contenido de la implementación
  • especificar archivos de parámetros de plantilla de ARM

Estas opciones están disponibles a través de una característica del script de implementación de PowerShell al que se llama desde el flujo de trabajo o la canalización. Para obtener más información sobre cómo implementar estas personalizaciones, consulte Personalización de implementaciones de repositorios.

Pasos siguientes

Obtenga más ejemplos e instrucciones paso a paso sobre la implementación de repositorios de Microsoft Sentinel.