4.10 Sécurité
Chemin : Administration > Configuration > Sécurité Accès : Administrateurs uniquement Cette page regroupe l’l'ensemble des paramètres de sécurité de Dolibarr™, organisés en 8 onglets depuis la v24.
Important : Chaque onglet dispose de son propre bouton de sauvegarde (MODIFIER ou ENREGISTRER). Les modifications sont effectives immédiatement pour tous les utilisateurs.
Onglet 1 – Divers
Paramètre | Constante | Défaut |
|---|---|---|
Utiliser les autorisations | MAIN_USE_ADVANCED_PERMS | Off |
Délai expiration des | MAIN_SESSION_TIMEOUT | 1440 s |
Nombre max. | MAIN_SECURITY_MAX_IMG_IN_HTML_CONTENT | 0 |
Nombre max. de | MAIN_SECURITY_MAX_POST_ON_PUBLIC_PAGES_BY_IP_ADDRESS | 200 |
Nombre max. de fichiers | MAIN_SECURITY_MAX_ATTACHMENT_ON_FORMS | 10 |
Nombre max. | MAIN_SECURITY_MAX_NUMBER_FAILED_AUTH | 100 |
- Comment configurer le délai
d’d'expiration des sessions ?
- Comment configurer le délai
Rendez-vous dans Administration > Configuration > Sécurité > Onglet 1 — Divers et renseignez le champ Délai expiration des sessions (constante MAIN_SESSION_TIMEOUT). La valeur par défaut est 1440 secondes (24 minutes). Si ce champ n’n'est pas surchargé, Dolibarr™ suit la valeur session.gc_maxlifetime définie dans la configuration PHP de votre serveur. Cliquez sur MODI- FIERMODIFIER pour appliquer immédiatement le nouveau délai à tous les utilisateurs.
- Comment configurer les autorisations avancées dans
l’l'onglet Divers ?
- Comment configurer les autorisations avancées dans
Activez l’l'option Utiliser les autorisations avancées des modules (constante MAIN_USE_ADVANCED_PERMS) dans l’l'onglet Divers. Cela débloque un niveau de droits supplémentaire et plus granulaire : les permissions standard se limitent à « Lire », « Créer/Modifier », « Supprimer », tandis que les permissions avancées ajoutent des droits précis comme « Valider », « Envoyer par email », « Clôturer »… Une fois activée, rendez-vous dans Accueil > Utilisateurs & Groupes pour attribuer ces nouvelles permissions fines depuis l’l'onglet Permissions de chaque utilisateur ou groupe.
Onglet 2 – Captcha
Protège les formulaires publics de Dolibarr™ contre les robots. Les options disponibles dépendent des modules actifs.
Formulaire protégé | Constante |
|---|---|
Page de connexion | MAIN_SECURITY_ENABLECAPTCHA |
Formulaire public de contact tiers | MAIN_SECURITY_ENABLECAPTCHA_THIRDPARTY |
Création de ticket public | MAIN_SECURITY_ENABLECAPTCHA_TICKET |
Adhésion publique | MAIN_SECURITY_ENABLECAPTCHA_MEMBER |
Formulaire de don public | MAIN_SECURITY_ENABLECAPTCHA_DONATION |
Formulaire de recrutement public | MAIN_SECURITY_ENABLECAPTCHA_RECRUITMENT |
Si au moins un CAPTCHA est activé, une seconde section permet de choisir le moteur de génération (handler). Le moteur disponible par défaut est Standard (image générée en interne — la bibliothèque PHP GD est requise). Constante du handler : MAIN_SECURITY_ENABLECAPTCHA_HANDLER.
Quelles sont les limites contre les attaques par force brute ?
Dolibarr™ propose plusieurs mécanismes complémentaires :
- Limitation des échecs : après 100 échecs en 24h (constante MAIN_SECURITY_MAX_NUMBER_FAILED_AUTH, onglet Divers), la connexion est systématiquement refusée pour le compte concerné.
- CAPTCHA : activez-le sur la page de connexion pour bloquer les soumissions automatisées par des scripts malveillants.
- Complexité des mots de passe : forcez des règles dans
l’l'onglet Mots de passe pour rendre les attaques par dictionnaire beaucoup plus longues. - Délégation OIDC : en utilisant OpenID Connect, vous déléguez
l’l'authentification à un fournisseur externe (Google, Keycloak…) qui dispose de ses propres systèmes de détection de force brute. - Journal
d’d'audit :l’l'onglet Événements de sécurité trace les échecs de connexion (USER_LOGIN_FAILED), permettant de surveiller et analyser les tentativesd’d'attaque.
Onglet 3 – Mots de passe
Règle de génération — un seul handler actif à la fois (interrupteur radio) :
Handler | Description | Longueur min. | Constante |
|---|---|---|---|
Perso | Règles personnalisables | Selon config | USER_PASSWORD_GENERATED |
Standard | 12 caractères, | 12 | USER_PASSWORD_GENERATED = Standard |
None | Aucune suggestion
| 0 | USER_PASSWORD_GENERATED = None |
Configuration du handler Perso (constante USER_PASSWORD_PATTERN, format : longueur;majMin;numMin;speMin;consecconsec) :
Champ | Description |
|---|---|
Longueur minimale | Nombre minimum de caractères (min 1) |
Nb min. majuscules/minuscules | Nombre de changements de casse requis |
Nb min. chiffres | Nombre de chiffres requis |
Nb min. caractères spéciaux | Nombre de symboles requis |
Nb max. caractères consécutifs identiques | Limite les répétitions (ex. « aaa ») |
Pas de caractères ambigus | Exclut les caractères difficiles à distinguer (0/O, 1/l…) |
Paramètres de chiffrement :
Paramètre | Description |
|---|---|
Chiffrer les mots de passe en base | Hash MD5/bcrypt — irréversible une fois activé |
Masquer le mot de passe BDD dans conf.php | Chiffre dolibarr_main_db_pass dans le fichier de configuration |
Cacher le lien « Mot de passe oublié » | Masque le lien de réinitialisation sur la page de connexion (MAIN_SECURITY_DISABLEFORGETPASSLINK) |
Comment définir des règles de complexité pour les mots de passe ?
- Rendez-vous dans Administration > Configuration > Sécurité > Onglet 3 — Mots de passe.
- Activez le handler Perso pour définir vos propres critères via la constante USER_PASSWORD_PATTERN.
- Renseignez : longueur minimale, nb min. de majuscules, de chiffres, de caractères spéciaux, nombre max. de caractères consécutifs identiques, et si vous souhaitez exclure les caractères ambigus (0/O, 1/l…).
- Il est fortement recommandé
d’d'activer aussi Chiffrer les mots de passe en base (hash bcrypt)
attention,Attention, cette action est irréversible.
- Cliquez sur le bouton de sauvegarde pour que ces nouvelles règles
s’s'appliquent immédiatement à tous les utilisateurs.
Comment activer le chiffrement de la base de données dans conf.php ?
- Rendez-vous dans Administration > Configuration > Sécurité > Onglet 3 — Mots de passe.
- Localisez la ligne Masquer le mot de passe BDD dans conf.php et cliquez sur Activer.
- Dolibarr™ transforme la variable $dolibarr_main_db_pass de votre fichier htdocs/conf/conf.php en une version chiffrée. Note importante : avant
d’d'effectuer cette opération, assurez-vous que votre fichier conf.php est temporairement accessible en écriture par le serveur web. Une foisl’l'activation terminée, remettez le fichier en lecture seule.
Onglet 4 – Fichiers
Paramètre | Constante | Défaut |
|---|---|---|
Taille maximale des fichiers | MAIN_SECURITY_MAXFILESIZE_DOWNLOADED | — |
Taille maximale des fichiers | MAIN_UPLOAD_DOC | 2048 Ko |
Masque des nouveaux | MAIN_UMASK | 0660 |
Extensions interdites au téléversement | MAIN_FILE_EXTENSION_UPLOAD_RESTRICTION | htm,html,php,js,py,cgi… |
Utiliser | MAIN_ANTIVIRUS_UPLOAD_ON | Off |
Astuce : La taille maximale des fichiers envoyés ne peut pas dépasser la limite définie dans votre php.ini (paramètre upload_max_filesize).
Quelles sont les extensions de fichiers interdites au téléversement ?
Par défaut, les extensions suivantes sont refusées pour empêcher l’l'envoi de scripts malveillants :
- Web et Scripts : htm, html, js
- Programmation et Exécutables : php, py (Python), cgi
- Extensions supplémentaires (selon les versions récentes) : shtml, phar, php3, php4,
php5php5. La liste est stockée dans la constante MAIN_FILE_EXTENSION_UPLOAD_RESTRICTION.L’L'administrateur peut la personnaliser en ajoutant ou supprimant des extensions, séparées par des virgules.
Comment fonctionne l’l'antivirus pour les fichiers téléversés ?
Lorsqu’Lorsqu'un utilisateur ajoute un document, Dolibarr™ intercepte le fichier avant son enregistrement définitif et l’l'envoie pour analyse au logiciel de sécurité configuré. Si le moteur antivirus détecte une menace, le téléversement est immédiatement refusé. Configuration (onglet 4 — Fichiers) :
- Activation : basculez MAIN_ANTIVIRUS_UPLOAD_ON sur ON.
- Commande antivirus : indiquez le chemin complet vers
l’l'exécutable (ex. /usr/bin/clamscan pour ClamAV sous Linux, ClamWin sous Windows). - Paramètres antivirus : saisissez les arguments nécessaires (ex. --no-summary -r).
- Test : un formulaire de test
d’d'envoi de fichier est disponible en bas de la page pour vérifier la configuration en conditions réelles. Dolibarr™ ne fournit pas son propre moteur de détection — il pilotel’l'appel àl’l'outil système lors de chaque téléversement.
Onglet 5 – Accès externes (Proxy)
Si le serveur Dolibarr™ doit passer par un proxy pour accéder à Internet (mises à jour, cours des devises, météo…), configurez ici les paramètres de connexion.
Paramètre | Constante | Défaut |
|---|---|---|
Timeout de connexion | MAIN_USE_CONNECT_TIMEOUT | 10 |
Délai expiration de réponse | MAIN_USE_RESPONSE_TIMEOUT | 30 |
Utiliser un serveur proxy | MAIN_PROXY_USE | Non |
Nom/Adresse du proxy | MAIN_PROXY_HOST | — |
Port du proxy | MAIN_PROXY_PORT | 0 |
Identifiant proxy | MAIN_PROXY_USER | — |
Mot de passe proxy | MAIN_PROXY_PASS | — |
Onglet 6 – Événements de sécurité
Active l’l'enregistrement d’d'un journal d’d'audit pour les événements de sécurité sensibles. Chaque événement s’s'active individuellement.
Avertissement : Cette fonctionnalité peut générer un volume important de données en base selon le nombre d’d'événements activés et l’l'activité de votre instance.
Événement | Description | Constante |
|---|---|---|
USER_LOGIN | Connexion réussie | MAIN_LOGEVENTS_USER_LOGIN |
USER_LOGIN_FAILED | Échec de connexion | MAIN_LOGEVENTS_USER_LOGIN_FAILED |
USER_LOGOUT | Déconnexion | MAIN_LOGEVENTS_USER_LOGOUT |
USER_CREATE | Création | MAIN_LOGEVENTS_USER_CREATE |
USER_MODIFY | Modification | MAIN_LOGEVENTS_USER_MODIFY |
USER_NEW_PASSWORD | Nouveau mot de passe généré | MAIN_LOGEVENTS_USER_NEW_PASSWORD |
USER_ENABLEDISABLE | Activation/désactivation | MAIN_LOGEVENTS_USER_ENABLEDISABLE |
USER_DELETE | Suppression | MAIN_LOGEVENTS_USER_DELETE |
USERGROUP_CREATE | Création | MAIN_LOGEVENTS_USERGROUP_CREATE |
USERGROUP_MODIFY | Modification | MAIN_LOGEVENTS_USERGROUP_MODIFY |
USERGROUP_DELETE | Suppression | MAIN_LOGEVENTS_USERGROUP_DELETE |
Où consulter le journal d’d'audit des événements de sécurité ?
Le journal d’d'audit est consultable dans Accueil > Outils d’d'administration > Événements de sécurité. L’L'activation de l’l'enregistrement se fait dans Administration > Configuration > Sécurité > Onglet 6 — Événements de sécurité (/admin/events.php). Dans les versions récentes (v23 et v24), le journal consigne également l’l'installation (ou la tentative d’d'installation) d’d'un module. Note : si vous utilisez le module Archives/Logs Inaltérables (conformité Loi Finance), les événements liés aux factures et paiements sont gérés dans un journal spécifique et distinct, accessible via le menu dédié à ce module.
Onglet 7 – Paramètres d’d'authentification OpenID Connect
Permet à Dolibarr™ de déléguer l’l'authentification à un fournisseur d’d'identité OpenID Connect pour mettre en place du SSO (Single Sign-On). Lorsque l’l'option est activée (toggle ON/OFF), des champs de configuration supplémentaires apparaissent pour saisir les paramètres du fournisseur (URL, client ID, secret, etc.). Exemples de fournisseurs compatibles : Keycloak, Google, Microsoft Entra ID.
Note : L’L'intégration native OpenID Connect est une nouveauté v24, remplaçant les anciens modules externes. Elle permet une authentification déléguée sans installation de module tiers.
Onglet 8 – En-têtes de sécurité HTTP
Réservé aux utilisateurs avancés. Un en-tête mal configuré peut rendre Dolibarr™ inaccessible ou bloquer des ressources légitimes.
En-tête HTTP | Description | Constante |
|---|---|---|
Referer-Policy | Contrôle les informations de | MAIN_SECURITY_FORCERP |
Strict-Transport-Security (HSTS) | Force | MAIN_SECURITY_FORCESTS |
Permissions-Policy | Contrôle | MAIN_SECURITY_FORCEPP |
Content-Security-Policy (CSP) | Déclare les sources autorisées | MAIN_SECURITY_FORCECSP |
Astuce : Le bouton + sur le champ CSP ouvre un assistant visuel pour ajouter des directives et sources sans saisie manuelle. Dolibarr™ injecte automatiquement script-src 'self' 'unsafe-inline' et style-src 'self' 'unsafe-inline' pour ne pas bloquer son propre fonctionnement.
Permissions par défaut
Sous l’l'onglet Permissions par défaut, vous définissez les droits automatiquement attribués à chaque nouvel utilisateur créé. Cliquez sur + pour accorder une permission par défaut, et sur − pour la retirer.
Avertissement : Ces réglages ne s’s'appliquent qu’qu'aux nouveaux utilisateurs. Pour modifier les permissions d’d'un utilisateur ou groupe existant, allez sur sa fiche dans Accueil > Utilisateurs & Groupes.
Comment gérer les permissions par défaut des nouveaux utilisateurs ?
Rendez-vous dans Accueil > Configuration > Sécurité > Permissions par défaut. L’L'interface présente tous les modules activés avec leurs actions possibles.
- Cliquez sur + pour
qu’qu'une permission soit donnée par défaut à tous les futurs utilisateurs. - Cliquez sur - pour supprimer cette permission de la configuration par défaut. Points importants : - Ces réglages
n’n'ont aucun effet sur les utilisateurs déjà existants. - Configurez cette section après avoir activé tous les modules souhaités — la liste des droits disponibles dépend des modules actifs. - Si vous avez activé les autorisations avancées (onglet Divers), des permissions plus fines (valider, envoyer par mail…) apparaissent également dans cette liste.