# 4.10 Sécurité

Chemin : Administration &gt; Configuration &gt; Sécurité Accès : Administrateurs uniquement Cette page regroupe l'ensemble des paramètres de sécurité de Dolibarr™, organisés en 8 onglets depuis la v24.

<p class="callout info">**Important :** Chaque onglet dispose de son propre bouton de sauvegarde (MODIFIER ou ENREGISTRER). Les modifications sont effectives immédiatement pour tous les utilisateurs.</p>

### **Onglet 1 – Divers**

<table id="bkmrk-param%C3%A8treconstanted%C3%A9" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 288px;"></col><col style="width: 464px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Paramètre

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Défaut

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Utiliser les autorisations avancées des modules

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_USE\_ADVANCED\_PERMS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Off

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Délai expiration des sessions (secondes)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SESSION\_TIMEOUT

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">1440 s

</td></tr><tr style="height: 10px; background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre max. d'images dans un champ HTML

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_MAX\_IMG\_IN\_HTML\_CONTENT

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">0

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre max. de publications par IP en un mois

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_MAX\_POST\_ON\_PUBLIC\_PAGES\_BY\_IP\_ADDRESS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">200

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre max. de fichiers joints dans un formulaire

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_MAX\_ATTACHMENT\_ON\_FORMS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">10

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre max. d'échecs d'authentification en 24h

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_MAX\_NUMBER\_FAILED\_AUTH

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">100

</td></tr></tbody></table>

- - [x] ***Comment configurer le délai d'expiration des sessions ?***

Rendez-vous dans ***Administration &gt; Configuration &gt; Sécurité &gt; Onglet 1 — Divers***<span style="white-space: pre-wrap;"> et renseignez le champ Délai expiration des sessions (constante </span>**MAIN\_SESSION\_TIMEOUT**). La valeur par défaut est 1440 secondes (24 minutes). Si ce champ n'est pas surchargé, Dolibarr™ suit la valeur session.gc\_maxlifetime définie dans la configuration PHP de votre serveur. Cliquez sur MODIFIER pour appliquer immédiatement le nouveau délai à tous les utilisateurs.

- - [x] ***Comment configurer les autorisations avancées dans l'onglet Divers ?***

<span style="white-space: pre-wrap;">Activez l'option Utiliser les autorisations avancées des modules (constante </span>**MAIN\_USE\_ADVANCED\_PERMS**) dans 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 &gt; Utilisateurs &amp; Groupes pour attribuer ces nouvelles permissions fines depuis 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.

<table id="bkmrk-formulaire-prot%C3%A9g%C3%A9co" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Formulaire protégé

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Page de connexion

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_ENABLECAPTCHA

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Formulaire public de contact tiers

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_ENABLECAPTCHA\_THIRDPARTY

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Création de ticket public

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_ENABLECAPTCHA\_TICKET

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Adhésion publique

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_ENABLECAPTCHA\_MEMBER

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Formulaire de don public

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_ENABLECAPTCHA\_DONATION

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Formulaire de recrutement public

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_ENABLECAPTCHA\_RECRUITMENT

</td></tr></tbody></table>

<span style="white-space: pre-wrap;">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 : </span>**MAIN\_SECURITY\_ENABLECAPTCHA\_HANDLER**.

***Quelles sont les limites contre les attaques par force brute ?***

Dolibarr™ propose plusieurs mécanismes complémentaires :

1. 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é.
2. CAPTCHA : activez-le sur la page de connexion pour bloquer les soumissions automatisées par des scripts malveillants.
3. Complexité des mots de passe : forcez des règles dans l'onglet Mots de passe pour rendre les attaques par dictionnaire beaucoup plus longues.
4. Délégation OIDC : en utilisant OpenID Connect, vous déléguez l'authentification à un fournisseur externe (Google, Keycloak…) qui dispose de ses propres systèmes de détection de force brute.
5. Journal d'audit : l'onglet Événements de sécurité trace les échecs de connexion (USER\_LOGIN\_FAILED), permettant de surveiller et analyser les tentatives d'attaque.

### **Onglet 3 – Mots de passe**

Règle de génération — un seul handler actif à la fois (interrupteur radio) :

<table id="bkmrk-handlerdescriptionlo" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 121px;"></col><col style="width: 275px;"></col><col style="width: 125px;"></col><col></col></colgroup><tbody><tr style="height: 10px; background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Handler

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Longueur min.

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Perso

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Règles personnalisables

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Selon config

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_PASSWORD\_GENERATED = Perso

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Standard

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">12 caractères, algorithme interne

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">12

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_PASSWORD\_GENERATED = Standard

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">None

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Aucune suggestion (saisie libre)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">0

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_PASSWORD\_GENERATED = None

