L’un des principaux problèmes que nous rencontrons lors de la configuration de WSO2 est l’information privilégiée que nous ajoutons aux fichiers de configuration eux-mêmes, comme un utilisateur que nous voulons que personne ne connaisse, ou un mot de passe qui est destiné à une seule personne d’avoir accès à . Aussi, lors de la mise en place d’un service, nous définissons les informations que nous ne souhaitons pas détectables. Alors, quelles solutions propose WSO2?
Qu’est que c’est Secure Vault?
WSO2 Secure Vault c’est un outil qui nous permet:
- pour chiffrer les valeurs dans les fichiers de configuration.
- pour créer des alias avec des valeurs cryptées qui remplacent les valeurs non cryptées dans les fichiers de configuration, telles que les mots de passe de la base de données ou de l’utilisateur administrateur.
Cet outil WSO2 est créé pour offrir une couche de protection supplémentaire à certaines informations d’identification que nous ne voulons pas que quiconque a accès aux fichiers de configuration puisse découvrir.
Secure Vault peut être utilisé pour différents paramètres, tels que les données utilisateur, les mots de passe, les connexions à la base de données ou tout autre paramètre de sécurité souhaité.
Ainsi, il s’agit d’un outil essentiel pour la sécurité des données d’une entreprise.
Composants de Secure Vault
Cipher Tool ou l’outil de chiffrement
Secure Vault est composé de différents éléments, la plupart étant des fichiers de configuration. Le plus important est, sans aucun doute, l’outil de chiffrement.
L’outil de chiffrement est un script qui change en fonction du système d’exploitation dans lequel il est exécuté. On peut trouver le ciphertool.sh pour Linux, ou le ciphertool.bat pour Windows. Ce script utilise un magasin de clés (KeyStore), wso2carbon.jks. Avec ce keystore, l’outil chiffrera les valeurs définies, et nous pourrons l’utiliser via des alias.
Les autres éléments qui forment SECURE VAULT sont:
Secret Repository ou Référentiel Secret
Ceci est utilisé pour stocker des valeurs secrètes et cryptées. Ces valeurs sont affichées par défaut avant l’activation de l’outil de chiffrement, mais elles sont cryptées après l’activation. Le fichier de configuration où ces valeurs sont stockées est « cipher-text.properties », situé dans « ${carbon.home}/conf/security/ ». Dans ce fichier, nous allons définir quelques alias et leurs mots de passe respectifs, comme le montre l’image suivante.
Ici, nous pouvons voir comment certains alias (lettres bleues) et certaines valeurs entre parenthèses sont définis. Ces valeurs sont cryptées après l’activation du Cipher Tool.
Outre ce fichier de configuration, nous disposons d’un autre fichier de configuration « cipher-tool.properties », situé dans « ${carbon.home}/conf/security ». Ce fichier de configuration est l’endroit où nous définissons les alias susmentionnés et, via xpath, nous définirons le chemin contenant ce mot de passe ou cette valeur à chiffrer ultérieurement.
Secret Manager ou gestionnaire secret
Cela spécifie la configuration de l’outil de chiffrement pour chiffrer les valeurs que nous avons définies dans le Secret Repository. Ces paramètres incluent le type de fichier, le chemin où se trouve ce fichier, le mot de passe, son alias, le magasin de clés (KeyStore), etc. En d’autres termes, il contient toutes les informations que l’outil de chiffrement a utilisées pour crypter les valeurs. Ce fichier est « secret-conf.properties » qui se trouve dans «${carbon.home}/conf/security ». Ce fichier existe par défaut, mais toutes ses lignes sont incluses. C’est au démarrage de l’outil Cipher que ce fichier prend de l’importance, puisque certains paramètres sont définis.
Secret CallBack
Cela nous fournit le vrai mot de passe pour un alias donné. Il existe un SecretManagerSecretCallbackHandler, qui s’associe à Secret Manager pour résoudre le secret. Tout rappel peut être écrit en implémentant la clé SecretCallbackHandler.
-Cet article peut vous intéresser-
Secret Resolver
Tout créateur de configuration utilisant des informations secrètes dans son propre fichier de configuration doit lancer Secret Resolver lors de la configuration de sa propre configuration. Le Secret Resolver conserve une liste des éléments sécurisés qui doivent être définis dans le fichier de configuration avec des alias secrets. Le Secret Resolver lance la classe de contrôleur Secret Callback, qui est définie dans le fichier de configuration.
Si vous voulez savoir comment Chakray peut vous aider avec Secure Vault et ses composants, contactez-nous!