Gestion des Secrets

Model | Implémentation | Déploiement Sécurisé | Gestion des Secrets

Benefit

Accès limité et défini à vos secrets de production

Activity

Les développeurs ne devraient pas avoir accès aux secrets ou aux informations d’identification des environnements de production. Ayez un mécanisme en place pour protéger adéquatement les secrets de production, par exemple (i) en ayant des personnes spécifiques qui les ajoutent aux fichiers de configuration pertinents au moment du déploiement (le principe de séparation du devoir) ou (ii) en chiffrant les secrets de production contenus dans les fichiers de configuration.

N’utilisez pas de secrets de production dans les fichiers de configuration pour les environnements de développement ou de test, car il se peut que ces environnements aient une posture de sécurité nettement plus faible. De même, ne gardez pas les secrets non protégés dans des fichiers de configuration stockés dans des dépôts de code.

Stockez les identifiants sensibles et les secrets pour les systèmes de production sous forme chiffrée tout le temps. Envisagez d’utiliser un outil spécifiquement conçu pour cela. Gérez soigneusement la gestion des clés de sorte que seul le personnel responsable des déploiements en production soit en mesure d’accéder à ces données.

Question

Limitez-vous l'accès aux secrets de l'application selon le principe du moindre privilège?

Quality criteria

Vous stockez les secrets de production de façon sûre dans un endroit sécurisé
Les développeurs n'ont pas accès aux secrets de production
Les secrets de production ne sont pas disponibles hors de l'environnement de production

Answers

Non
Oui, pour certaines applications
Oui, pour au moins la moitié des applications
Oui, pour la plupart ou toutes les applications

Benefit

Détection de fuites potentielles de secrets de production

Activity

Ayez un processus automatisé pour ajouter des informations d’identification et des secrets aux fichiers de configuration pendant le processus de déploiement aux étapes concernées. De cette façon, les développeurs et les personnes en charge des déploiements ne voient pas ou ne gèrent pas ces valeurs sensibles.

Mettez en œuvre des vérifications qui détectent la présence de secrets dans les dépôts de code et les fichiers et exécutez-les périodiquement. Configurez les outils pour rechercher des chaînes connues et des chaînes potentiellement dangereuses inconnues. Dans les systèmes tels que les dépôts de code où il y a un historique, incluez les versions dans les vérifications. Marquez les secrets potentiels que vous découvrirez comme des valeurs sensibles et retirez-les lorsque c’est pertinent. Si vous ne pouvez pas les supprimer d’un fichier historique dans un dépôt de code par exemple, vous devrez peut-être actualiser la valeur sur le système qui consomme le secret. De cette façon, si un attaquant découvre le secret, il ne leur sera pas utile.

Rendez le système utilisé pour stocker et traiter les secrets et les identifiants robustes du point de vue de la sécurité. Chiffrez tous les secrets au repos et en transit. Les utilisateurs qui configurent ce système et les secrets qu’il contient sont soumis au principe du moindre privilège. Par exemple, un développeur peut avoir besoin de gérer les secrets d’un environnement de développement, mais pas d’un environnement de test ou de production de validation utilisateur.

Question

Injectez-vous les secrets de production dans les fichiers de configuration pendant le déploiement?

Quality criteria

Les fichiers de code source ne contiennent plus les secrets actifs de l'application
Dans des circonstances normales, aucun humain n'accède aux secrets lors des procédures de déploiement
Vous enregistrez et avertissez de tout accès anormal aux secrets

Answers

Non
Oui, pour certaines applications
Oui, pour au moins la moitié des applications
Oui, pour la plupart ou toutes les applications

Benefit

Possibilité réduite et détection rapide d’abus de secrets de production

Activity

Mettez en œuvre la gestion du cycle de vie des secrets de production et assurez la génération de nouveaux secrets autant que possible, et cela pour chaque instance d’application. L’utilisation de secrets par instance d’application garantit que les comportements inattendus de l’application peut être retracé et correctement analysés. Des outils peuvent aider à mettre à jour automatiquement et de façon transparente les secrets dans tous les endroits pertinents lors de la survenue de changements.

Assurez-vous que tous les accès aux secrets (en lecture et en écriture) sont enregistrés dans une infrastructure centrale. Examinez régulièrement ces journaux pour identifier les comportements inattendus et effectuez une analyse adéquate pour comprendre pourquoi cela s’est produit. Envoyez les problèmes et les causes racines vers la pratique de gestion des défauts pour gerantir que l’organisation prendra en compte toutes les situations inacceptables.

Question

Pratiquez-vous une gestion adéquate du cycle de vie des secrets de l'application?

Quality criteria

Vous générez et synchronisez les secrets en utilisant une solution éprouvée
Les secrets sont différents entre les différentes instances de l'application
Les secrets sont régulièrement mis à jour

Answers

Non
Oui, pour certaines applications
Oui, pour au moins la moitié des applications
Oui, pour la plupart ou toutes les applications

Stream Guidance

There's no guidance for this Stream, yet. Be the first to provide Community guidance!

Want to contribute?

Complete this Google Form with guidance for this Stream.



To learn more about Stream guidance for the SAMM model, see the Stream guidance page.