AWS Secrets Manager offre une solution robuste pour la sauvegarde de vos identifiants, données sensibles, mots de passe et autres informations secrètes.
Avec la recrudescence des cyberattaques à l’échelle mondiale, ciblant le vol d’informations confidentielles et d’actifs financiers, les entreprises subissent des préjudices considérables.
L’utilisation de services de protection des données puissants tels que Secrets Manager devient donc impérative.
Cet article explore les fonctionnalités et les avantages qu’offre AWS Secrets Manager.
Entrons dans le vif du sujet.
Qu’est-ce qu’AWS Secrets Manager ?
AWS Secrets Manager est un outil dédié à la gestion, la rotation et la récupération des secrets, notamment les mots de passe, les clés d’API, les identifiants de bases de données et d’applications, tout au long de leur cycle de vie.
Un secret peut être défini comme toute donnée confidentielle et cruciale pour votre organisation, nécessitant une protection rigoureuse. Cela peut inclure des informations d’identification telles que des noms d’utilisateur et des mots de passe, des jetons OAuth, des identifiants AWS, des clés SSK, des clés de chiffrement, des certificats et des clés privées, entre autres.
L’objectif principal d’AWS Secrets Manager est de gérer et de sécuriser les données utilisées pour accéder aux ressources, services, applications et systèmes informatiques. Il centralise le stockage et la gestion des secrets, ce qui facilite l’accès pour les utilisateurs légitimes sans nécessiter de code complexe.
AWS Secrets Manager permet la rotation des secrets sur divers services AWS tels que Redshift, RDS et DocumentDB, assurant ainsi la mise à jour constante des clés et des identifiants de base de données. De plus, la rotation des secrets peut être effectuée à la demande ou selon un calendrier, via la console intégrée de l’outil, le SDK AWS ou l’interface de ligne de commande AWS CLI.
Par ailleurs, AWS Secrets Manager offre un contrôle accru des données et un cryptage robuste pour leur protection. Il permet également la surveillance et l’audit de vos informations protégées grâce à diverses intégrations disponibles.
Ses principaux utilisateurs sont les grandes entreprises en termes de taille et les éditeurs de logiciels en termes de secteur d’activité.
Fonctionnalités d’AWS Secrets Manager
#1. Stockage et gestion des secrets
Outre le stockage, Secrets Manager facilite la gestion de vos secrets. Vous pouvez effectuer diverses actions avec vos données pour les gérer sur la plateforme :
- Créer des secrets et des bases de données
- Modifier des secrets
- Rechercher des secrets
- Supprimer des secrets inutiles
- Restaurer des secrets perdus ou supprimés
- Répliquer des secrets dans une autre région AWS
- Promouvoir un secret répliqué en un secret autonome dans AWS Secrets Manager
Après avoir créé votre compte dans Amazon Aurora, Amazon RDS, Amazon DocumentDB ou Amazon Redshift, vous pouvez stocker vos identifiants sur la plateforme via la console Secrets Manager, le SDK AWS ou l’AWS CLI.
#2. Sécurité renforcée
AWS Secrets Manager utilise un cryptage puissant pour protéger tous vos secrets contre les accès non autorisés. Il chiffre vos secrets à l’aide des clés AWS Key Management Service (KMS).
Secrets Manager utilise AWS Identity and Access Management (IAM) pour permettre aux utilisateurs d’accéder en toute sécurité à leurs secrets. Il offre des contrôles d’accès et une authentification avancés.
- L’authentification est utilisée pour vérifier l’identité de l’utilisateur effectuant la demande. L’identification se fait via un processus de connexion nécessitant des jetons d’authentification multi-facteurs (MFA), des clés d’accès et des mots de passe.
- Le contrôle d’accès est utilisé pour s’assurer que les utilisateurs autorisés ne peuvent effectuer que certaines opérations sur les secrets.
De plus, Secrets Manager utilise des politiques qui définissent quels utilisateurs peuvent accéder à quelles ressources et effectuer quelles actions sur ces secrets ou ressources. Il vous permet d’utiliser AWS IAM Roles Anywhere pour obtenir des identifiants temporaires pour sécuriser IAM pour les serveurs, les applications, les conteneurs et autres charges de travail exécutées en dehors d’AWS.
Vous pouvez également activer les mêmes rôles et politiques IAM pour vos charges de travail que celles que vous avez créées pour les applications AWS afin d’accéder à vos ressources sur les appareils AWS et sur site (comme les serveurs d’applications).
#3. Rotation des secrets
AWS Secrets Manager permet de faire pivoter les secrets selon un calendrier ou à la demande, sans perturber ni redéployer vos applications actives.
La rotation des secrets consiste à mettre à jour périodiquement les secrets d’une organisation. Lors de la rotation d’un secret, il faut mettre à jour les données ou les identifiants dans le secret ainsi que dans le service ou la base de données. De plus, il est possible d’automatiser la rotation des secrets et de gagner du temps en la configurant via la console et l’AWS CLI.
Pour mettre à jour un secret, AWS Secret Manager exploite la fonction AWS Lambda et l’appelle en fonction du calendrier de configuration. Vous devrez mettre en place un calendrier précis pour permettre la rotation après une période définie, comme 90 ou 30 jours. Cela peut également se faire en créant une expression cron.
De plus, le gestionnaire de secrets peut étiqueter la version du secret pendant la rotation en utilisant des étiquettes intermédiaires. Il peut appeler une fonction plusieurs fois pendant la rotation en donnant différents paramètres.
Voici comment faire pivoter un secret :
- Créer la nouvelle version du secret. Elle peut contenir un nouveau nom d’utilisateur, un nouveau mot de passe et d’autres données secrètes.
- Modifier les informations d’identification existantes dans le service ou la base de données. Cela correspondra aux nouvelles informations d’identification dans la nouvelle version secrète. Selon la stratégie de rotation mise en place, un nouvel utilisateur sera créé avec les mêmes autorisations d’accès que l’utilisateur existant.
- Tester la version secrète nouvellement créée en lui permettant d’accéder au service ou à la base de données. Selon le type d’accès dont vos applications ont besoin, vous pouvez inclure un accès en lecture et en écriture.
- Effectuer la rotation en remplaçant l’ancienne version par la nouvelle version secrète. Conserver l’ancienne version et l’ajouter à la version précédente pour éviter de perdre complètement le secret.
#4. Surveillance des secrets
Les violations et les inefficacités pouvant survenir à tout moment, il est crucial de surveiller vos secrets et de prendre les mesures nécessaires à temps. AWS Secrets Manager permet de surveiller vos données grâce à des outils de surveillance et de signaler immédiatement tout problème.
Vous pouvez utiliser les journaux pour examiner toute modification ou utilisation inattendue. Si une anomalie est détectée, vous pouvez annuler les modifications non souhaitées et récupérer la version précédente. De plus, vous pouvez configurer des vérifications automatisées pour détecter toute tentative de suppression de secret ou d’utilisation inappropriée.
Voici les avantages de la surveillance des secrets :
- Consigner les événements à l’aide d’AWS CloudTrail : AWS CloudTrail peut enregistrer les appels d’API en tant qu’événements depuis la console pour la rotation et la suppression des secrets. Il affichera les événements enregistrés au cours des 90 derniers jours. Vous pouvez également configurer CloudTrail pour fournir des fichiers journaux directement au compartiment Amazon S3 depuis plusieurs régions et comptes AWS.
- Surveillance à l’aide de CloudWatch : avec CloudWatch, vous pouvez facilement surveiller vos secrets en laissant l’outil collecter et traiter les données brutes en métriques lisibles en temps réel. Les données seront enregistrées pendant 15 mois pour évaluer les performances de votre service ou application.
- Mettre en correspondance les événements à l’aide d’EventBridge : avec EventBridge, il est possible de mettre en correspondance les événements à partir des fichiers journaux AWS CloudTrail. Pour ce faire, configurez des règles qui recherchent ces événements et envoyez un nouvel événement pour agir sur une cible.
- Surveiller les secrets programmés pour la suppression : en combinant Amazon CloudWatch Logs, Simple Notification Service (SNS) et CloudTrail, vous pouvez configurer des alarmes pour être notifié en cas de tentative non autorisée de suppression d’un secret.
À la réception d’une alarme, vous aurez le temps de décider si vous souhaitez réellement supprimer le secret ou arrêter la suppression. Vous pouvez également autoriser un utilisateur à utiliser un nouveau secret et lui fournir des autorisations d’accès.
#5. Intégrations
AWS Secrets Manager s’intègre avec de nombreux autres outils Amazon et AWS, notamment Alexa for Business, AWS App2Container, App Runner, Amazon AppFlow, AWS AppConfig, Amazon Athena, Amazon DocumentDB, AWS DataSync, AWS CodeBuild, Amazon ElasticCache, Amazon EMR, AWS Elemental Live, Amazon QuickSight, Amazon Redshift, AWS Migration Hub, Amazon RDS, etc.
Pourquoi utiliser AWS Secrets Manager
Posture de sécurité améliorée
Secrets Manager vous permet d’améliorer la posture de sécurité de votre organisation, car vous n’avez pas besoin d’informations d’identification codées en dur dans le code source de votre application. En stockant vos identifiants dans le gestionnaire de secrets, vous pouvez éviter les compromissions de sécurité par une personne qui pourrait accéder à l’application ou à ses composants.
Reprise après sinistre
Un sinistre peut survenir à tout moment, par exemple une cyberattaque. Vous pourriez perdre vos informations cruciales, vos mots de passe et d’autres informations d’identification et données. Vous pourriez également perdre des données en raison d’une suppression accidentelle.
Avec cet outil, vous pouvez remplacer vos informations d’identification codées en dur par un appel au runtime à AWS Secrets Manager pour récupérer dynamiquement vos informations d’identification en cas de besoin.
Risques réduits
Secrets Manager vous permet de configurer un calendrier de rotation afin que les secrets puissent tourner automatiquement le moment venu. Vous pouvez ainsi remplacer vos secrets à long terme par des secrets à court terme, ce qui contribue à réduire les risques de compromission de la sécurité.
De plus, la rotation des identifiants ne nécessite pas de mises à jour d’application ni de modification des clients d’application, car vous ne stockez pas vos identifiants avec l’application.
Répondre aux exigences de conformité
Face aux risques croissants pour la sécurité et la confidentialité, les organismes de réglementation tels que GDPR et HIPAA exigent des entreprises qu’elles adhèrent à leurs normes de conformité pour garantir le traitement sécurisé des données des clients et des entreprises. Par conséquent, il est important d’utiliser une application ou un service sûr et conforme aux réglementations applicables.
Avec AWS Secrets Manager, vous pouvez surveiller vos secrets afin de détecter toute vulnérabilité ou risque de sécurité susceptible de compromettre vos données et prendre des mesures à l’avance. Cela protège les informations de votre entreprise et de vos clients, ce qui est essentiel pour maintenir la conformité. Vous pouvez également mieux vous préparer aux audits en documentant tout.
De plus, vous pouvez tirer parti d’AWS Configs pour évaluer vos secrets et leur conformité avec les politiques internes, les réglementations et les directives de votre secteur d’activité. Il vous permet de définir les exigences de conformité et les contrôles internes pour les secrets et d’identifier les secrets non conformes.
De meilleurs contrôles
Vous bénéficiez d’un meilleur contrôle sur vos secrets, systèmes et autres données grâce à des politiques et des contrôles d’accès précis. AWS IAM s’assurera que les bonnes personnes disposent du niveau d’autorisation d’accès approprié aux bonnes ressources. Les administrateurs peuvent créer ou supprimer des comptes, autoriser ou restreindre l’accès aux utilisateurs, ajouter ou supprimer des membres et effectuer de nombreuses actions selon les besoins et les situations.
AWS Secrets Manager : configuration et utilisation
Voici comment configurer et utiliser AWS Secrets Manager :
- Configurer votre compte AWS en saisissant les informations requises.
- Se connecter à votre compte AWS
- Accéder à la console AWS Secrets Manager
- Localiser l’option « Stocker un nouveau secret » et cliquer dessus pour créer et stocker votre secret.
Création et stockage d’un nouveau secret
Pour créer un secret dans Secrets Manager, vous devez disposer de l’autorisation des stratégies gérées SecretsManagerReadWrite. Lorsqu’un secret est créé, Secret Manager génère une entrée de journal CloudTrail.
Suivez les étapes ci-dessous pour stocker vos jetons d’accès, clés d’API et identifiants dans AWS Secrets Manager :
Source : débordement de pile
Vous serez dirigé vers la page « Choisir le type de secret ». Ensuite, suivez ces étapes :
- Sélectionner « Autre type de secret » pour le type de secret que vous souhaitez créer.
- Vous verrez des paires clé/valeur. Saisir un secret dans les paires clé/valeur en JSON. Ou, sélectionner l’onglet Texte brut et saisir votre secret dans le format de votre choix. Il est possible de stocker des secrets jusqu’à 65 536 octets.
- Sélectionner la clé AWS KMS utilisée par Secret Manager pour chiffrer la valeur secrète. La plupart du temps, vous pouvez opter pour aws/secretsmanager afin d’utiliser la clé gérée. Cela n’entraîne aucun coût.
- Pour accéder à un secret depuis un autre compte AWS ou utiliser votre clé KMS pour activer la rotation ou mettre en œuvre une politique sur cette clé, sélectionner « Ajouter une nouvelle clé » ou sélectionner une clé gérée par le client dans la liste donnée. Toutefois, une clé gérée par le client est payante.
- Sélectionner « Suivant »
- Saisir un nom et une description pour le secret. Le nom doit contenir entre 1 et 512 caractères Unicode.
- Vous pouvez ajouter des balises à un secret dans la section Balises. Vous pouvez également inclure une stratégie de ressource en choisissant « Modifier les autorisations ».
- En outre, il est également possible de répliquer un secret dans une autre région AWS en sélectionnant « Répliquer le secret ». Ces étapes sont facultatives.
- Choisir « Suivant »
En plus de la console, vous pouvez également ajouter un secret via AWS SDK et AWS CLI.
AWS Secrets Manager contre AWS Parameter Store
AWS Parameter Store est un outil de gestion d’applications d’AWS Systems Manager (SSM) qui permet aux utilisateurs de créer un paramètre clé-valeur, permettant d’enregistrer les configurations, identifiants, clés de produit et variables d’environnement personnalisées d’une application.
D’autre part, AWS Secrets Manager est un service permettant de créer, stocker, gérer, récupérer et faire pivoter les identifiants, clés, jetons d’API, etc.
Ces deux services ont des interfaces similaires où il est facile de déclarer vos paires clé-valeur pour les secrets et les paramètres. Toutefois, ils le font pour les raisons suivantes :
AWS Secrets Manager | AWS Parameters Store | |
Taille de stockage | Stocke jusqu’à 10 ko de secret | Stocke jusqu’à 4 096 caractères ou 4 ko pour une entrée, jusqu’à 8 ko pour les paramètres avancés |
Limites | Peut stocker 500 000 secrets/région/compte | Peut stocker 10 000 paramètres standard/région/compte |
Coût | C’est payant, coûte 0,40 $/secret/mois | Gratuit pour les paramètres standard, 0,05 $/10 000 appels d’API pour les paramètres avancés |
Rotation | Offre une rotation automatique pour n’importe quel secret à tout moment et peut être configurée | Vous devrez écrire vous-même une fonction pour mettre à jour les identifiants pour les données confidentielles nécessitant un cryptage, donc des cas d’utilisation limités |
Cas d’utilisation | Cas d’utilisation plus large puisque vous pouvez stocker plus de types d’identifiants, y compris des variables de configuration d’application telles que des clés de produit, des URL, etc. |
Conclusion
Que votre entreprise soit petite, moyenne ou grande, vous pouvez utiliser AWS Secrets Manager pour créer et stocker vos secrets. Il offre une sécurité, une confidentialité, des contrôles d’accès, des fonctionnalités et des capacités améliorés pour protéger vos secrets contre tout accès non autorisé.
Vous pouvez également découvrir comment effectuer l’analyse de sécurité AWS et la surveillance de la configuration.