4.2.4.2. Cas 2: Configuration production¶
4.2.4.2.1. Procédure générale¶
La procédure suivante s’applique lorsqu’une PKI est déjà disponible pour fournir les certificats nécessaires.
Les étapes d’intégration des certificats à la solution Vitam sont les suivantes :
- Générer les certificats avec les bons key usage par type de certificat
- Déposer les certificats et les autorités de certifications correspondantes dans les bons répertoires.
- Renseigner les mots de passe des clés privées des certificats dans le vault ansible
environments/certs/vault-certs.yml
- Utiliser le script VITAM permettant de générer les différents keystores.
4.2.4.2.2. Génération des certificats¶
En conformité avec le document RGSV2 de l’ANSSI, il est recommandé de générer des certificats avec les caractéristiques suivantes:
4.2.4.2.2.1. Certificats serveurs¶
- Key Usage
- digitalSignature, keyEncipherment
- Extended Key Usage
- TLS Web Server Authentication
Les certificats serveurs générés doivent prendre en compte des alias « web » ( subjectAltName
).
Le subjectAltName des certificats serveurs ( deployment/environments/certs/server/hosts/*
) doit contenir le nom DNS du service sur consul associé.
Exemple avec un cas standard: <composant_vitam>.service.<consul_domain>. Ce qui donne pour le certificat serveur de access-external par exemple:
X509v3 Subject Alternative Name:
DNS:access-external.service.consul, DNS:localhost
Il faudra alors mettre le même nom de domaine pour la configuration de Consul (fichier deployment/environments/group_vars/all/advanced/vitam_vars.yml
, variable consul_domain
)
Cas particulier pour ihm-demo et ihm-recette: il faut ajouter le nom DNS qui sera utilisé pour requêter ces deux applications, si celles-ci sont appelées directement en frontal https.
4.2.4.2.2.2. Certificat clients¶
- Key Usage
- digitalSignature
- Extended Key Usage
- TLS Web Client Authentication
4.2.4.2.2.3. Certificats d’horodatage¶
Ces certificats sont à générer pour les composants logbook
et storage
.
- Key Usage
- digitalSignature, nonRepudiation
- Extended Key Usage
- Time Stamping
4.2.4.2.3. Intégration de certificats existants¶
Une fois les certificats et CA mis à disposition par votre PKI, il convient de les positionner sous environments/certs/....
en respectant la structure indiquée ci-dessous.
Astuce
Dans le doute, n’hésitez pas à utiliser la PKI de test (étapes de génération de CA et de certificats) pour générer les fichiers requis au bon endroit et ainsi observer la structure exacte attendue ; il vous suffira ensuite de remplacer ces certificats « placeholders » par les certificats définitifs avant de lancer le déploiement.
Ne pas oublier de renseigner le vault contenant les passphrases des clés des certificats: environments/certs/vault-certs.yml
Pour modifier/créer un vault ansible, se référer à la documentation Ansible sur cette url.
Prudence
Durant l’installation de VITAM, il est nécessaire de créer un certificat « vitam-admin-int » (à placer sous deployment/environments/certs/client-external/clients/vitam-admin-int
).
Prudence
Durant l’installation des extra de VITAM, il est nécessaire de créer un certificat « gatling » (à placer sous deployment/environments/certs/client-external/clients/gatling
).
4.2.4.2.4. Intégration de certificats clients de VITAM¶
4.2.4.2.4.1. Intégration d’une application externe (cliente)¶
Dans le cas d’ajout de certificats SIA externes au déploiement de la solution logicielle VITAM :
- Déposer le certificat (
.crt
) de l’application client dansenvironments/certs/client-external/clients/external/
- Déposer les CA du certificat de l’application (
.crt
) dansenvironments/certs/client-external/ca/
- Editer le fichier
environments/group_vars/all/advanced/vitam_security.yml
et ajouter le(s) entrée(s) supplémentaire(s) (sous forme répertoire/fichier.crt, exemple:external/mon_sia.crt
) dans la directiveadmin_context_certs
pour que celles-ci soient associés aux contextes de sécurité durant le déploiement de la solution logicielle VITAM.
Note
Les certificats SIA externes ajoutés par le mécanisme de déploiement sont, par défaut, rattachés au contexte applicatif d’administration admin_context_name
lui même associé au profil de sécurité admin_security_profile
et à la liste de tenants vitam_tenant_ids
(voir le fichier environments/group_vars/all/advanced/vitam_security.yml
). Pour l’ajout de certificats applicatifs associés à des contextes applicatifs autres, se référer à la procédure du document d’exploitation (DEX) décrivant l’intégration d’une application externe dans Vitam.
4.2.4.2.4.2. Intégration d’un certificat personnel (personae)¶
Dans le cas d’ajout de certificats personnels au déploiement de la solution logicielle VITAM :
- Déposer le certificat personnel (
.crt
) dansenvironments/certs/client-external/clients/external/
- Editer le fichier
environments/group_vars/all/advanced/vitam_security.yml
et ajouter le(s) entrée(s) supplémentaire(s) (sous forme répertoire/fichier.crt, exemple:external/mon_personae.crt
) dans la directiveadmin_personal_certs
pour que ceux-ci soient ajoutés à la base de donées du composant security-internal durant le déploiement de la solution logicielle VITAM.
4.2.4.2.5. Cas des offres objet¶
Placer le .crt
de la CA dans deployment/environments/certs/server/ca
.
4.2.4.2.6. Absence d’usage d’un reverse¶
Dans ce cas, il convient de :
- supprimer le répertoire
deployment/environments/certs/client-external/clients/reverse
- supprimer les entrées reverse dans le fichier
vault_keystore.yml