| Info |
|---|
Esup-DSS-Client est une nouvelle passerelle, developpée dans le cadre du projet Esup-Signature, entre le poste client et DSS Signature (sous système de signature de la commission européenne). Cette application remplace l'utilisation du client NexU qui n'est plus maintenu depuis 2018. Esup-DSS-Client est à installer sur les postes clients des utilisateurs qui ont besoin de signer avec un certificat local ou materiel. Le code de l’application NexU (sous license EUPL) a été partiellement repris pour coder cette nouvelle application. Les principaux changements par rapport à NexU sont :
Pour fonctionner, le module OpenSC doit être installé sur la machine. Ce projet est disponible ici : https://github.com/OpenSC/OpenSC. Comme l'accès au support crypto est natif (pcsc, apdu) il n'est pas nécessaire d'installer un pilote sur la machine cliente. |
Sommaire
GitHub
...
Le code source est disponible ici : https://github.com/EsupPortail/esup-dss-client
Les installateurs : https://github.com/EsupPortail/esup-dss-client/releases/latest
Ressource
Exemple de notice d'installation / utilisation du client de L'université de Rouen
View file name Notice-Esup-Dss-Client-Univ-Rouen.pdf height 250
Changelog
v1.2.3-RELEASE-21/02/2025
Versions :
- DSS 6.2
- OpenSC 0.26.1
v1.2.2-RELEASE-15/11/2024
Versions :
- DSS 6.1
- OpenSC 0.26.0
- Jetty 12
- OpenJFX 23
v1.2.1-RELEASE-08/04/2024
Versions :
- OpenSC 0.25.1
Améliorations :
- Transmission des messages erreurs
v1.2-RELEASE-29/03/2024
Versions :
- OpenSC 0.25.0
v1.1-RELEASE-
...
15/12/2023
Versions :
- OpenSC 0.24.0
Améliorations :
- Driver propriétaire configurable via UI
- Amélioration UI
v1.0-RELEASE-21/06/2023
Versions :
- OpenJDK 17 minimum
- Compatible Linux, Windows 64 et MacOS
- OpenSC 0.23.0
Fonctionnalités :
- Signature via OpenSC
- Signature via le magasin de clés windows
- Signature via PKCS12
Fonctionnement en lien avec Esup-Signature
Le fonctionnement d'Esup-DSS-Client (communication entre le navigateur et le client) est décit sur cette page d'archive à propos de l'application NexU : Application NexU (Archive)
Pour résumer, lorsqu' Esup-DSS-Client est démarré, un serveur web se lance sur le poste client aux adresses suivantes http://localhost:9795 et https://localhost:9895. Les vues web d'Esup-Signature qui permettent de signer, importent un fichier javascript hébergé à l'adresse http://localhost:9795. Lors de la signature le navigarteur communique avec la clé via les commandes javascript issues d'Esup-DSS-Client.
| Info |
|---|
Esup-signature fait référence à l'adresse http://localhost:9875 pour eviter les problèmes de certificats. Cependant, certains navigateurs sont susceptibles de refuser d'importer le script dans la page web d'esup-signature. De ce fait Esup-DSS-Client ne fonctionne pas sous Safari et il peut arriver que Firefox lève une alerte de securité. Nous n'avons jamais rencontré de problème avec Chrome quelque soit l'OS. |
| Remarque |
|---|
À l'université de Rouen la signature est concluante avec un certificat obtenu auprès de certinomis : Offre SERVEUR 2 étoiles / Cachet 2 étoiles G2 - sur carte. L'autorité de certification est reconnue par la trustlist française sous le nom "Certinomis - Prime CA G2" Le materiel reçu est une clé Feitian Technologies, Inc. SCR301 avec une carte Gemalto pris en charge par OpenSC (pilote "idprime : Gemalto IDPrime"). Ici la liste des matériels supportés par OpenSC : https://github.com/OpenSC/OpenSC/wiki/Supported-hardware-%28smart-cards-and-USB-tokens%29 |
Installation :
Pour simplifier l'installation d'Esup-DSS-Client, un installateur est disponible. Celui-ci va installer Zulu (distribution comprenant OpenJdk et OpenJFX), et OpenSC.
...
Un installateur "izpack" est disponible ici : https://github.com/EsupPortail/esup-dss-client/releases/latest/download/esup-dss-client-installer.jar
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
sudo java -jar esup-dss-client-installer.jar |
Installation sous macOS
| Remarque |
|---|
La signature ne fonctionne pas sous Safari car celui-ci refuse l'intégration des scripts provenant de localhost. Bon à savoir, avec esup-dss-client, il n'est pas nécessaire d'installer le pilote de la clé. |
Avec package
Recupérez le package https://github.com/EsupPortail/esup-dss-client/releases/latest/download/esup-dss-client.pkg
...
Il faut aussi installer OpenSC. Un dmg est disponible ici : https://github.com/OpenSC/OpenSC/releases/download/0.2324.0/OpenSC-0.2324.0.dmg
Ces deux installation peuvent aussi être effectées via homebrew voir : https://brew.sh/
...
Sur la fenetre "Préférences" vous pouvez saisir le chemin vers le pilote de votre clé.
Voici des exemples testé testés à Rouen pour la clé Certinomis :
| Os | Chemin |
|---|---|
| Linux | /usr/lib/pkcs11/libIDPrimePKCS11.so |
| MacOs | /usr/local/lib/libIDPrimePKCS11.dylib |
| Windows | "C:\Program Files (x86)\Gemalto\IDGo 800 PKCS#11\IDPrimePKCS1164.dll" |
Les chemins sont à adaptés en fonction de votre sytème d'exploitation et de l'emplacement d'installation de vos pilotes.
...
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
pkcs11-tool --login --test --module <emplacement du driver> |
Fonctionnement en lien avec Esup-Signature
...
Pour résumer, lorsqu' Esup-DSS-Client est démarré, un serveur web se lance sur le poste client aux adresses suivantes http://localhost:9795 et https://localhost:9895. Les vues web d'Esup-Signature qui permettent de signer, importent un fichier javascript hébergé à l'adresse http://localhost:9795. Lors de la signature le navigarteur communique avec la clé via les commandes javascript issues d'Esup-DSS-Client.
| Remarque |
|---|
Esup-signature fait référence à l'adresse http://localhost:9875 pour eviter les problèmes de certificats. Cependant, certains navigateurs sont susceptibles de refuser d'importer le script dans la page web d'esup-signature. De ce fait Esup-DSS-Client ne fonctionne pas sous Safari et il peut arriver que Firefox lève une alerte de securité. Nous n'avons jamais rencontré de problème avec Chrome quelque soit l'OS. |
| Remarque |
|---|
À l'université de Rouen la signature est concluante avec un certificat obtenu auprès de certinomis : Offre SERVEUR 2 étoiles / Cachet 2 étoiles G2 - sur carte. L'autorité de certification est reconnue par la trustlist française sous le nom "Certinomis - Prime CA G2" Le materiel reçu est une clé Feitian Technologies, Inc. SCR301 avec une carte Gemalto pris en charge par OpenSC (pilote "idprime : Gemalto IDPrime"). Ici la liste des matériels supportés par OpenSC : https://github.com/OpenSC/OpenSC/wiki/Supported-hardware-%28smart-cards-and-USB-tokens%29 |
Compilation / Obtention des installateurs
...
- esup-dss-client-installer.jar pour l'instllation installation sous Linux
- esup-dss-client-installerwin64.exe zip pour l'instllation installation sous Windows
Pour obtenir le jar seul :
...
- git (et donc les outils Xcode)
- brew (voir https://brew.sh/index_fr)
- maven via brew (brew install maven)
Modifier le code développeur dans src/izpack/pkg.sh
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
mvn clean package -Dmac.os=true |
...