</td></tr></tbody></table>

<span style="white-space: pre-wrap;">Configuration du handler Perso (constante </span>**USER\_PASSWORD\_PATTERN**, format : longueur;majMin;numMin;speMin;consec) :

<table id="bkmrk-champdescriptionlong" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 345px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Champ

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Longueur minimale

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre minimum de caractères (min 1)

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nb min. majuscules/minuscules

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre de changements de casse requis

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nb min. chiffres

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre de chiffres requis

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nb min. caractères spéciaux

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre de symboles requis

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nb max. caractères consécutifs identiques

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Limite les répétitions (ex. « aaa »)

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Pas de caractères ambigus

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Exclut les caractères difficiles à distinguer (0/O, 1/l…)

</td></tr></tbody></table>

Paramètres de chiffrement :

<table id="bkmrk-param%C3%A8tredescription" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 339px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Paramètre

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Chiffrer les mots de passe en base

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Hash MD5/bcrypt — irréversible une fois activé

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Masquer le mot de passe BDD dans conf.php

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Chiffre dolibarr\_main\_db\_pass dans le fichier de configuration

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Cacher le lien « Mot de passe oublié »

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Masque le lien de réinitialisation sur la page de connexion (**MAIN\_SECURITY\_DISABLEFORGETPASSLINK**)

</td></tr></tbody></table>

***Comment définir des règles de complexité pour les mots de passe ?***

1. Rendez-vous dans Administration &gt; Configuration &gt; Sécurité &gt; Onglet 3 — Mots de passe.
2. Activez le handler Perso pour définir vos propres critères via la constante USER\_PASSWORD\_PATTERN.
3. 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…).
4. Il est fortement recommandé d'activer aussi Chiffrer les mots de passe en base (hash bcrypt)

**Attention, cette action est irréversible.**

1. Cliquez sur le bouton de sauvegarde pour que ces nouvelles règles s'appliquent immédiatement à tous les utilisateurs.

***Comment activer le chiffrement de la base de données dans conf.php ?***

1. Rendez-vous dans Administration &gt; Configuration &gt; Sécurité &gt; Onglet 3 — Mots de passe.
2. Localisez la ligne Masquer le mot de passe BDD dans conf.php et cliquez sur Activer.
3. Dolibarr™ transforme la variable $dolibarr\_main\_db\_pass de votre fichier htdocs/conf/conf.php en une version chiffrée. Note importante : avant d'effectuer cette opération, assurez-vous que votre fichier conf.php est temporairement accessible en écriture par le serveur web. Une fois l'activation terminée, remettez le fichier en lecture seule.

### **Onglet 4 – Fichiers**

<table id="bkmrk-param%C3%A8treconstanted%C3%A9-1" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 369px;"></col><col style="width: 299px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Paramètre

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Défaut

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Taille maximale des fichiers téléchargés (Ko)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_MAXFILESIZE\_DOWNLOADED

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">—

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Taille maximale des fichiers envoyés (Ko)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_UPLOAD\_DOC

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">2048 Ko

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Masque des nouveaux fichiers (Unix/Linux)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_UMASK

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">0660

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Extensions interdites au téléversement

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_FILE\_EXTENSION\_UPLOAD\_RESTRICTION

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">htm,html,php,js,py,cgi…

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Utiliser l'antivirus sur les fichiers téléversés

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_ANTIVIRUS\_UPLOAD\_ON

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Off

</td></tr></tbody></table>

<p class="callout success">**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).</p>

***Quelles sont les extensions de fichiers interdites au téléversement ?***

Par défaut, les extensions suivantes sont refusées pour empêcher 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, php5. La liste est stockée dans la constante MAIN\_FILE\_EXTENSION\_UPLOAD\_RESTRICTION. L'administrateur peut la personnaliser en ajoutant ou supprimant des extensions, séparées par des virgules.

***Comment fonctionne l'antivirus pour les fichiers téléversés ?***

<span style="white-space: pre-wrap;">Lorsqu'un utilisateur ajoute un document, Dolibarr™ intercepte le fichier avant son enregistrement définitif et 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) : </span>

