Accueil > Actualités > Sycomore > Nouveautés Sycomore v20.09
Dernière mise à jour le 14 septembre 2020

Nouveautés Sycomore v20.09

3 nouvelles fonctionnalités vous sont proposées dans cette version de SYCOMORE

  • Nouvel écran de dépôt de fichier
  • Nouvel écran de détail d’un dépôt
  • Valorisation des habilitations de niveau FQR

Nouvel écran de dépôt de fichier

L’écran de dépôt de fichier a été revu pour être harmonisé avec les dernières évolutions des écrans de l’application.
Il apporte la possibilité de déposer un fichier par ’glisser et déposer’ .
Pour cela il suffit de déposer le fichier dans l’espace dédié dans l’écran.

Pour pouvoir déposer un fichier, il faut :

  • Sélectionner un type de fichier, si le sélecteur de FQAs est actif,
  • Sélectionner un FQA si le sélecteur de FQAs n’est pas actif.
    S’il existe un seul FQA pour un type de fichier, celui-ci est sélectionné automatiquement.
    Le libellé et la référence ne sont pas obligatoires, et seront générés automatiquement si ceux-ci ne sont pas remplis par l’utilisateur.

Nouvel écran d’upload de fichier :

Nouvel écran de détail d’un dépôt

L’écran de dépôt de fichier a été repris pour être harmonisé avec les dernières évolutions des écrans de l’application.
L’ensemble des informations présentes et des actions possibles des anciens écrans ont été conservées, quelques emplacements ont cependant été modifiés.

Le bandeau de détail d’un dépôt, déjà présent dans les écrans de suivi et d’historique des dépôts, a été intégré à ce nouvel écran de détail.
On observera en particulier l’élément affichant l’état du dépôt selon l’étape de la chaîne de validation engagée. Ici apparaissent les transitions d’état que le dépôt a suivies, selon un fil d’historique des actions menées ainsi que leurs auteurs.

Depuis ce bandeau de détail, il est maintenant possible d’éditer le commentaire du dépôt ou d’ajouter, modifier ou supprimer une pièce jointe.

Nouvel écran de détail d’un dépôt :

Le seul changement notoire concerne l’étape de validation interne du dépôt et de ses remises :

  • Il n’est plus nécessaire de valider toutes les remises pour effectuer la validation interne d’un dépôt
  • Les remises sont dorénavant considérées validées par défaut
  • Pour exclure une remise, il faut explicitement la rejeter
  • Tant que le dépôt n’a pas été validé, il est possible de réintégrer une remise rejetée

Les remises en attente de validation sont considérées validées :

Le rejet d’une remise peut être annulé

Valorisation des habilitations de niveau FQR

Lors de la création d’un FQR (Flux Qualifié Retour), des habilitations par défaut sont désormais créées.
Pour chaque utilisateur disposant d’une habilitation sur le compte émetteur associé au FQR :

  • Si l’utilisateur est habilité en "Gestion du compte", alors l’utilisateur disposera sur le FQR des habilitations suivantes :
    • Consultation
    • Téléchargement
    • Purge
  • Si l’utilisateur est habilité en "Consultation des opérations", alors l’utilisateur disposera sur le FQR des habilitations suivantes :
    • Consultation
    • Téléchargement

A noter qu’aucun abonnement aux notifications n’est valorisé par défaut, ceci afin d’éviter d’émettre des notifications sans que les utilisateurs l’aient explicitement demandé.
De plus, le paramètre de restriction d’auto-affectation des habilitations est pris en compte.
Si un utilisateur avec le rôle exploitant crée le FQR et que la fonction de restriction est activée sur la plateforme, alors aucune habilitation n’est posée par défaut pour cet utilisateur.

L’application de ces habilitations est effective lors de la création explicite d’un FQR par un utilisateur ou lors de la création automatique des FQR suite à la qualification d’un fichier bancaire.

5.26 - Montée de version Flyway

La version de flyway a été migrée à la version 6.5.0.
La version du connecteur MariaDb a été migrée à la version 2.6.1.
La version du connecteur MySQL a été migrée à la version 8.0.20.
Flyway 6.5.0 est compatible avec les versions de JAVA :

  • Java 12
  • Java 11
  • Java 10
  • Java 9
  • Java 8

