Esup-Signature

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: ajout monitoring

Sommaire
maxLevel1

...

Tomcat

Configuration du serveur Tomcat embarqué dans Spring Boot.

...

La norme définit quatre classes de conformité :

  • AdES_BASELINE_B : Signature basique
  • AdES_BASELINE_T : Basique + horodatage
  • AdES_BASELINE_LT : T + matériel de validation à long terme
  • AdES_BASELINE_LTA : LT + horodatages périodiques

Configuration DSS et OpenSC

Bloc de code
languageyaml
 sign:
    aes-key: "0000000000000000"
    
    cades-digest-algorithm: SHA256
    cades-signature-level: CAdES_BASELINE_LT
    
    container-type: ASiC_E
    default-signature-form: XAdES
    
    pades-digest-algorithm: SHA256
    pades-signature-level: PAdES_BASELINE_LT
    
    password-timeout: 60000
    signature-packaging: ENVELOPED
    
    xades-digest-algorithm: SHA256
    xades-signature-level: XAdES_BASELINE_LT
    
    sign-with-expired-certificate: false
    
    # Paramètres OpenSC (alternative libre au driver PKCS11 propriétaire)
    opensc-command-sign: "pkcs11-tool --sign -v --id {0} -p {1} --mechanism SHA256-RSA-PKCS --input-file {2} --output-file {3}"
    opensc-command-get-id: "pkcs11-tool -O --type pubkey"
    opensc-command-get-key: "pkcs11-tool -r --id {0} --type cert"
    opensc-command-cert-id: <cert-id>
    opensc-path-linux: ""
 

Logging - Logs de l'application

Configuration des fichiers de logs et niveaux de verbosité

Paramètres de chiffrement

aes-key

Clé AES(16bits) utilisée pour le chiffrement des mots de passe de keystores stockés en base de données (version 1.36.27 et antérieures).

Important : À partir de la version 1.36.27+, utilisez le paramètre aes256Key (32 bits) à la place. Si vous migrez depuis une version antérieure, conservez aes-key pour la migration des données existantes.

Paramètres de signature DSS

Algorithmes et niveaux de signature

Configurez séparément pour chaque format de signature :

  • CAdES : Signatures ASN.1/CMS
  • PAdES : Signatures PDF
  • XAdES : Signatures XML

Pour chaque format, définissez :

  • *-digest-algorithm : Algorithme de hachage (SHA256 recommandé)
  • *-signature-level : Niveau de conformité ETSI

container-type

Type de conteneur ASiC pour l'empaquetage (ex: ASiC_E)

default-signature-form

Format de signature par défaut (PAdES, XAdES ou CAdES)

signature-packaging

Mode d'intégration de la signature (ENVELOPED, ENVELOPING ou DETACHED)

password-timeout

Délai d'expiration du mot de passe en millisecondes

sign-with-expired-certificate

Autoriser les certificats expirés (développement/tests uniquement)



Logging - Logs de l'application

Configuration des fichiers de logs et niveaux de verbosité

Bloc de code
languageyaml
logging:
    file:
        name: logs/esup-signature.log
    pattern:
        console: "%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%5level) %clr(${PID:- }){magenta} %highlight(%X{userId:-system}){cyan} %yellow([%15.15t]) %clr(:) %m%n%wEx"
        file: "%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%5level) %clr(${PID:- }){magenta} %highlight(%X{userId:-system}){cyan} %yellow([%15.15t]) %clr(:) %m%n%wEx"
    level:
        root: info
        org.esupportail.esupsignature: info
        org.verapdf: error
        org.apache.pdfbox: error
        org.apache.fop: error
        eu.europa.esig.dss: error
---

#    config: classpath:logback-prod.xml

management - Informations et monitoring de l'application

Configuration des données retournées par http://esup-signature.univ.fr/actuator/health.

Bloc de code
languageshell
management:
    health
Bloc de code
languageyaml
logging:
    file:
        name: logs/esup-signature.log
    patternldap:
        console: "%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%5level) %clr(${PID:- }){magenta} %highlight(%X{userId:-system}){cyan} %yellow([%15.15t]) %clr(:) %m%n%wEx"
 enabled: false
    endpoints:
        jmx:
            file: "%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%5level) %clr(${PID:- }){magenta} %highlight(%X{userId:-system}){cyan} %yellow([%15.15t]) %clr(:) %m%n%wEx"
    level:
exposure:
                include: '*'
        web:
         root: info
   exposure:
            org.esupportail.esupsignature: info
   include: '*'
    org.verapdfendpoint: error
        org.apache.pdfbox: errorhealth:
        org.apache.fop: error
   show-details: ALWAYS    eu.europa.esig.dss: error
---

#    config: classpath:logback-prod.xml# NEVER pour ne pas afficher les détails

Pour accéder a actuator, il faut paramétrer les ip autorisée dans security.actuators-access-authorize-ips


Fichier logback.xml personnalisé

...

Note : Pour permettre l'exécution des web services depuis Swagger, modifiez supported-submit-methods avec ["get", "post", "put"]

...


Astuce

Passons à la partie déploiement : Compilation et déploiement