Esup-DSS-Client est la nouvelle passerelle entre le poste client et DSS Signature (librairie logicielle utilisée par Esup-Signature). Cette application remplace l'utilisation du client NexU qui n'est plus maintenu depuis 2018.
Esup-DSS-Client est à installer sur tous 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 :
- Compatibilté OpenJDK et OpenJFX
- Suppression des dependances non livrées avec NexU qui empéchait la compilation
- Ajout d'un plugin utilisant les capacités d'OpenSC pour se connecter aux périphériques materiel de manière native sous Linux, Windows et macOS
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.
GitHub :
Le code source est disponible ici : https://github.com/EsupPortail/esup-dss-client
Les installateurs : https://github.com/EsupPortail/esup-dss-client/releases/tag/1.0
Changelog :
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
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.
Cependant il est possible de cloner le projet et le compiler localement. Dans ce cas il est possible d'obtenir le fichier esup-dss-client-jar-with-dependencies.jar. Pour le lancer directement il faut les pré-requis suivants :
- OpenJDK 17
- OpenJFX 11
La commande à passer est :
java --add-opens java.base/java.lang=ALL-UNNAMED --module-path <path-to-openjfx> --add-modules javafx.controls,javafx.fxml,javafx.base,javafx.media,javafx.graphics,javafx.swing,javafx.web --add-exports javafx.graphics/com.sun.javafx.application=ALL-UNNAMED --add-exports javafx.graphics/com.sun.javafx.tk=ALL-UNNAMED -Djdk.gtk.version=2.2 -jar esup-dss-client.jar
Sous Linux il peut être necéssaire d'ajouter cette librairie:
sudo apt-get install libnss3-tools
Installation sous linux :
Un installateur "izpack" est disponible ici : https://github.com/EsupPortail/esup-dss-client/releases/download/1.0/esup-dss-client-installer.jar
Installation sous macOS
La signature ne fonctionne pas sous Safari car celui-ci refuse l'intégration des scripts provenant de localhost
Sans le package
Il faut installer OpenJDK 17 + openJFX (avec zulu par exemple : https://www.azul.com/downloads/?version=java-17-lts&os=macos&package=jre-fx#zulu)
Il faut aussi installer OpenSC. Un dmg est disponible ici : https://github.com/OpenSC/OpenSC/releases/download/0.23.0/OpenSC-0.23.0.dmg
Ces deux installation peuvent aussi être effectées via homebrew voir : https://brew.sh/
Les commandes à lancer seront :
brew install opensc brew install zulu
Enfin lancer le jar https://github.com/EsupPortail/esup-dss-client/releases/download/1.0/esup-dss-client.jar
java --add-opens java.base/java.lang=ALL-UNNAMED --module-path <path-to-openjfx> --add-modules javafx.controls,javafx.fxml,javafx.base,javafx.media,javafx.graphics,javafx.swing,javafx.web --add-exports javafx.graphics/com.sun.javafx.application=ALL-UNNAMED --add-exports javafx.graphics/com.sun.javafx.tk=ALL-UNNAMED -Djdk.gtk.version=2.2 -jar esup-dss-client.jar
Avec package
Recupérez le package https://github.com/EsupPortail/esup-dss-client/releases/download/1.0/esup-dss-client.pkg
Il faut ensuite le lancer en cliquant sur le "bouton droit". Le package est bien signé avec le certificat du Consortium ESUP-Portail mais sans forcer il refusera de s'ouvrir (certainement car il contient des scripts sh)
Installation sous Windows
Installateur windows est disponible ici : https://github.com/EsupPortail/esup-dss-client/releases/download/1.0/esup-dss-client-win64.zip
Compilation / Obtention des installateurs
En construction
Pour obtenir l'installateur PKG, il faut être sous macOS. Voici les pre-requis à installer :
- git (et donc les outils Xcode)
- brew (voir https://brew.sh/index_fr)
- maven via brew (brew install maven)
git clone du projet
mvn clean package -Dmac.os=true
En cas d'erreur : Gtk-Message: 21:22:16.442: Failed to load module "canberra-gtk-module"
sudo apt-get install libcanberra-gtk-module