Aller au contenu principal

Paramètres du framework

Les paramètres transverses au framework — ceux qui ne sont rattachés ni à un connecteur, ni à un écran, ni à un menu — se modifient depuis Paramètres → Framework. La page est un formulaire piloté par schéma, avec une section par sujet : identité de l'application, pool de base de données par défaut, authentification, fournisseur IA, chiffrement et licence. L'enregistrement recharge le sous-système concerné.

Cette page liste chaque champ de l'onglet Framework, son effet et l'endroit où il se manifeste dans le reste de l'application.


Vue d'ensemble

Paramètres → Framework
AnnulerEnregistrer et recharger
Application
Nom
Liberty
Langue par défaut
en ▾
Origines CORS autorisées
Pool de base de données par défaut
URL
sqlite+aiosqlite:///liberty.db
Dialecte
sqlite ▾
Taille du pool
5
Authentification
Backend
Local — TOML ▾
Durée de vie du jeton d'accès
15 min
Durée de vie du jeton de rafraîchissement
7 jours
OIDC activé
○ Off

La maquette est repliée ; les sections IA, Chiffrement et Licence se présentent en dessous de la même manière.

Le formulaire a la même forme quel que soit le mode de déploiement — dev local, conteneur, Kubernetes. Les rares valeurs qui appartiennent légitimement à l'environnement (la clé de signature JWT, la clé maîtresse de chiffrement, la clé de licence, la clé d'API IA) sont référencées par nom dans les champs du formulaire et résolues au démarrage ; voir Variables d'environnement.


Application

