Scénario #28771
Permettre l'installation d'un certificat de l'AC EN Scolarite et Formation sur une base importée d'un sphynx 2.5.2 sur un sphynx 2.7.0
100%
Description
La version de
openssl
est en cause (1.0->1.1). La sortie du subject change entre ces 2 versions.Dans l'idéal, il faudrait faire du ménage dans la table arv_db_edge_credential et modifier le code arv en conséquense
- Suppression du champ
suffix_cred
- Modifier le contenu du champ
subject
en posttemplate avec la nouvelle sortieopenssl
sans utiliserbin_encoding
qui n'était utile que pour strongSwan en mode database - Supprimer l'utilisation de
bin_encoding
et utiliser le contenu desubject
sans rien modifier- en posttemplate
- dans le code arv
--> le problème du format de sortie du subject
a été traité partiellement dans la fonction upgrade_subject_field_in_credential_table
en posttemplate/00-arv
Original de la demande
Suite à la migration de notre serveur Sphynx 2.5.2 en 2.7.0, je n'arrivais plus à ajouter de certificat sur mes serveurs Amon dans ARV sous prétexte que le certificat de l'AC n'était pas reconnu (alors qu'il est bien évidemment dans la base).
Après quelques recherches, je suis tombé sur un résultat étrange.
Les sujets des certificats stockés dans la base d'ARV importés du sphynx 2.5.2 étaient au format
/C=FR/L=MULHOUSE/O=Education Nationale/OU=Academie de Strasbourg/OU=0002 110043015/CN=0670134G-04.ac-strasbourg.fr
Alors que les nouveaux sont au format "hybride" suivant :
C = FR, L = STRASBOURG, O = Education Nationale, OU = Academie de Strasbourg, OU = 0002 110043015/CN=0670134G-01.ac-strasbourg.fr
Du coup, lorsqu'ARV recherchait le certificat de l'AC émettrice, il recherchait en fait le certificat dont le sujet était "C = FR, O = Education Nationale, OU = 0002 110043015/CN=AC EN Scolarite et Formation" alors que le sujet du certificat stocké dans la base arv est au format historique "/C=FR/O=Education Nationale/OU=0002 110043015/CN=AC EN Scolarite et Formation"
Sur une installation vierge, il est possible que le certificat de l'AC "AC EN Scolarite et Formation" soit directement importé avec le sujet "C = FR, O = Education Nationale, OU = 0002 110043015/CN=AC EN Scolarite et Formation", ce qui ne pose pas de problème, tout en étant un peu bizarre.
Comme je n'avais pas envie de casser toute ma base ARV, j'ai modifié le script /usr/lib/python2.7/dist-packages/arv/db/node.py avec le patch ci-joint.
ATTENTION: si vous partez d'une base ARV vierge, ce patch risque plus de poser problème que d'en résoudre ... la commande suivante permettra sans doute de savoir dans quel cas vous vous trouvez :
sqlite3 /var/lib/arv/db/sphynxdb.sqlite "select subject from arv_db_edge_credential where name='AC EN Scolarite et Formation';"
Subtasks
History
#1 Updated by Fabrice Barconnière about 3 years ago
- Tracker changed from Demande to Scénario
- Description updated (diff)
- Start date deleted (
07/18/2019) - Release set to EOLE 2.7.0
- Story points set to 3.0
#2 Updated by Gilles Grandgérard almost 3 years ago
- Due date set to 09/20/2019
- Target version set to sprint 2019 36-38 Equipe MENSR
- Start date set to 08/20/2019
#3 Updated by Joël Cuissinat almost 3 years ago
- Release changed from EOLE 2.7.0 to EOLE 2.7.1.1
#4 Updated by Fabrice Barconnière almost 3 years ago
- Assigned To set to Fabrice Barconnière
#5 Updated by Joël Cuissinat almost 3 years ago
- Status changed from Nouveau to Terminé (Sprint)