esup-papercut
Pages enfant
  • Esup-papercut

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.

...

  • un serveur CAS pour l'authentification / identification, celui-ci doit permettre à esup-papercut de récupérer  en tant qu'attributs utilisateur CAS :
    • l'identifiant utilisateur tel q'utilisé dans papercut 
    • l'email de l'utilisateur
    • éventuellement un attribut supplémentaire permettant d'identifier si l'utilisateur doit avoir le rôle ADMIN ou le rôle USER : 

      pour

      Pour que la configuration "esup.contexts.test.esupPapercutCasAttributeRuleUser.uid=.*" fonctionne par exemple, il faut donc que l'attribut uid soit passé comme atrribut utilisateur par CAS

  • la solution Papercut 
    • que celle-ci soit installée et en production dans l'établissement, 
    • que celle-ci utilise des comptes dont les identifiants sont connus par CAS, 
    • que son Web Service soit accessible depuis esup-papercut - IP déclaré dans le back-end papercut et token d'authentification connu de esup-papercut
  • un compte paybox ou PayIzly est requis si vous souhaitez proposer la fonctionnalité de paiement en ligne
    • des paramètres d'identification de ce compte doivent être renseignés dans esup-papercut
    • pour paybox, esup-papercut utilise l'intégration paybox version hmac (sans module cgi) - il faut donc un compte paybox avec un hmac de configuré.
      Actuellement (contrainte paybox, cf documentation paybox ManuelIntegrationPayboxSystem_V6.1_FR.pdf fin de la page 18) si vous avez un compte paybox utilisé par une application faisant de l'intégration paybox version "module cgi" (ancienne méthode d'intégration), vous ne pouvez pas utiliser celui-ci (il faudra ouvrir un compte paybox supplémentaire). 
  • En version 2.0, esup-papercut  n'est plus portlet mais servlet : esup-papercut est donc indépendant de l'ENT type EsupPortail/uPortal - il doit être installé en tant qu'application web servlet Java de manière indépendante et autonome.

Téléchargement / code source

https://github.com/EsupPortail/esup-papercut

La version 2.0.4 est disponible depuis avril 2022 : https://github.com/EsupPortail/esup-papercut/

...

    • Si vous avez un doute sur les attributs remontés par CAS à votre service, en mettant org.jasig.cas.client.validation.Cas20ServiceTicketValidator en debug, vous obtiendrez l'assertion complète CAS, celle-ci devra être de la forme suivante, et donc contenir la balise <cas:uid> 

      Bloc de code
      languagexml
      themeRDark
      <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
          <cas:authenticationSuccess>
              <cas:user>toto</cas:user>
              <cas:attributes>
               	....
                  <cas:uid>toto</cas:uid>
                  ...
                  ...

      Si il vous manque des attributs, vous devez (re)configurer votre CAS ou tout du moins la configuration du service liée à votre esup-papercut  côté CAS pour que celui-ci puisse récupérer les attributs souhaités.

  • la solution Papercut 
    • que celle-ci soit installée et en production dans l'établissement, 
    • que celle-ci utilise des comptes dont les identifiants sont connus par CAS, 
    • que son Web Service soit accessible depuis esup-papercut - IP déclaré dans le back-end papercut et token d'authentification connu de esup-papercut
  • un compte paybox ou PayIzly est requis si vous souhaitez proposer la fonctionnalité de paiement en ligne
    • des paramètres d'identification de ce compte doivent être renseignés dans esup-papercut
    • pour paybox, esup-papercut utilise l'intégration paybox version hmac (sans module cgi) - il faut donc un compte paybox avec un hmac de configuré.
      Actuellement (contrainte paybox, cf documentation paybox ManuelIntegrationPayboxSystem_V6.1_FR.pdf fin de la page 18) si vous avez un compte paybox utilisé par une application faisant de l'intégration paybox version "module cgi" (ancienne méthode d'intégration), vous ne pouvez pas utiliser celui-ci (il faudra ouvrir un compte paybox supplémentaire). 
  • En version 2.0, esup-papercut  n'est plus portlet mais servlet : esup-papercut est donc indépendant de l'ENT type EsupPortail/uPortal - il doit être installé en tant qu'application web servlet Java de manière indépendante et autonome.

Téléchargement / code source

https://github.com/EsupPortail/esup-papercut

La version 2.1.1 est disponible depuis novembre 2025 : https://github.com/EsupPortail/esup-papercut/

Changelog

Novembre 2025 : 2.1.1