Mode opératoire pour la montée de la version 6.5.0 de Flyway (à exécuter manuellement) :

  • Renommer la table SCHEMA_VERSION en FLYWAY_SCHEMA_HISTORY
    • Requête SQL correspondante : RENAME TABLE schema_version TO flyway_schema_history ;
    • Si la table n’est pas renommée ou spécifiée, le message d’erreur suivant apparaît : Failed to execute goal org.flywaydb:flyway-maven-plugin:6.5.0:migrate (default-cli) on project post-bdd-sycomore : org.flywaydb.core.api.FlywayException : Found non-empty schema(s) `nom base sycomore ` but no schema history table. Use baseline() or set baselineOnMigrate to true to initialize the schema history table.
    • Il possible de ne pas renommer cette table en utilisant le paramètre table pour la commande flyway migrate.
  • Exécuter la commande flyway repair pour mettre à jour les checksum des scripts SQL corrigés (la version 6.5.0 de flyway est plus stricte sur le contenu des scripts SQL que la version 4.0.3 précédemment utilisée). Les scripts corrigés sont les suivants :
    • 4.23.00.21 (problème sur un commentaire)
    • 5.02.00.03 (mauvais encodage)
    • 5.03.00.05 (problème sur un commentaire)
    • 5.10.00.19 (problème sur un commentaire)
    • 5.12.00.02 (mauvais encodage)
    • 5.20.00.08 (problème sur un commentaire)

5.26 - #6395 : Migration SpringBoot + Tomcat

Mise à jour du socle technique des applications spingBoot, passage de la version 2.0.7 à 2.3.1.
Tomcat est mis à jour à la version 9.0.37.
Des paramètres ont été modifiés :

  • logging.file en logging.file.name

Si l’AJP est autorisé, il est nécessaire de le désactiver pour l’instant pour la gateway, le backend et strategia. Il n’est, normalement, plus utilisé.
server :
tomcat :
ajp :
enabled : false

  • Spring-Boot-2.0-Migration-Guide
  • Spring-Boot-2.1-Release-Notes
  • Spring-Boot-2.2-Release-Notes
  • Spring-Boot-2.3-Release-Notes

#5388 : Migration Tomcat SpringBoot : Vulnérabilités détectées dans tomcat 8.5.35 embarqué dans SpringBoot

  • Montée de version du tomcat à la version 9.0.37.
  • Ajout de la configuration de la version du tomcat à intégrer dans les applications Spring Boot.

#6870 - Migration SpringBoot de l’application d’inscription des prospects

Passage de l’application d’inscription des propects en version 2.00.06.

#6871 - Migration SpringBoot de l’application validation des IBAN

Passage de l’application validation des IBAN en version 1.04.00.

#6873 : Corriger la définition des versions des drivers MySQL et MariaDB

  • Montée de version du connecteur MariaDB à la version 2.6.1 (Compatible avec tous les serveurs à partir de la version 5.5.3).
  • Ajout de la configuration de la version du connecteur MariaDB à intégrer dans les applications Spring Boot.
  • Montée de version du connecteur MySQL à la version 8.0.20 (Compatible avec les serveurs 8.0.14 et versions ultérieures, 5.7.25 et versions ultérieures, et 5.6.43 et versions ultérieures).
  • Ajout de la configuration de la version du connecteur MySQL à intégrer dans les applications Spring Boot.

5.26 - Authentification des Web Services par certificat

Il est désormais possible d’authentifier les Web Service par certificat.
Pour cela, le reverse proxy en frontal de la plateforme doit prendre en charge la propagation du certificat sur les requêtes HTTP.

