...
| Info |
|---|
Il est possible d'utiliser un certificat cachet d'établissement (personne morale). Le POC mené à Rouen repose sur l'utilisation d'un certificat cachet eIDAS (RGS**) obtenu auprès de Certinomis au format clé cryptographique. La clé est de marque Feitian et la carte à puce de type Gemalto. Depuis la version 1.27, il est possible d'utiliser OpenSC en lieu et place du driver safenet. |
| Remarque |
|---|
L'installation se passe coté serveur ce qui implique de connecter la clé usb sur le serveur hébergeant esup-signature. Cela implique des contraintes particulière par rapport aux serveurs virtuels. Deux solution sont possibles :
|
| Sommaire |
|---|
...
Pré-requis
Installation des paquets :
- pcsc-tools
- libpcsclite1
- libpcsclite-dev
Installation de la clé USB :
- directement sur le serveur
- via un hub USB réseau Digi AnywhereUSB® (solution en place à Rouen)
...
Acquisition d'un certificat
Attention à bien vous équiper d'un certificat eIDas. Vous trouver la liste des fournisseurs et des certificats ici :
https://eidas.ec.europa.eu/efda/trust-services/browse/eidas/tls/tl/FR
En général ils sont fournis sur support cryptographique.
Si votre certificat n'est pas eIDas vous ne pourrez l'utiliser qu'en forçant le paramètre check-revocation-for-untrusted-chains à false
voir : Configuration - Section global#dss
...
Installation avec le driver SafeNet
Pour le materiel de type clé Feitian et carte sim Gemalto (comme fournis par Certinomis par example), les pilotes sont à télécharger ici : https://supportknowledge.globalsigndigicert.com/ssl/ssl-certificates-installation/safenet-drivers#Linux%20Debiangeneral-information/how-to-download-safenet-authentication-client
| Bloc de code | ||
|---|---|---|
| ||
wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1w-0+deb11u4_amd64.deb
sudo dpkg -i libssl1.1_1.1.1w-0+deb11u4_amd64.deb
sudo apt install libgdk-pixbuf-2.0-0 libgdk-pixbuf-xlib-2.0-0
sudo dpkg -i safenetauthenticationclient-core_10.9.4723_amd64.deb
|
Une fois le paquet installé, on obtient le fichier fichier /lib/pkcs11/libIDPrimePKCS11.so qui est le pilote qui sera utilisé par esup-signature ci-après...
La configuration à mettre dans le fichier application.yml :
| Bloc de code | ||
|---|---|---|
| ||
seal-certificat-properties: default : seal-certificat-title: Cachet d'établissement eIDas # Titre pour le certificat seal-certificat-type: pkcs11 # Type du certificat PKCS11 ou PKCS12 seal-certificat-driver: /lib/pkcs11/libIDPrimePKCS11.so # Pilote du certificat cachet dans le cas d'un PKCS11 seal-certificat-pin: ****** # Code pin du certificat cachet seal-certificat-slot-id: 0 # Identifiant de l'emplacement (slot) utilisé pour accéder au certificat cachet. roles: # Rôles autorisés à utiliser ce certificat - ROLE_SEAL |
Le premier permet de préciser le type de certificat à utiliser, le deuxième pointe pilote de la clé USB, le dernier correspond au code pin du certificat
| Remarque |
|---|
Il est possible d'utiliser un certificat PKCS12 en guise de certificat cachet. Pour cela seal-certificat-type doit être PKSC12 et il faudra utiliser seal-certificat-file pour préciser l'emplacement du fichier .p12 |
...
Installation avec OpenSC
Afin d'éviter l'utilisation d'un pilote spécifique vous pouvez passer par OpenSC : https://github. com/OpenSC/OpenSC L'installation est documentée ici : https://github.com/OpenSC/OpenSC/wiki/Compiling-and-Installing-on-Unix-flavorset la vérification sont decrites ici : OpenSC
à mettre dans le fichier application.yml Sous debian il existe un paquet opensc, voici les comandes à lancer :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
sudo apt-get install pcscd libccid libpcsclite-dev libssl-dev libreadline-dev autoconf automake build-essential docbook-xsl xsltproc libtool pkg-config
sudp apt install opensc |
Pour tester le fonctionnement :
La configuration à mettre dans le fichier application.yml :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
seal-certificat-type: OPENSC seal-certificat-properties: default : seal-certificat-title: Cachet d'établissement eIDas # Titre pour le certificat seal-certificat-type: opensc # Type du certificat PKCS11 ou PKCS12 seal-certificat-pin: ****** # Code pin du certificat cachet seal-certificat-slot-id: 0 # Identifiant de l'emplacement (slot) utilisé pour accéder au certificat cachet. roles: # Rôles autorisés à utiliser ce certificat - ROLE_SEAL |
...
Mode d'accès
Cette signature éléctronique électronique est disponible de trois manières :
- Les utilisateurs ayant obtenu le ROLE_SEAL ont la possibilité de signer avec le certificat d'établissement.
- Il est possible de configurer esup-signature pour signer automatiquement tous les documents en fin de circuits avec le paramètre seal-all-docs: true
- Enfin, il est possible de configurer la signature cachet automatique, circuit par circuit
...