Mars 2025 : 2.1.0

  • Fix izlypay callback
  • Export CSV : pagination par 100.000 suffisant et beaucoup plus rapide
  • Mise à jour Spring-boot
  • Possibilité de récupérer un export CSV via une authentification par clef envoyée en entête http
    Option donnée uniquement si export-public-hash-enabled à true :
    esup.contexts.test.export-public-hash-enabled=true

    La clef est propre à chaque administrateur (et stockée en base)

    curl -H 'x-APIKey: d3cd4da9408a79e0558f6899dc9ce77c5ca02cff6c43d720' https://esup-papercut.univ-ville.fr/test/api/csv-online

Avril 2022 : 2.0.4

  • Mise à jour Spring
  • Mise à jour chartjs
  • Cache Control et cache busting

...

Bloc de code
languagetext
themeRDark
cas.key=EsupPapercutCAsUnivVille
cas.url=https://cas.univ-ville.fr
cas.service=https://esup-papercut.univ-ville.fr


Configurations par contexte 

Mis à part esup.default-context qui permet de définir le contexte par défaut à afficher à l'utilisateur (sachant qu'un contexte n'est proposée que si l'utilisateur y a le rôle de USER, MANAGER ou ADMIN), toutes les autres configurations sont données par contexte.

...

  • server : serveur papercut présentant un accès HTTP(S) pour appel du Web Service
  • port : port du serveur papercut présentant un accès HTTP(S) pour appel du Web Service
  • authToken : token (secret) partagé avec papercut (configuration disponible dans papercut : Options > Actions > Éditeur de configuration (avancé) > auth.webservices.auth-token).
  • accountName: préférence portlet accountName - à définir lors de l'utilisation de Papercut avec l'option "comptes multiples" activée.

Configurations paybox

Sous-configurations de esup.contexts.test.paybox (avec test un contexte) ; si vous ne souhaitez pas proposer de formulaires de paiement via paybox, omettez simplement de configurer (commentez les ou supprimez les du fichier de configuration) l'ensemble de ces paramètres esup.contexts.test.paybox.*

  • legende : légende du formulaire paybox présentant les différents montants disponibles

  • site : numéro de SITE paybox (7 chiffres)

  • rang : numéro de RANG paybox (2 chiffres)
  • identifiant : numéro d’identifiant Paybox (1 à 9 chiffres)
  • devise : numéro de la devise (978 pour l'euro)
  • forwardServerUrl: url utilisée pour construire l'url portail sur la portlet esup-papercut pour la redirection de l'utilisateur après paiement sur paybox
  • reponseServerUrl: url utilisée pour construire
    • l'url de callback donnée à paybox : en /test/payboxcallback (avec test le contexte)
    • et l'url sur esup-papercut pour la redirection de l'utilisateur après paiement sur paybox si forwardServerUrl n'est pas défini.
  • payboxActionUrls: urls d'appel pour effectuer les transactions paybox
    • en production, pensez à supprimer l'url de test de paybox en preprod-tpeweb
    • paybox propose plusieurs urls pour redonder leurs services ; esup-papercut utilise la première url qui répond pour la proposer à l'utilisateur (un test de connexion est effectué)
    payboxServersIP : esup-papercut vérifie sur l'url de callback que le client correspond bien à une de ces IP (paybox
    • )
  • derPayboxPublicKeyFile : clef publique de paybox permettant de décoder la signature envoyée par paybox
  • hmacKey : clef privée (secrète) du compte paybox permettant à esup-papercut de construire le hmac contenant les paramètres du paiement (site, rang, identifiant, devise, montant, url de callback, ...), celui-ci est envoyé avec les paramètres non cryptés (et dans un ordre bien défini) à paybox via le client (post http)

...

Configurations de l'anonymisation 

Sous-configurations de esup.contexts.test.anonymization (avec test un contexte) ; permet d'anonymiser les anciens logs (de plus de x jours) en remplaçant les références et identifiants utilisateurs par un libellé "anonymous" en base de données. Conserver les logs ainsi permet de garder trace de ces transactions pour statistiques uniquement.

  • enabled : activer l'anonymisation des logs pour le contexte (true ou false, par défaut à false cad désactivé)
  • oldDaysTransactionsLogs : nombre de jours d'ancienneté du log à partir du quel on anonymise le log.

...

EsupPapercut v2 et IzlyPay - diaporama et vidéo de présentation.

Ancienne présentation

Voici une présentation interne d'esup-papercut à l'Université de Rouen Normandie - elle correspond à la version 1 d'esup-papercut, quand esup-papercut était portlet et donc lié à l'ENT EsupPortail/uPortal.

...