Les URLs susceptibles de mettre à disposition des web services sont */api/** et */rest/**.

Les appels aux web services peuvent être testés via postman en configurant l’outil afin qu’il insère un certificat dans les requêtes (Menu File > Settings, onglet Certificates) (cf. https://learning.postman.com/docs/sending-requests/certificates/).

Configuration Gateway

Il peut être nécessaire de revoir la configuration de la Gateway afin de s’assurer que les URLs d’accès aux web services sont sécurisées via l’application Gateway.
Pour cela, il faut s’assurer que les URLs en question ne sont pas référencées par la propriété ccom.post.securite.disabled.urls.
Cette propriété permet de lister les URLs qui ne doivent pas être sécurisées par la Gateway.
L’ensemble des URLs pointant vers l’application web portant les IHM ainsi que certains web services ne doivent pas être sécurisées.
Afin d’autoriser l’authentification par certificat des web services portés par cette application, une exception doit être gérée pour les URLs d’accès à l’application web.
Pour faciliter la définition des URLs à ne pas sécuriser, il est désormais possible de les définir, soit via une expression Ant simple (cas actuel), soit via une expression régulière plus complexe.
Ces paramètres sont passés à l’application via les propriétés suivantes :

  • ccom.post.securite.disabled.urls : Liste des URIs, non sécurisées par la Gateway, au format Ant. Possibilité de fournir une liste séparée par des virgules.
  • ccom.post.securite.disabled.urlsRegExp : Liste des URIs au format Expression régulière, non sécurisées par la Gateway

Par exemple, l’expression suivante permet de ne pas sécuriser au niveau de la Gateway les requêtes vers le contexte /sycomore, à l’exception des requêtes pointant vers les web services avec une URL /sycomore/rest/** :

ccom.post.securite.disabled.urlsRegExp= \/sycomore\/(?!rest\/).*

Voici un exemple de configuration de la gateway :

ccom :
post :
securite :
disabled :
# Liste des URIs, séparées par une virgule, non sécurisées par la Gateway
# C’est le cas des URI ciblant les applications IHM possédant leur propre politique sécuritaire
urls :
- /post-ihm-exploitation/**
- /documentation/**
- /api/authent/sso/**
- /sso/**
# Liste des URIs au format Expression régulière, non sécurisées par la Gateway
# On ne sécurise pas les requêtes vers l’application web, sauf celles ciblant les web services (**/rest/**)
urlsRegExp :
- \/sycomore\/(?!rest\/).*

Exemple de configuration Apache

La configuration suivante est un exemple de configuration pour un reverse proxy Apache :


<IfModule>
SSLVerifyClient optional
SSLVerifyDepth 3

<IfModule>
# Insertion du certificat dans l’entête HTTP
RequestHeader set SSL-CLIENT-S-DN "%SSL_CLIENT_S_DNs"
RequestHeader set SSL-CLIENT-I-DN "%SSL_CLIENT_I_DNs"
RequestHeader set javax.servlet.request.X509Certificate "%SSL_CLIENT_CERTs"

5.26 - Web service de demande de création d’abonnements

Ajout d’un nouveau paramètre technique dans le corps de la requête :

  • DelaiStockageReleves
    • Définit le nombre de jours de conservation des relevés de comptes dans le module de trésorerie. Les relevés de comptes antérieurs au délai de stockage seront supprimés de la plateforme.
    • Valeur par défaut : 400

Les paramètres ci-dessous ne sont plus pris en compte par le web service :

  • PlageStockageSoldesPrevDelaiMin
    • Plage de stockage des soldes relevés : délai min
  • PlageStockageSoldesPrevDelaiMax
    • Plage de stockage des soldes relevés : délai max

5.26 - Nouveaux Web Services

WS d’accès aux remises d’un dépôt

Ce service permet de retourner la liste des remises présentes dans un fichier déposé dans le workflow de validation.

GET /api/v1/abonnements/YlRHV/depots/1647213797/remises ?page=1&nbElementsMax=25&attributTri=NOM_EMETTEUR&sensTri=DESC HTTP/1.1
Accept : application/json
Host : localhost:8080

WS d’accès aux opérations d’un dépôt

5.25 - [CA-TS] Acces à l’application d’ajout d’abonnement simplifiée

Ce service permet de retourner la liste des opérations présentes dans un fichier déposé dans le workflow de validation.

GET /api/v1/abonnements/NomAbonne(reference=CE4566)/depots/123456/operations ?remise=2&page=1&nbElementsMax=1000&attributTri=REFERENCE&sensTri=DESC HTTP/1.1
Accept : application/json
Host : localhost:8080