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.
Seguridad de Microsoft DevOps es una aplicación de línea de comandos que integra el análisis estático en el ciclo de vida de desarrollo. Instala, configura y ejecuta los analizadores de cumplimiento, seguridad y SDL más recientes mediante configuraciones portátiles para garantizar una ejecución coherente y determinista entre entornos.
Seguridad de Microsoft DevOps usa las siguientes herramientas de código abierto:
| Name | Idioma | License |
|---|---|---|
| AntiMalware | Protección contra malware en Windows desde Microsoft Defender para punto de conexión. Busca malware y interrumpe la compilación si se detecta contenido malintencionado. Se ejecuta de forma predeterminada en el agente más reciente de Windows. | No de código abierto |
| Bandit | Python | Licencia de Apache 2.0 |
| BinSkim | Destinos binarios: Windows, ELF | Licencia MIT |
| Checkov | Terraform, plan de Terraform, CloudFormation, AWS SAM, Kubernetes, gráficos de Helm, Kustomize, Dockerfile, Sin servidor, Bicep, OpenAPI, ARM | Licencia de Apache 2.0 |
| ESLint | JavaScript | Licencia MIT |
| IaCFileScanner | Herramienta de mapeo de plantillas para Terraform, CloudFormation, ARM templates y Bicep | No de código abierto |
| Analizador de plantillas | Plantillas de ARM, Bicep | Licencia MIT |
| Terrascan | Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation | Licencia de Apache 2.0 |
| Trivy | Imágenes de contenedores, infraestructura como código (IaC) | Licencia de Apache 2.0 |
Note
A partir del 20 de septiembre de 2023, la herramienta de análisis de secretos (CredScan) dentro de la extensión DevOps de Seguridad de Microsoft (MSDO) para Azure DevOps ha quedado en desuso. El examen de secretos de MSDO se reemplaza por GitHub Advanced Security para Azure DevOps.
Prerequisites
Antes de instalar la extensión, asegúrate de cumplir con los siguientes requisitos:
- Necesita privilegios de administrador de colecciones de proyectos en la organización de Azure DevOps para instalar la extensión. Si no tiene acceso, solicite estos privilegios desde el administrador de Azure DevOps.
Instalación de la extensión
Para instalar la extensión Seguridad de Microsoft DevOps:
Inicie sesión en Azure DevOps.
Vaya a Shopping Bag>Manage extensions (Administrar extensiones).
Seleccione Compartido.
Note
Si ya ha instalado la extensión DevOps de Seguridad de Microsoft, aparece en la pestaña Instalado.
Seleccione Seguridad de Microsoft DevOps.
Seleccione Instalar.
Seleccione la organización adecuada en el menú desplegable.
Seleccione Instalar.
Seleccione Continuar con la organización.
Configuración de canalizaciones mediante YAML
Tip
Opcional: Instala la extensión SARIF SAST Scans Tab si quieres que los resultados del análisis SARIF aparezcan automáticamente en la pestaña de Escaneos de la canalización.
Para configurar una canalización con YAML:
Inicie sesión en Azure DevOps.
Seleccione su proyecto.
Vaya a Canalizaciones>Nueva canalización.
Seleccione Azure Repos Git.
Seleccione el repositorio correspondiente.
Seleccione Canalización de inicio.
Pegue el siguiente CÓDIGO YAML en la canalización:
# Starter pipeline # Start with a minimal pipeline that you can customize to build and deploy your code. # Add steps that build, run tests, deploy, and more: # https://aka.ms/yaml trigger: none pool: # ubuntu-latest also supported. vmImage: 'windows-latest' steps: - task: MicrosoftSecurityDevOps@1 displayName: 'Microsoft Security DevOps' # inputs: # config: string. Optional. A file path to an MSDO configuration file ('*.gdnconfig'). Vist the MSDO GitHub wiki linked below for additional configuration instructions # policy: 'azuredevops' | 'microsoft' | 'none'. Optional. The name of a well-known Microsoft policy to determine the tools/checks to run. If no configuration file or list of tools is provided, the policy may instruct MSDO which tools to run. Default: azuredevops. # categories: string. Optional. A comma-separated list of analyzer categories to run. Values: 'code', 'artifacts', 'IaC', 'containers'. Example: 'IaC, containers'. Defaults to all. # languages: string. Optional. A comma-separated list of languages to analyze. Example: 'javascript,typescript'. Defaults to all. # tools: string. Optional. A comma-separated list of analyzer tools to run. Values: 'bandit', 'binskim', 'checkov', 'eslint', 'templateanalyzer', 'terrascan', 'trivy'. Example 'templateanalyzer, trivy' # break: boolean. Optional. If true, will fail this build step if any high severity level results are found. Default: false. # publish: boolean. Optional. If true, will publish the output SARIF results file to the chosen pipeline artifact. Default: true. # artifactName: string. Optional. The name of the pipeline artifact to publish the SARIF result file to. Default: CodeAnalysisLogs*.Note
El artifactName "CodeAnalysisLogs" es necesario para la integración con Defender for Cloud. Para obtener más opciones de configuración de herramientas y variables de entorno, consulte la wiki de Seguridad de Microsoft DevOps.
Seleccione Guardar y ejecutar para confirmar y ejecutar la canalización.
Note
Instale la extensión SARIF SAST Scans Tab para mostrar automáticamente los resultados del análisis de SARIF en la pestaña Exámenes del flujo de trabajo.
Carga de hallazgos de herramientas de seguridad de terceros en Defender for Cloud
Defender for Cloud puede ingerir resultados de SARIF de otras herramientas de seguridad para la visibilidad de código a nube. Para cargar estos resultados, asegúrese de que los repositorios de Azure DevOps estén integrados a Defender for Cloud. Después de la incorporación, Defender for Cloud monitoriza de manera continua el artefacto CodeAnalysisLogs en busca de resultados SARIF.
Use la tarea PublishBuildArtifacts@1 para publicar archivos SARIF en el artefacto CodeAnalysisLogs. El siguiente paso YAML publica el archivo de resultados SARIF como un artefacto de compilación para que Defender for Cloud pueda absorber los hallazgos:
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: 'results.sarif'
ArtifactName: 'CodeAnalysisLogs'
Defender for Cloud muestra estos resultados en la evaluación los repositorios de Azure DevOps deberían tener resueltos los hallazgos del análisis de código para el repositorio afectado.
Contenido relacionado:
- Create your first Azure DevOps pipeline (Creación de su primera canalización de Azure DevOps)
- Seguridad de DevOps en Defender for Cloud
- Conexión del entorno de Azure DevOps a Defender for Cloud