ChampEffet
NomNom affiché dans l'en-tête et le titre de la page. Défaut Liberty.
Langue par défautLangue utilisée quand l'appelant ne transporte pas l'en-tête X-Liberty-Lang et n'a aucune préférence utilisateur. Défaut en.
Origines CORS autoriséesOrigines acceptées par le preflight CORS du navigateur. Ajouter le serveur de dev Vite (http://localhost:5173) pour le développement avec rechargement à chaud, l'origine du frontend de production quand le SPA est servi depuis un autre hôte.
Proxys de confiancePlages CIDR des reverse proxys auxquels le framework fait confiance pour les en-têtes X-Forwarded-*. Requis derrière nginx / Traefik pour que le framework voie l'IP cliente d'origine.
Répertoire statiqueChemin du SPA React construit. Défaut frontend/dist. Quand le répertoire n'existe pas, le serveur fonctionne en mode API seule (toutes les routes /api/* répondent, / renvoie 404). À utiliser quand le SPA est servi depuis un CDN.

Pool de base de données par défaut

Le pool par défaut porte la base de données utilisée par le framework lui-même — tables d'authentification quand Backend vaut db, historique des exécutions Nomaflow, verrous d'enregistrement, conversations IA. Tous les autres pools se définissent dans l'onglet Paramètres → Pools.

ChampEffet
URLURL async SQLAlchemy. SQLite pointe par défaut vers un fichier local liberty.db. PostgreSQL : postgresql+asyncpg://user:pass@host/db. Oracle mode thin : oracle+oracledb://user:pass@host:1521/?service_name=PDB1. Tester la connectivité avec le bouton Tester la connexion.
Dialectesqlite / postgresql / oracle. Pilote le SQL de repli spécifique à chaque dialecte dans le moteur de connecteurs.
Taille du poolNombre maximum de connexions simultanées. Défaut 5.
Recyclage du poolDélai en secondes avant qu'une connexion obsolète soit recyclée. Défaut 1800.
Mot de passeOptionnel. Cliquer sur l'icône 🔒 pour passer le champ en mode Chiffré — voir Chiffrement et secrets.

Authentification

ChampEffet
BackendLocal — TOML (défaut) / Local — Database. Détermine où vivent les comptes utilisateurs. L'option Local — TOML utilise config/auth.toml sur l'hôte (aucune infrastructure). Local — Database crée et utilise les tables ly2_users / ly2_roles / ly2_permissions sur le pool par défaut.
Clé de signature JWTRéférence à la variable d'environnement qui contient le secret de signature HS256. Défaut ${LIBERTY_JWT_SECRET}. Quand la variable n'est pas définie, le framework génère une clé éphémère par processus — chaque redémarrage invalide chaque jeton.
Durée de vie du jeton d'accèsDurée de vie d'un jeton d'accès. Défaut 15 minutes.
Durée de vie du jeton de rafraîchissementDurée de vie d'un jeton de rafraîchissement. Défaut 7 jours.
Réglage Argon2Trois champs numériques — Time cost (défaut 2), Memory cost en KiB (défaut 65536), Parallelism (défaut 1). À augmenter sur les installations avec un modèle de menace renforcé.

Sous-section OIDC

Un interrupteur en haut de la sous-section active le SSO OIDC ; le formulaire en dessous n'apparaît que quand OIDC activé est sur On.

ChampEffet
URL de l'émetteurURL de l'émetteur de l'IdP. Le framework récupère ${issuer}/.well-known/openid-configuration au démarrage.
Client IDID client OAuth2 enregistré auprès de l'IdP.
Client secretSecret client OAuth2. Toujours chiffré — l'icône 🔒 est verrouillée.
URI de redirectionURL de callback du framework, par exemple https://liberty.example.com/auth/oidc/callback. Doit être enregistrée côté IdP.
Claim emailClaim JWT utilisé comme identifiant utilisateur local. Défaut email.
Claim groupesClaim JWT utilisé pour faire correspondre les groupes IdP aux rôles Liberty. Défaut groups.
Auto-provisionnementQuand activé, un utilisateur Liberty est créé à la première connexion OIDC. Sinon, l'utilisateur doit déjà exister.

Authentification parcourt le flux OIDC complet avec des notes spécifiques à chaque IdP (Authentik, Keycloak, Azure AD, Okta, Google).


IA

ChampEffet
FournisseurAnthropic. Seul fournisseur pris en charge à ce jour.
Clé d'APIRéférence à la variable d'environnement qui contient la clé. Défaut ${ANTHROPIC_API_KEY}. Quand elle n'est pas définie, l'assistant est désactivé et /chat affiche un avis « configurer une clé d'API ».
ModèleID de modèle Anthropic. Défaut claude-sonnet-4-6. Passer à claude-opus-4-7 pour davantage de raisonnement, claude-haiku-4-5 pour des tours moins chers et plus rapides.
Max tokensPlafond de tokens par réponse de l'assistant. Défaut 4096.
Concurrence outilsNombre maximum d'appels d'outils en parallèle par tour de l'assistant. Défaut 4.

Voir AI assistant pour la surface de chat, le contrat de génération d'outils et le filtrage par rôle.


Chiffrement

ChampEffet
Clé maîtresseRéférence à la variable d'environnement qui contient la clé AES-256-GCM utilisée pour déchiffrer chaque champ ENC:. Défaut ${LIBERTY_MASTER_KEY}. Doit faire 32 octets, encodée en hex ou base64. À générer avec liberty-crypto genkey.
Clés héritéesListe de clés anciennes, utilisées uniquement pour le déchiffrement pendant une rotation. Les nouveaux chiffrements utilisent toujours Clé maîtresse. Cliquer sur ➕ Ajouter clé héritée pour ajouter une entrée.

Voir Chiffrement et secrets pour la procédure de rotation et le format ENC:.


Licence

ChampEffet
Clé de licenceRéférence à la variable d'environnement qui contient le JWT de licence signé en RS256. Défaut ${LIBERTY_LICENSE_KEY}. Pilote les verrous de fonctionnalités sur les connecteurs marqués Licensed.
Chemin de la clé publiqueRemplacement optionnel pour la clé publique embarquée. Utile quand l'installation tourne avec une autorité de signature privée.

La page Paramètres → Licence affiche l'état courant (acceptée / refusée / non configurée), le nom du client, la date d'expiration et la liste des fonctionnalités déverrouillées.


Enregistrer et recharger

Chaque enregistrement valide le formulaire contre les modèles Pydantic du framework. Les valeurs invalides surlignent le champ en rouge et désactivent le bouton Enregistrer et recharger.

Un enregistrement réussi :

  1. Persiste le changement sur disque (détail du système de fichiers, jamais édité à la main).
  2. Réapplique le sous-système concerné — un changement de Langue par défaut déclenche un rechargement des packs de langues ; un changement de Durée de vie du jeton d'accès prend effet à la prochaine connexion ; un changement d'OIDC activé relance la découverte OIDC à la prochaine connexion.
  3. Affiche un toast qui confirme le rechargement de la section.

Quelques champs demandent un redémarrage complet : le changement de Backend d'authentification, la rotation de Clé maîtresse, le changement de Clé de licence. Le formulaire les marque avec un badge Redémarrage requis et propose un bouton Redémarrer maintenant à côté du contrôle Enregistrer et recharger (admin uniquement).


Permissions

L'onglet Framework est filtré par settings:framework. La lecture sans écriture est possible — accorder settings:read + la permission par onglet sans settings:reload rend le formulaire consultable seul.


Sous le capot

Le stockage du formulaire est liberty-next/config/app.toml. Les opérateurs n'éditent pas ce fichier à la main en fonctionnement normal ; l'interface Paramètres est l'interface canonique, avec l'onglet Raw TOML comme issue de secours. Le fichier est analysé une fois au démarrage et à chaque Enregistrer et recharger de l'onglet Framework.

Pour les scripts d'ops et les pipelines CI qui doivent piloter le framework sans l'interface, la même surface est accessible via les endpoints REST sous /admin/config/framework/* — voir REST API reference.


Pour aller plus loin