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.
Importante
Esta característica se encuentra en su versión beta. Azure Databricks permite escanear la seguridad del código para espacios de trabajo elegibles durante la beta.
Importante
Los escaneos de seguridad pueden producir falsos positivos y no identificar todos los errores de seguridad.
Databricks Apps escanea el código fuente de tu app en busca de problemas comunes de seguridad cada vez que despliegas un cambio en el código fuente. El escaneo no bloquea ni hace que falle un despliegue. Los hallazgos aparecen en la página de Seguridad de la app, donde un gestor de aplicaciones puede revisarlos y evaluarlos.
Cómo funciona el escaneo de seguridad de código
El escaneo de seguridad del código realiza un análisis estático en el código fuente de tu app como parte del despliegue:
- Se ejecuta con cambios en el código fuente: Un escaneo se ejecuta automáticamente cuando despliegas un cambio en el código fuente. Un despliegue que reutiliza una compilación existente sin un cambio en el código fuente no se escanea.
- Lee solo tu código fuente: El escáner analiza tu código fuente sin ejecutarlo y nunca modifica tu aplicación.
- Sin bloqueo: El escáner informa de los hallazgos de seguridad, pero no bloquea ni hace fallar el despliegue. Revisa y aborda los hallazgos según su gravedad y tus necesidades de seguridad.
- A prueba de fallos: Si un escaneo no puede completarse, el resultado se registra como no disponible en lugar de limpio, por lo que un escaneo perdido nunca se confunde con uno que está pasando.
Lo que detecta el escaneo
El escaneo de seguridad del código analiza solo el código fuente de tu app. No escanea las dependencias de tu app ni realiza un análisis dinámico de la app en ejecución.
El escáner utiliza reglas de detección seleccionadas, creadas y ajustadas por Azure Databricks para aplicaciones Databricks. Azure Databricks puede añadir, eliminar o actualizar reglas con el tiempo para mejorar la cobertura y precisión de la detección. Las reglas detectan clases comunes de vulnerabilidades, incluyendo:
- Credenciales y secretos codificados de forma rígida
- Inyección de código SQL
- Cross-site scripting (scripting entre sitios, XSS)
- Falsificación de solicitudes en el lado del servidor (SSRF)
- Recorrido de directorios
- Deserialización insegura
- Configuración permisiva de intercambio de recursos entre orígenes (CORS)
- Carga YAML insegura
- Exposición de tokens de usuario (en nombre de otro usuario)
Nota:
Un escaneo limpio no garantiza que tu aplicación sea segura. El escáner busca un conjunto específico de problemas, por lo que no se detectan problemas que sus reglas no cubren. Mantén tus propias prácticas de revisión de código y seguridad, especialmente para aplicaciones que gestionan datos sensibles. Para más orientación sobre seguridad, consulte las mejores prácticas de seguridad.
Ver hallazgos de seguridad
Debes tener el permiso CAN MANAGE en una aplicación para ver sus hallazgos de seguridad. Consulte Configuración de permisos para una aplicación de Databricks.
Para ver los resultados:
- En tu espacio de trabajo, abre la app. Consulte Ver los detalles de una aplicación de Databricks.
- Seleccione la pestaña Seguridad.
La página de Seguridad muestra los hallazgos del despliegue seleccionado, agrupados por archivo. Cada resultado incluye:
- La comprobación que coincidió
- La ruta del archivo y el número de línea
- Un nivel de severidad
- Una descripción del problema
Los resultados utilizan los siguientes niveles de gravedad:
- Crítico: Un problema de alta gravedad, como una probable vulnerabilidad, que deberías abordar antes de depender de la aplicación.
- Advertencia: Un posible problema que deberías revisar y solucionar si se aplica a tu aplicación.
- Información: Una observación de menor riesgo o una sugerencia de codificación segura a tener en cuenta.
Un resumen en la parte superior de la página muestra el número de hallazgos abiertos, el número de hallazgos críticos, un nivel de riesgo general y el número de hallazgos que has resuelto o ignorado. El nivel de riesgo refleja tus hallazgos abiertos y su gravedad; los hallazgos que resuelves o ignoras no cuentan para el nivel de riesgo. Filtra los hallazgos por gravedad para centrarte en los temas que más importan.
Para revisar los resultados de un despliegue anterior, utiliza el selector de versiones de código para seleccionar un despliegue anterior.
Hallazgos del triaje
El triaje te permite hacer un seguimiento de los hallazgos que has abordado. Al igual que con la visualización de los hallazgos, debes tener el CAN MANAGE permiso en la app para clasificarlos.
Cada hallazgo tiene uno de los siguientes estados:
- Abierto: El estado predeterminado para un nuevo hallazgo.
- Resuelto: Marca un hallazgo resuelto después de solucionar el problema subyacente.
- Ignorado: Ignora un hallazgo que no se aplica a tu aplicación o que has aceptado como un riesgo conocido.
Para tramitar un hallazgo, selecciona Marcar resuelto o Ignorar en el hallazgo. Para volver a abrir un hallazgo, selecciona Reabrir. Para hacer triage de varios hallazgos a la vez, selecciona varios hallazgos y aplica una acción en bloque.
El estado de triaje se guarda por hallazgo y persiste entre los despliegues. Si el mismo problema aparece en un despliegue posterior, mantiene el estado que has configurado, así que no tienes que volver a triar los problemas que ya has revisado.
Resultados del escaneo
La página de Seguridad refleja el resultado del escaneo del despliegue. El resultado del escaneo describe lo que encontró el escaneo, y el estado del escaneo indica si el escaneo se completó.
Los resultados reflejan las reglas de detección que estaban vigentes cuando se realizó el escaneo. Azure Databricks no vuelve a escanear un despliegue existente cuando cambian las reglas, por lo que un resultado anterior (incluyendo No security findings) puede no reflejar las reglas actuales. Un nuevo escaneo se ejecuta automáticamente en tu siguiente cambio de código fuente.
Los siguientes resultados describen lo que encontró la exploración:
| Resultado | Description |
|---|---|
| Sin hallazgos de seguridad | El escaneo se completó y no detectó problemas con el conjunto de reglas actual. |
| Resultados | El escaneo encontró uno o más problemas para revisar y clasificar. |
Los siguientes estados describen el estado del escaneo en sí:
| Status | Description |
|---|---|
| Escaneando esta implementación | El escaneo está en curso. La página se actualiza automáticamente cuando termina el escaneo. |
| Escaneo incompleto | El escaneo se ejecutó pero se saltó algunos archivos o reglas, por lo que los resultados pueden ser parciales. |
| Resultados del escaneo no disponibles | El escaneo no pudo completarse para este despliegue. |
| Este despliegue no fue escaneado | El despliegue reutilizó una compilación existente sin cambiar el código fuente. Vuelve a desplegar después de un cambio de código para escanearlo. |