Démonstration publique en lecture seule
DEMO_MODE est désactivé par défaut. Une fois activé, Libris permet aux visiteurs de lire la bibliothèque vitrine sans publier d’identifiants. Un visiteur sans session peut entrer avec POST /api/auth/demo ; un visiteur déjà connecté conserve son compte. Après une déconnexion, la page de connexion propose le bouton Entrer dans la démo.
Préparer le compte démo
- Connectez-vous comme administrateur et créez un compte local dédié. Il ne doit pas être administrateur, ne doit pas utiliser la double authentification et ne doit pas être un compte externe.
- Définissez un mot de passe aléatoire pour ce compte et ne le publiez ni ne le partagez. Les visiteurs utilisent la connexion automatique ; aucun identifiant n’est publié.
- Importez les archives des projets vitrine dans ce compte avant d’activer le mode démo. Chaque import et restauration d’archive compte dans le quota de licence. Vérifiez le quota restant.
Activer et protéger l’instance
Dans le fichier .env de l’installation, définissez DEMO_MODE=true et DEMO_USERNAME=<compte>, puis appliquez les réglages avec cd /opt/libris && docker compose up -d api worker. Définissez FORWARDED_ALLOW_IPS sur l’adresse du proxy inverse de confiance ; c’est obligatoire pour que les protections fondées sur l’adresse IP voient celle des visiteurs. Voir les réglages de la démo.
Configurez des limites de débit sur le proxy inverse pour POST /api/auth/demo, /api/auth/login, /api/exports/* et /api/projects/*/export/*. Ne placez aucune donnée privée ni aucun compte personnel sur l’instance publique.
Actions possibles pour les visiteurs
Les requêtes GET, HEAD et OPTIONS sont permises. Les seules écritures permises sont la connexion, la déconnexion, les routes de double authentification à la connexion, la connexion automatique à la démo et les exports groupés EPUB/texte. Toute autre écriture renvoie 403 demo_read_only. /mcp, SSO et LDAP sont fermés ; le worker envoie uniquement les battements de licence. GET /health indique demo: true et, lorsque le compte de connexion automatique est configuré, demo_login: true.
Réinitialiser la vitrine
Définissez DEMO_MODE=false, puis appliquez-le avec cd /opt/libris && docker compose up -d api worker. Connectez-vous comme administrateur, supprimez les anciens livres vitrine et restaurez les archives de projet sauvegardées dans le compte démo dédié. Les imports et restaurations comptent dans le quota de licence. Réactivez DEMO_MODE=true, puis appliquez-le avec cd /opt/libris && docker compose up -d api worker.