1. <span style="white-space: pre-wrap;">Activation : basculez </span>**MAIN\_ANTIVIRUS\_UPLOAD\_ON** <span style="white-space: pre-wrap;">sur ON. </span>
2. Commande antivirus : indiquez le chemin complet vers l'exécutable (ex. /usr/bin/clamscan pour ClamAV sous Linux, ClamWin sous Windows).
3. <span style="white-space: pre-wrap;">Paramètres antivirus : saisissez les arguments nécessaires (ex. --no-summary -r). </span>
4. Test : un formulaire de test 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 pilote l'appel à 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.

<table id="bkmrk-param%C3%A8treconstanted%C3%A9-2" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Paramètre

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Défaut

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Timeout de connexion (secondes)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_USE\_CONNECT\_TIMEOUT

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">10

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Délai expiration de réponse (secondes)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_USE\_RESPONSE\_TIMEOUT

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">30

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Utiliser un serveur proxy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_PROXY\_USE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Non

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nom/Adresse du proxy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_PROXY\_HOST

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">—

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Port du proxy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_PROXY\_PORT

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">0

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Identifiant proxy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_PROXY\_USER

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">—

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Mot de passe proxy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_PROXY\_PASS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">—

</td></tr></tbody></table>

### **Onglet 6 – Événements de sécurité**

Active l'enregistrement d'un journal d'audit pour les événements de sécurité sensibles. Chaque événement s'active individuellement.

<p class="callout warning">**Avertissement :** Cette fonctionnalité peut générer un volume important de données en base selon le nombre d'événements activés et l'activité de votre instance.</p>

<table id="bkmrk-%C3%89v%C3%A9nementdescription" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Événement

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_LOGIN

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Connexion réussie

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_LOGIN

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_LOGIN\_FAILED

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Échec de connexion

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_LOGIN\_FAILED

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_LOGOUT

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Déconnexion

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_LOGOUT

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_CREATE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Création d'un utilisateur

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_CREATE

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_MODIFY

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Modification d'un utilisateur

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_MODIFY

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_NEW\_PASSWORD

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nouveau mot de passe généré

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_NEW\_PASSWORD

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_ENABLEDISABLE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Activation/désactivation d'un compte

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_ENABLEDISABLE

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USER\_DELETE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Suppression d'un utilisateur

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USER\_DELETE

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USERGROUP\_CREATE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Création d'un groupe

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USERGROUP\_CREATE

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USERGROUP\_MODIFY

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Modification d'un groupe

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USERGROUP\_MODIFY

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">USERGROUP\_DELETE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Suppression d'un groupe

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_LOGEVENTS\_USERGROUP\_DELETE

</td></tr></tbody></table>

***Où consulter le journal d'audit des événements de sécurité ?***

Le journal d'audit est consultable dans Accueil &gt; Outils d'administration &gt; Événements de sécurité. L'activation de l'enregistrement se fait dans Administration &gt; Configuration &gt; Sécurité &gt; Onglet 6 — Événements de sécurité (/admin/events.php). Dans les versions récentes (v23 et v24), le journal consigne également l'installation (ou la tentative d'installation) 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'authentification OpenID Connect**

Permet à Dolibarr™ de déléguer l'authentification à un fournisseur d'identité OpenID Connect pour mettre en place du SSO (Single Sign-On). Lorsque 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.

<p class="callout info"><span style="white-space: pre-wrap;"> Note : 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.</span></p>

### **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.

<table id="bkmrk-en-t%C3%AAte-httpdescript" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(0, 81, 97); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">En-tête HTTP

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Referer-Policy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Contrôle les informations de référencement transmises lors des navigations

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_FORCERP

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Strict-Transport-Security (HSTS)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Force l'utilisation de HTTPS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_FORCESTS

</td></tr><tr style="background-color: rgb(220, 235, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Permissions-Policy

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Contrôle l'accès aux API navigateur (caméra, micro…)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_FORCEPP

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Content-Security-Policy (CSP)

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Déclare les sources autorisées pour scripts, styles, images…

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SECURITY\_FORCECSP

</td></tr></tbody></table>

<p class="callout success">**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.</p>

### **Permissions par défaut**

Sous 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.

<p class="callout warning">**Avertissement :** Ces réglages ne s'appliquent qu'aux nouveaux utilisateurs. Pour modifier les permissions d'un utilisateur ou groupe existant, allez sur sa fiche dans Accueil &gt; Utilisateurs &amp; Groupes.</p>

***Comment gérer les permissions par défaut des nouveaux utilisateurs ?***

Rendez-vous dans Accueil &gt; Configuration &gt; Sécurité &gt; Permissions par défaut. L'interface présente tous les modules activés avec leurs actions possibles.

- Cliquez sur + pour 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'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.