Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Cette fonctionnalité est en version bêta. Azure Databricks permet l’analyse de sécurité du code pour les espaces de travail éligibles pendant la bêta.
Important
Les analyses de sécurité peuvent produire des faux positifs et ne pas identifier tous les bugs de sécurité.
Databricks Apps analyse le code source de votre application à la recherche de problèmes de sécurité courants chaque fois que vous déployez une modification du code source. Le scan ne bloque pas et ne fait pas échouer un déploiement. Les résultats apparaissent sur la page Sécurité de l’application, où un gestionnaire d’application peut les examiner et les trier.
Comment fonctionne le scan de sécurité du code
Le scan de sécurité du code effectue une analyse statique du code source de votre application dans le cadre du déploiement :
- S’exécute lors de modifications du code source : Un scan s’exécute automatiquement lorsque vous déployez un changement de code source. Un déploiement qui réutilise un build existant sans changement de code source n’est pas scanné.
- Lit uniquement votre code source : Le scanner analyse votre code source sans l’exécuter, et ne modifie jamais votre application.
- Non-blocage : Le scanner rapporte les résultats de sécurité mais ne bloque pas et ne fait pas échouer le déploiement. Examinez et traitez les conclusions en fonction de leur gravité et de vos exigences de sécurité.
- Échec sécurisé : Si un scan ne peut pas se terminer, le résultat est enregistré comme indisponible plutôt que sain, donc un scan manquant n’est jamais confondu avec un scan réussi.
Ce que l’analyse détecte
Le scan de sécurité du code analyse uniquement le code source de votre application. Elle ne scanne pas les dépendances de votre application et n’effectue pas d’analyse dynamique de l’application en cours d’exécution.
Le scanner utilise des règles de détection sélectionnées, créées et réglées par Azure Databricks pour Databricks Apps. Azure Databricks peut ajouter, supprimer ou mettre à jour des règles au fil du temps afin d’améliorer la couverture et la précision de la détection. Les règles détectent des classes courantes de vulnérabilités, notamment :
- Identifiants et secrets codés en dur
- Injection de code SQL
- cross-site scripting (XSS)
- Falsification de requête côté serveur (SSRF)
- traversée de chemin
- Désérialisation dangereuse
- Configuration permissive du partage de ressources entre origines multiples (CORS)
- Chargement YAML dangereux
- Exposition des tokens utilisateur (au nom de)
Note
Un scan propre ne garantit pas la sécurité de votre application. Le scanner vérifie un ensemble spécifique de problèmes, donc les problèmes que ses règles ne couvrent pas ne sont pas détectés. Gardez vos propres pratiques de relecture de code et de sécurité, surtout pour les applications qui gèrent des données sensibles. Pour plus de conseils en matière de sécurité, consultez les meilleures pratiques en matière de sécurité.
Voir les problèmes de sécurité
Vous devez avoir l’autorisation CAN MANAGE sur une application pour consulter ses résultats de sécurité. Consultez Configurer des autorisations pour une application Databricks.
Pour consulter les constatations:
- Dans votre espace de travail, ouvrez l’application. Consultez Afficher les détails d’une application Databricks.
- Cliquez sur l’onglet Sécurité.
La page Sécurité montre les résultats du déploiement sélectionné, regroupés par fichier. Chaque résultat comprend :
- La vérification qui correspondait
- Le chemin du fichier et le numéro de ligne
- Un niveau de gravité
- Une description du problème
Les résultats utilisent les niveaux de gravité suivants :
- Critique : Un problème de grande gravité, comme une vulnérabilité probable, que vous devriez traiter avant de vous fier à l’application.
- Avertissement : Un problème potentiel que vous devriez examiner et corriger s’il s’applique à votre application.
- Informations : Une observation à moindre risque ou une suggestion de codage sécurisé à prendre en compte.
Un résumé en haut de la page montre le nombre de constats ouverts, le nombre de constats critiques, le niveau global de risque et le nombre de constats que vous avez résolus ou ignorés. Le niveau de risque reflète vos constatations ouvertes et leur gravité ; les constatations que vous résolvez ou ignorez ne comptent pas pour cela. Filtrez les conclusions par gravité pour vous concentrer sur les problèmes qui comptent le plus.
Pour consulter les résultats d’un déploiement antérieur, utilisez le sélecteur de version de code pour sélectionner un déploiement précédent.
Constatations du triage
Le triage vous permet de suivre les constats que vous avez traités. Comme pour la consultation des résultats, vous devez avoir la permission CAN MANAGE sur l’application pour effectuer leur triage.
Chaque constatation présente l’un des états suivants :
- Ouvert : L’état par défaut pour un nouveau résultat.
- Résolu : Marquez un résultat comme résolu après avoir corrigé le problème sous-jacent.
- Ignoré : Ignorez une constatation qui ne s’applique pas à votre application ou que vous avez acceptée comme un risque connu.
Pour traiter un résultat, sélectionnez « Marquer comme résolu » ou « Ignorer » sur le résultat. Pour rouvrir une observation, sélectionnez Rouvrir. Pour traiter plusieurs résultats en même temps, sélectionnez plusieurs résultats et appliquez une action en masse.
L’état de triage est sauvegardé pour chaque résultat et persiste entre les déploiements. Si le même problème apparaît dans un déploiement ultérieur, cela conserve l’état que vous avez défini, pour ne pas refaire le triage des problèmes déjà examinés.
Résultats de l’analyse
La page Sécurité reflète le résultat du scan du déploiement. Le résultat du scan décrit ce que le scan a trouvé, et le statut du scan indique si le scan a été terminé.
Les résultats reflètent les règles de détection en vigueur lors de l’exécution du scan. Azure Databricks ne re-scanne pas un déploiement existant lorsque les règles changent, donc un résultat antérieur (y compris Aucun problème de sécurité) peut ne pas refléter les règles actuelles. Un nouveau scan s’exécute automatiquement lors de votre prochain changement de code source.
Les résultats suivants décrivent ce que le scan a révélé :
| Résultat | Description |
|---|---|
| Aucun problème de sécurité | Le scan s’est terminé et n’a trouvé aucun problème avec le jeu de règles actuel. |
| Résultats | Le scan a révélé un ou plusieurs problèmes à examiner et à trier. |
Les statuts suivants décrivent l’état du balayage lui-même :
| Status | Description |
|---|---|
| Analyse du déploiement en cours | Le scan est en cours. La page se met à jour automatiquement à la fin du scan. |
| Scan incomplet | Le scan s’est exécuté mais a sauté certains fichiers ou règles, donc les résultats peuvent être partiels. |
| Résultats du scan indisponibles | L’analyse n’a pas pu être effectuée pour ce déploiement. |
| Ce déploiement n’a pas été scanné | Le déploiement a réutilisé une compilation existante sans changement de code source. Redéployez après un changement de code pour le scanner. |