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 :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
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:
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
sudo apt-get install libnss3-tools |
Contrôle du fonctionnement d'OpenSC
L'installation et la vérification d'OpenSc sont décrits sur cette page : OpenSC
Installation sous linux :
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 |
Désinstallation
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
sudo java -jar /chemin/vers/votre/installation/Uninstaller/uninstaller.jar |
Installation sous macOS
| Remarque |
|---|
La signature ne fonctionne pas sous Safari car celui-ci refuse l'intégration des scripts provenant de localhost. |
Avec package
Recupérez le package https://github.com/EsupPortail/esup-dss-client/releases/latest/download/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)
Si le blocage persiste, utiliser :
| Bloc de code | ||
|---|---|---|
| ||
sudo xattr -rd com.apple.quarantine esup-dss-client.pkg |
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.24.0/OpenSC-0.24.0.dmg
Ces deux installation peuvent aussi être effectées via homebrew voir : https://brew.sh/
Les commandes à lancer seront :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
brew install opensc
brew install zulu |
Enfin lancer le jar https://github.com/EsupPortail/esup-dss-client/releases/latest/download/esup-dss-client.jar
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
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 |
| Avertissement |
|---|
Sous Mac, le système est succeptible de proposer l'utilisation de la clé pour vérouiller la session ou l'élévation de droits (dans le cas où les pilotes sont installés). Dans ce cas si le mot de passe est demandé par le système, c'est le code pin qu'il faut saisir. Une confusion sur trois saisies d'affilées va vérouiller le certificat ! |
Installation sous Windows
Installateur windows est disponible ici : https://github.com/EsupPortail/esup-dss-client/releases/latest/download/esup-dss-client-win64.zip
Configuration
Par défaut, losrque l'on selectionne OpenSC, Esup-DSS-Client va tenter de communiquer avec la clé cryptographique à l'aide de son implémentation "open". Or tous les supports ne sont pas forcément implémentés. Pour plus de détails sur le fontionnement d'OpenSC voir le page OpenSC
Pilote de la clé cryptographique
Depuis la version 1.1 d'Esup-DSS-Client, il est possible de spécifier un driver propriétaire via l'interface graphique en ouvrant la fenetre "Préférences" depuis l'icône de notification.
Sur la fenetre "Préférences" vous pouvez saisir le chemin vers le pilote de votre clé.
Voici des exemples 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.
À noter que le chemin sous windows ne fonctionne qu'avec des guillements
Identifiant du certificat
Le deuxième paramètre concerne l'identifiant du certificat. Comme précisé sur cette page, OpenSC#Driverpropri%C3%A9taire, l'identifiant change en fonction du pilote utilisé. Esup-DSS-Client doit touver automatiquement l'identifiant mais si ça n'est pas le cas, il est possible de le "forcé" via le champ "Identifiant du certificat". Pour l'obtenir on utilise le commande OpenSC :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
pkcs11-tool --login --test --module <emplacement du driver>
|