Vault peut être déployé via ITCare depuis la section Sécurité du menu latéral gauche.
Un bouton Créer une instance Vault vous permet d'accéder au formulaire de déploiement.
Chercher et sélectionner le Service Global dans lequel vous allez créer votre nouvelle instance Vault. Cliquer sur Suivant.
A l'étape suivante, fournir les informations suivantes :
Le nom de l'instance de Vault
Le groupe AD de sécurité pour l'administration
Si la création d'un nouveau groupe AD de sécurité est nécessaire, merci de créer une ticket requête via le formulaire Gestion des groupes AD.
Cliquer sur Suivant, puis sélectionner la Région dans laquelle vous souhaitez effectuer le déploiement.
Enfin, la synthèse de votre demande s'affiche. Vérifier les informations saisies puis soumettre pour lancer la création de votre instance Vault.
Une fois l'instance créée, vous serez notifié par e-mail.
Depuis votre Bastion, accédez ensuite à votre instance Vault : https://<cluster>.vault.cegedim.cloud
Cette procédure vous explique comment déployer le CLI Vault sur votre bastion.
Télécharger la dernière version de Vault CLI depuis https://www.vaultproject.io/downloads sur votre poste de travail.
Copier le fichier téléchargé "vault_x.x.x_windows_amd64.zip" sur votre Bastion dans C:\temp.
Ouvrir un cmd shell et exécutez la commande ci-dessous :
Cet article décrit comment demander le prérequis de Vault sur les Services de conteneurs de cegedim.cloud.
Un cluster Kubernetes existant est requis pour configurer une intégration avec Vault
Après la résolution du ticket, allez dans Rancher Cluster Manager → Cluster → Modifier pour vérifier si l'Authorized EndPoint est activé.
À partir de Rancher Cluster Explorer → Apps & Marketplace, vérifiez si le graphique de la voûte est disponible.
Cet article décrit comment configurer l'injecteur Vault sur le service Kubernetes fourni par cegedim.cloud.
Créer un projet et un espace Vault
Créer un projet : vault
Créer un espace : vault
Déployer Vault Agent Injector
Depuis Rancher, allez dans "Apps & Marketplace" → "Charts".
Recherchez "vault" et sélectionnez "vault - Official HashiCorp Vault Chart".
Sélectionnez l'espace "vault" et nommez votre déploiement "vault-injector"
Allez dans "Values YAML" et recherchez le paramètre "externalVaultAddr" pour définir la valeur avec l'URL de votre cluster de vault : https://<cluster>.vault.cegedim.cloud
Cliquez sur Installer.
Le déploiement sera créé dans l'espace vault :
ClusterRole :
vault-injector-agent-injector-clusterrole
ServiceAccounts :
vault-injector : ce compte de service sera utilisé par vault pour se connecter à l'API Kubernetes.
vault-injector-agent-injector : ce compte de service est utilisé par le vault-injector-agent-injector
CusterRoleBindings :
vault-injector-agent-injector-binding: attache le ClusterRole vault-injector-agent-injector-clusterrole au compte de service vault-injector-agent-injector
vault-injector-server-binding : fournit system:auth-delegator au compte de service vault-injector
Déploiement :
vault-injector-agent-injector
Cet article décrit comment activer la méthode auth de kubernetes pour s'authentifier sur l'instance Vault cegedim.cloud en utilisant un jeton de compte de service Kubernetes.
Conditions préalables :
CLI de Vault
Point d'accès autorisé de Kubernetes pour Vault
certificat kubernetes
Activer Méthode d'authentification Kubernetes sur votre cegedim.cloud Services de conteneurs Depuis Vault CLI configuré et connecté à votre cegedim.cloud Vault instance cluster.
Vous pouvez vérifier avec l'interface utilisateur de Vault la configuration de cette méthode d'authentification dans l'onglet Accès.
Conditions préalables :
jeton_reviewer_jwt: Token à obtenir de Rancher Kubernetes Secret vault-injector-token
kubernetes_host: Kubernetes Authorized Endpoint API pour obtenir de la configuration de Rancher Kubernetes Cluster.
kubernetes_ca_cert: Utiliser ci-dessous le certificat racine de l'AC de l'API Kubernetes Authorized Endpoint
Il ne s'agit pas de l'AC de Kubernetes car l'API Kubernetes Authorized Endpoint est exposée par cegedim.cloud Load Balancer et par Let's Encrypt.
Copiez/collez le fichier de certificat ci-dessous sur C:\Temp dans votre profil bastion pour permettre l'accès avec Vault CLI.
À partir du shell cmd, exécutez la commande ci-dessous avec les valeurs prérequises correctes ci-dessus pour configurer la méthode Auth :
Cet article décrit comment déployer la base de données PostgreSQL avec le nom d'utilisateur et le mot de passe stockés dans l'instance Vault.
Conditions préalables :
Cluster Kubernetes cegedim.cloud
Instance Vault cegedim.cloud
CLI de Vault
Kubernetes connecté à Vault
Kubectl
Connectez-vous à votre Vault
Créer le moteur demopostgres
Il est important de préfixer tout engine path par ce chemin statique secret/ sinon vous ne pourrez pas administrer avec le rôle d'administrateur de votre BU.
Créez votre nom d'utilisateur et votre mot de passe DB Secret
Créer le fichier de politique de lecture JSON C:\Temp\policy_demopostgres.json
Créer une politique
Appliquer la politique sur le secret
Cette action connecte le compte de service Kubernetes sa-demopostgres, de l'espace de noms vault-demopostgres avec la politique Vault policy_demopostgres.
Le jeton renvoyé après l'authentification est valide pendant 24 heures.
Créer un espace de nom
Créer un compte de service Kubernetes
Créer le fichier de déploiement vault_demopostgres.yaml
Déploiement de Vault Postgres Demo
Vérifiez votre déploiement dans Rancher
Cet article décrit comment déployer SonarQube une application avec une base de données PostgreSQL dont le nom d'utilisateur et le mot de passe sont stockés dans l'instance Vault de cegedim.cloud.
Conditions préalables :
Cluster Kubernetes cegedim.cloud
Instance Vault cegedim.cloud
CLI de Vault
Kubernetes connecté à Vault
Kubectl
Connectez-vous à votre Vault
Créer le moteur demopostgres
Il est important de préfixer tout engine path par ce chemin statique secret/ sinon vous ne pourrez pas administrer avec le rôle d'administrateur de votre BU.
Créez votre nom d'utilisateur et votre mot de passe DB Secret (ou réutiliser le DB Secret créé précédemment)
Créer le fichier de politique de lecture JSON C:\Temp\policy_demopostgres.json
Créer une politique
Appliquer la politique sur le secret
Cette action connecte le compte de service Kubernetes sa-demopostgres, de l'espace de noms vault-demopostgres avec la politique Vault policy_demopostgres.
Le jeton renvoyé après l'authentification est valide pendant 24 heures.
Créer un espace de nom (ou réutiliser un Namespace créé précédemment)
Créer un compte de service Kubernetes (ou réutiliser le compte de service créé précédemment)
Créer le fichier de déploiement vault_demosonarqube.yaml
Déployer la démo de Vault SonarQube