Sommaire |
---|
...
Récupération des sources
Lorsque tous les Prérequis sont installés et PostgreSQL configuré, vous pouvez récupérer les sources (ici l'utilisateur courant est "esup") :
Bloc de code |
---|
cd /opt/
sudo mkdir esup-signature
sudo chown esup:esup esup-signature/ -R
git clone https://github.com/EsupPortail/esup-signature.git
cd esup-signature |
application.yml
La configuration d' esup-signature se fait au travers du fichier src/main/ressource/application.properties.yml
Pour commenter une ligne il faut ajoute un # devant.
global
Dans la plupart des cas il s'agit ici de modifier root-url par l'adresse de votre esup-signature
Bloc de code |
---|
root-url: https://esup-signature.univ-ville.fr
nexu-url: http://localhost:9795
nexu-version: 1.23-SNAPSHOT
nexu-download-url: /downloads/nexu-bundle-${nexuVersion}.zip
hide-wizard: false # Désactiver le bouton "Assistant de création de demande"
hide-auto-sign: false # Désactiver le bouton "Auto siganture"
hide-send-sign-request: false # Désactiver le bouton "Demander une signature" |
tomcat
Ce paramètre permet de spécifier le port ajp dans le cas ou l'application est démarrée directement (en utilisant mvn springboot:run par exemple) Par défaut ces lignes sont commentées, c'est cas lorsque l'application est démarrée par un serveur Tomcat.
Bloc de code |
---|
#tomcat:
# ajp:
# port: 6009 |
server
Paramètre du serveur lors d'un lancement hors tomcat
Bloc de code |
---|
server:
error:
include-stacktrace: always
port: 8080
|
spring
datasource
Configuration de la base de donnée :
Bloc de code |
---|
datasource:
driver-class-name: org.postgresql.Driver
hikari:
auto-commit: false
password: esup
url: jdbc:postgresql://localhost:5432/esupsignature
username: esupsignature |
ldap
Configuration de l'accès ldap (obligatoire si l'authentification CAS est activée)
Bloc de code |
---|
spring.ldap.urls=ldap://ldap.univ-ville.fr spring.ldap.username=cn=consult, ldap: base: dc=univ-ville,dc=fr spring.ldap.password= password: ******** spring.ldap.base= urls: ldap://ldap.univ-ville.fr username: cn=consult,dc=univ-ville,dc=fr |
Configuration du serveur de mail pour l'envoi des alertes
Bloc de code |
---|
spring.mail.host= mail: host: smtp.univ-ville.fr mail.from= |
Dans la partie mail (hors spring) vous pouvez paramétrer l'adresse from pour l'envoi de mails
Bloc de code |
---|
mail:
from: no-reply.esup-signature@univ-ville.fr |
...
dss
Configuration de la base de donnée :
Dans la configuration DSS il faut paramétrer l'emplacement ou doit ce trouver le cache des certificats du journal officiel : ks-filename (le dossier doit avoir été créé avant le premier lancement)
De plus vous pouvez ajouter les liens vers les url des certificats non présents dans le journal officiel mais valide dans votre établissment : trusted-certificat-url-list
Bloc de code |
---|
dss:
cache-data-source-driver-class-name: org.hsqldb.jdbc.JDBCDriver
cache-data-source-url: jdbc:hsqldb:mem:cachedb
cache-password:
cache-username: sa
default-validation-policy: policy/sign-constraint.xml
server-signing-keystore-filename: validate_service.p12
server-signing-keystore-password: password
server-signing-keystore-type: PKCS12
tsp-server: http://tsa.belgium.be/connect
ks-filename: /opt/tomcat-esup-signature/temp/oj_keystore.p12
ks-password: dss-password
ks-type: PKCS12
lotl-country-code: EU
lotl-url: https://ec.europa.eu/tools/lotl/eu-lotl.xml
oj-url: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=uriserv:OJ.C_.2019.276.01.0001.01.ENG
trusted-certificat-url-list: https://cacerts.digicert.com/DigiCertAssuredIDRootG3.crt, https://cacerts.digicert.com/DigiCertAssuredIDRootCA.crt, https://cacerts.digicert.c$
|
Bloc de code |
spring.datasource.url=jdbc:postgresql://localhost:5432/esupsignature
spring.datasource.username=esupsignature
spring.datasource.password=esup |
security
La sécurité est gérée par Spring Security. Il est possible d'activé 3 mécanismes de securité sécurité : OAuth, Shibboleth et/ou CAS. Pour descativer désactiver une ou l'autre de ces méthode, il suffit de commenter les lignes qui s'y réfèrent. (CAS nécessite la configuration d'un LDAP. C'est la solution idéale pour une utilisation interne)
Bloc de code |
---|
cas:
domain: univ-ville.fr
|
Bloc de code |
spring.security.oauth2.client.registration.google.client-id= spring.security.oauth2.client.registration.google.client-secret= spring.security.oauth2.client.registration.google.scope=profile, email spring.security.oauth2.client.registration.google.redirect-uri=https://esup-signature.univ-ville.fr/login/oauth2/code/google security.cas.key=EsupSignatureUnivVilleCAS security.cas.url=https://cas.univ-ville.fr security.cas.service=https://esup-signature.univ-ville.fr/login/cas security.cas.group-mapping-role-admin=: ROLE_FOR.ESUP-SIGNATURE.ADMIN security.cas. group-mapping-role-manager=: ROLE_FOR.ESUP-SIGNATURE.MANAGER security.shib.principal-request-header=REMOTE_USER security.shib. key: EsupSignatureUnivVilleCAS service: https://esup-signature.univ-ville.fr/login/cas title: Compte Université (CAS) url: https://cas.univ-ville.fr # shib: # credentials-request-header=MEMBER security.shib.: MEMBER # group-mapping-role-admin=: cn=for.esup-signature.admin,ou=groups,dc=univ-ville security.shib.# group-mapping-role-manager=: cn=for.esup-signature.manager,ou=groups,dc=univ-ville # idp-url: https://idp.univ-ville.fr # principal-request-header: REMOTE_USER # title: Compte d’un autre établissement (Shibboleth) ws: ws-access-authorize-ips: 127.0.0.1 |
fs (file system)
La partie file system (fs) permet de configurer une source principale de donnée pour chaque type de stockage (smb, cmis, vfs). esup-signature ne prend en charge qu'une seule source par type.
Bloc de code |
---|
fs.smb-uri=smb://stockage.univ-ville.fr fs. # smb-login=: esup-signature fs.# smb-password=: ******** fs.# smb-uri: smb://smb.univ-ville.fr vfs-uri: /tmp # cmis-uri=: https://nuxeoesup-signature.univ-ville.fr fs./nuxeo # cmis-login=: Administrator fs.# cmis-password=: Administrator fs.# cmis-respository-id=: default fs.# cmis-root-path=: /default-domain/workspaces fs.vfs-uri=/tmp |
sign
Vous pouvez ajuster finement les paramètres de signature électronique en modifiant les lignes suivante:
Bloc de code |
---|
sign.default-signature-form=XAdES //format par défaut en cas de signature non visuelle sign.password-timeout=60000 sign.: cades-digest-algorithm: SHA256 cades-signature-level: CAdES_BASELINE_T container-type: ASiC_E default-signature-form: XAdES pades-digest-algorithm=: SHA256 sign. pades-signature-level=: PAdES_BASELINE_T sign.xades-digest-algorithm=SHA256 sign.xades-signature-level=XAdES_BASELINE_T sign.cades password-timeout: 60000 signature-packaging: ENVELOPED xades-digest-algorithm=: SHA256 sign.cades xades-signature-level=CAdES: XAdES_BASELINE_T sign.container-type=ASiC_E sign.signature-packaging=ENVELOPED |
Paramètres de traitement des PDF
Bloc de code |
---|
pdf.sign-width-threshold=150 //si l'image de la signature dépasse 150 pixels, elle sera affichée à l’échelle 1/2 pdf.pdf-to-image-dpi=150 //résolution de le prévisualisation des pages pdf pdf.width=594 //largeur d'une page pdf pdf.height=842 //hauteur d'une page pdf pdf.convert-to-pdf-a=true //active la conversion en PDF/A pdf.pdf-a-level=2 //version de PDF/A |
Quelques vérifications techniques
Conversion PDF/A
Trusted List
Scheduler
Logo du visa
convert-to-pdf-a: true
height: 842
path-to-g-s: /usr/bin/gs
pdf-a-level: 2
pdf-to-image-dpi: 72
sign-width-threshold: 150
width: 595 |
Quelques vérifications techniques
Tests d’intégration
Lors de la compilation un certain nombre de tests vont démarrer. Ils contrôlent la bon fonctionnement de votre configuration et de votre environement.
Ces tests peuvent être lancés indépendamment en utilisant la commande :
Bloc de code |
---|
mvn test |
...