Nouveautés de la version 4.4
1. Mise à jour de WildFly
Migration vers WildFly 33 (Toujours compatible Java 11, 17 et 21) ;
NodeJS version 16 n’est plus supporté en raison de la mise à jour de la librairie Puppeteer utilisée principalement pour générer les rapports PDF avec l’API Ontomantics.
Ce qui implique que RedHat/CentOS 7, Ubuntu 17 et Debian 9 et antérieurs ne sont plus supportés par la plateforme (sauf si cette fonctionnalité n’est pas utilisée) ;
Le script config-datasource vérifie désormais que le dialecte sélectionné est bien compatible et est le meilleur avec la version de la base de donnée ;
Lors de la migration ou du démarrage, les mises à jour de NodeJS ne seront plus effectuées si la version détectée est incompatible;
Mise à jour mineure des dépendances (atmosphere, dropwizard metrics-core, pdf.js).
2. Navigateurs supportés pour la version 4.4
Les versions minimales sont les mêmes qu’en 4.3.
3. Gestion de l'authentification à deux facteurs TOTP
L’authentification à deux facteurs consiste à demander à l’utilisateur un code à usage unique après qu’il a validé son mot de passe. Ces codes à usage unique sont généralement composés de six chiffres renouvelés toutes les 30 secondes et sont générés par une application dédiée sur le mobile.
Les connexions via SSO ne sont pas concernées puisque c’est le rôle du SSO de gérer le second facteur.
- Dans la politique de mot de passe, deux options Activer l'authentification à deux facteurs TOTP sont disponibles pour les comptes privilégiés et les comptes standards ;
- Un paramètre Émetteur affiché dans l'application d'authentification apparaît alors. La valeur par défaut est le nom d’hôte ou le nom de l’entreprise en mode multi-entreprise PASS ;
- Les comptes sont considérés comme privilégiés s’ils sont membres d’un groupe ayant l’option Groupe de compte à privilèges utilisant la politique de mot de passe renforcée comme les comptes système Administrateurs et Designers ;
- À la première connexion d’un compte, il sera demandé à l’utilisateur d’activer la connexion à deux facteurs :
- L’utilisateur devra télécharger une application telle que FreeOTP sur son mobile ou une extension pour son navigateur telle que Authenticator ;
- La plateforme affichera alors un QRCode à scanner avec l’application ;
- En cas d’impossibilité de scanner le QRCode, on peut afficher les informations à entrer manuellement dont la clé secrète, l’algorithme… ;
- L’utilisateur devra ensuite entrer le code à six chiffres pour vérifier que la configuration est correcte ;
- Apparaîtront ensuite 16 clés de récupération qui devront être sauvegardées en lieu sûr (de préférence dans un gestionnaire de mot de passe sécurisé) en cas de perte du mobile ;
- À chaque connexion suivante, il sera demandé un code à six chiffres ou un code de récupération ;
- En cas d’utilisation d’un code de récupération, il sera demandé si l’utilisateur souhaite reconfigurer l’authentification à deux facteurs.
- L’utilisateur devra télécharger une application telle que FreeOTP sur son mobile ou une extension pour son navigateur telle que Authenticator ;
- Un administrateur peut réinitialiser les informations TOTP d’un compte sur le formulaire de l’utilisateur ;
- Il est dorénavant possible de mettre des mots de passe de longueurs différentes pour les comptes privilégiés et standards ;
- Il est enfin possible de spécifier une durée d’expiration des mots de passe différente pour les comptes privilégiés et standards. La CNIL recommande de ne pas faire expirer les mots de passe des comptes standards, mais de le faire pour les comptes privilégiés qui doivent utiliser un gestionnaire de mot de passe.
4. Amélioration de l'intégration de l'Intelligence Artificielle
Cette version améliore la prise en charge de l’Intelligence Artificielle sur la plateforme par l’exploitation de l’API Assistant d’OpenAI qui permet :
- De répondre à des questions en s’appuyant sur la documentation de la plateforme ;
- D’être moins limité par le nombre de Tokens Par Minutes de l’API /chat/completion empêchant son usage dans les gros modèles de données ;
- De demander la génération de fichier Text/Word/Excel/PDF… (la génération d’images via Dall-E n’est pas implémentée pour le moment) ;
Le Chabot apparaît dorénavant dans tout le Designer.
Il peut afficher un lien vers la page de la documentation correspondante.
Il gère désormais l’envoi de fichiers via l’utilisation de l’API assistant OpenAI.
Les types de fichier supportés par l’API OpenAI sont listés à cette adresse : https://platform.openai.com/docs/assistants/tools/code-interpreter#supported-files.
Les fichiers Word DOC, XLS, PPT et les fichiers LibreOffice ODT, ODS et ODP sont également acceptés. Ils seront convertit automatiquement au format DOCX, XLSX, PPTX avant envoi ;
Avec l’API /chat/complétion de base, seules les images PNG, JPG, JPEG, GIF et WEBP sont gérées.
Dans les U.C. des écrans :
- Possibilité de générer des écrans avec des contrôles ;
- Possibilité de générer des écrans depuis une table existante du modèle de données ;
Dans les U.C. des contrôles :
- Possibilité de générer des contrôles ;
- Si l’écran contient un formulaire, alors la plateforme peut détecter la table liée et y ajouter les nouveaux champs et les insérer dans l’action d’ajout/modification et dans la règle de remplissage ;
Dans les U.C. de création des méthodes Web :
- Possibilité de générer des méthodes via l’utilisation du format YAML OpenAPI ;
- Possibilité de générer des méthodes depuis une table existante du modèle de données ;
- Possibilité de générer des méthodes depuis une commande curl d’exemple ;
- Possibilité de demander la création d’une commande curl d’exemple pour appeler une méthode existante ;
Dans les U.C. de fourniture des méthodes Web :
- Possibilité de générer des méthodes via l’utilisation du format YAML OpenAPI ;
- Possibilité de générer des méthodes depuis une commande curl d’exemple ;
- Possibilité de demander la création d’une commande curl d’exemple pour appeler une méthode existante ;
Dans les U.C. de création des méthodes métier :
- Possibilité de générer des méthodes depuis une table existante du modèle de données.
Dans les U.C. des requêtes et des requêtes et des règles :
- Possibilité de générer des requêtes de sélection depuis les tables existante des modèles de données liés.
Ajout d’un composant Agent conversationnel dans le Player :
- Il est lié à un jeu de données contenant une colonne Contenu avec les messages et les fichiers envoyés et reçus et une colonne Role contenant les valeurs :
system : contenant le contexte ;
user : pour les messages envoyé par l'utilisateur ;
fileSend : l'ID des fichiers chargé par l'utilisateur ou disponible avec le contexte ;
assistant : pour les réponses de l'IA ;
fileReceived : pour les fichiers créés par l'IA ;
error: si une erreur survient. - Si utilisation de l’API assistant OpenAI, on peut lui ajouter des données supplémentaires en le liant à des jeux de données et ou des requêtes globales. Des fichiers CSV seront alors automatiquement générées et envoyé à l’API.
- Une option permet d’activer le bouton de chargement des fichiers.
- Une propriété En cours d’exécution lui permet de lancer l’exécution par comportent.
5. La gestion des SSO a été revue
Ajout du support du protocole d’authentification SSO SAML en plus d'OpenID Connect ;
Il est désormais possible de définir plusieurs fournisseurs d’authentification SSO OpenIDConnect ou SAML pour afficher plusieurs boutons de connexion sur le formulaire de connexion (en mode mixte) ;
Ajout d’une option pour importer les groupes avec OpenID Connect et SAML qui seront créés lorsqu’un utilisateur se connectera (ou dans le cas d’un SSO Microsoft Azure, une question est posée lors de la validation du formulaire pour tout importer) ;
Ajout d’une option pour limiter un SSO OpenID Connect ou SAML à une ou plusieurs applications ;
Ajout d’un bouton dans le menu pour passer du mode mixte au mode redirection et vice versa ;
Ajout d’une option permettant d’importer les comptes à leur première connexion. Si l’import des groupes est actif, le compte sera automatiquement ajouté aux groupes dont il appartient, et sera supprimé des groupes SSO auxquels il n’appartient plus.
Afin de pouvoir récupérer les noms des groupes Azure, il faut configurer les jetons pour qu'ils retournent les groupes et autoriser l'API Group.Read.All sur le portail Azure. Pour cela :
- Aller sur la page des inscriptions d'application dans : Azure AD B2C ;
- Sélectionner l'application enregistrés ;
- Aller dans le menu Gérer / Configuration du jeton ;
- Puis cliquer sur Ajouter une revendication de groupes ;
- Sélectionner les types de groupes à inclure dans les jetons, puis valider avec le bouton Enregistrer ;
- Aller dans le menu Gérer / API Autorisées ;
- Puis cliquer sur Ajouter une autorisation / Microsoft graph / Autorisation d'application / Group ;
- Sélectionner Group.read.all puis valider avec le bouton Ajouter les autorisations ;
- Puis enfin, cliquer sur le bouton Accorder le consentement d'administrateur.
6. Autres fonctionnalités
Le composant Disposition Nord / Sud / Est / Ouest a été revu pour utiliser le CSS Grid.
Il est dorénavant possible de forcer les panneaux Est et Ouest à prendre toute la hauteur en modifiant le style CSS grid-template-areas. Par exemple :
grid-template-areas: "west north north" "west center east" "west south south";
Le composant Panneau dépliable a été optimisé et gère mieux le défilement du parent si l’entête ou le pied de page n’ont pas les classes sticky-top et sticky-bottom ;
Ajout d’une option sur les contrôles et les éléments de menu pour échapper toutes les balises HTML des labels, bulle d’aides, élément de listes, cellules de tableaux.
Le composant Cadre peut désormais afficher une icône et un badge.
Le composant Bouton peut désormais afficher un badge.
Le serveur conserve les clés d’activation si la VM est déplacée et que la clé matérielle a changé. Cela permet de ne pas avoir à redemander une activation si la VM revient sur le serveur d’origine et que l’ancienne clé n'a pas expiré.
L’historique des requêtes du modèle de donnée indique désormais le nom du serveur d’origine (ou de l’entreprise en mode multi-entreprise) où les requêtes ont été jouées.
L’assistant de création de formulaire permet la sélection d’une colonne Ordre permettant d’activer la réorganisation des lignes du tableau et de faire un max +1 sur les actions d’insertion.
L’adresse IP des utilisateurs apparaît désormais dans le tableau Historique des connexions.
Les fonctions PostgreSQL importées dans un modèle affichent désormais leur type retour.
Support du type Geometry pour les 4 types de base dans les modèles de données.
Ajout, sur le composant Carte, d’un type de forme géométrique supplémentaire GeoJSON permettant d’afficher tout un polygone (ou autre) représenté dans une seule cellule du jeu de données.
Ajout, sur le composant Carte, de l’évènement Au changement de délimitations accompagné des quatre propriétés limites Nord / Sud / Est / Ouest.
Possibilité de télécharger le fichier de description YAML des méthodes Web créées manuellement en appel.
Possibilité, pour les opérateurs IN et NOT IN, de faire une comparaison sur plusieurs colonnes.
Les validateurs requis des contrôles de saisie peuvent être désactivés par un comportement.
Ajout du temps de connexion dans l’export / import des utilisateurs.
Possibilité de créer une boite de dialogue, une boite de message ou de notification depuis leurs actions d’ouverture.
Ajout d'un filtre de recherche dans la boite à outils du Drag & Drop.
Ajout d'un filtre de recherche dans les logs.
Ajout de propriétés Colonne filtrable et d’export dans le formulaire de sélection multiple des colonnes de tableaux.
Les tableaux droits et croisés préservent les styles Inline : couleurs de texte et du fond, le gras et l’italique dans l’export Excel.
Dans les actions d'insertion ou de mise à jour d'un jeu de données, ajout d'un bouton pour insérer de nouvelles colonnes directement dans le tableau de sélection des colonnes.
Événement cliquable sur le contrôle panneau.
Dans l’action Mettre à jour les paramètres d'un utilisateur, il est dorénavant possible de choisir le mode de gestion des mot de passes parmi :
- Aucune action ;
- Envoyer un lien d’activation par e-mail ;
- Envoyer un lien pour affecter le mot de passe par e-mail ;
- Générer un mot de passe aléatoire et l'envoyer par e-mail ;
- Envoyer par e-mail le nouveau mot de passe affecté par e-mail ;
- Réinitialiser l’authentification à deux facteurs ;
- Générer un lien d’activation qui sera sauvé dans une variable ;
- Générer un lien pour affecter le mot de passe qui sera sauvé dans une variable.
La librairie String possède plusieurs nouvelles fonctions : startsWithIgnoreCase, endsWithIgnoreCase, removeStart, removeStartIgnoreCase, removeEnd, removeEndIgnoreCase, remove, removeIgnoreCase, strip, stripStart, stripEnd, leftPad et rightPad.
Il est possible de générer un document PDF détaillant les spécifications d’une application avec des captures d’écran et schémas de workflow…
No Comments