Configuration LDAp Dolibarr avec LDAP Synology

Alors j’ai try de changer (mais tout mes autres services fonctionnent comme ça) avec le cn j’ai :
ErrorBadLoginPassword

alors que avec uid j’ai :
Impossible de trouver l’utilisateur monusername dans la base Dolibarr.

La différence s’explique aussi (sauf erreur de ma part) par le fait que l’admin est créé au dpkg-reconfigure slapd alors que les utilisateurs sont créés via fusiondirectory.

Le log n’apparait pas en haut a gauche et j’ai une erreur dans le log par contre :

2018-12-04 18:12:06 INFO 62.147.242.8 checkLoginPassEntity usertotest=MonUser entitytotest=1 authmode=ldap
2018-12-04 18:12:06 INFO 62.147.242.8 functions_ldap::check_user_password_ldap usertotest=MonUser passwordtotest=** entitytotest=1
2018-12-04 18:12:06 INFO 62.147.242.8 functions_ldap::check_user_password_ldap Server:127.0.0.1, Port:389, Protocol:3, Type:openldap
2018-12-04 18:12:06 INFO 62.147.242.8 functions_ldap::check_user_password_ldap uid/samacountname=uid, dn=ou=people,dc=Mon-Domaine,dc=com, Admin:cn=admin,dc=Mon-Domaine,dc=com, Pass:MonMotDePasse
2018-12-04 18:12:07 DEBUG 62.147.242.8 Ldap::connect_bind try bindauth on 127.0.0.1 user=cn=admin,dc=Mon-Domaine,dc=com password=********************
2018-12-04 18:12:07 DEBUG 62.147.242.8 Ldap::connect_bind return=2
2018-12-04 18:12:07 INFO 62.147.242.8 Ldap::fetch search with searchDN=ou=people,dc=Mon-Domaine,dc=com filter=(uid=MonUser)
2018-12-04 18:12:07 INFO 62.147.242.8 Ldap::fetch search found 1 records
2018-12-04 18:12:07 DEBUG 62.147.242.8 Ldap::connect_bind try bindauth on 127.0.0.1 user=uid=MonUser,ou=people,dc=Mon-Domaine,dc=com password=

2018-12-04 18:12:07 DEBUG 62.147.242.8 Ldap::connect_bind return=2
2018-12-04 18:12:07 INFO 62.147.242.8 functions_ldap::check_user_password_ldap Authentification ok
2018-12-04 18:12:07 INFO 62.147.242.8 functions_ldap::check_user_password_ldap Sync ldap2dolibarr
2018-12-04 18:12:07 INFO 62.147.242.8 Ldap::fetch search with searchDN=ou=people,dc=Mon-Domaine,dc=com filter=(uid=MonUser)
2018-12-04 18:12:07 INFO 62.147.242.8 Ldap::fetch search found 1 records
2018-12-04 18:12:07 DEBUG 62.147.242.8 sql=SELECT u.rowid, u.lastname, u.firstname, u.employee, u.gender, u.birth, u.email, u.job, u.skype,
u.signature, u.office_phone, u.office_fax, u.user_mobile, u.address, u.zip, u.town, u.fk_state as state_id, u.fk_country as country_id, u.admin,
u.login, u.note, u.pass, u.pass_crypted, u.pass_temp, u.api_key, u.fk_soc, u.fk_socpeople, u.fk_member, u.fk_user, u.ldap_sid, u.statut, u.lang,
u.entity, u.datec as datec, u.tms as datem, u.datelastlogin as datel, u.datepreviouslogin as datep, u.photo as photo, u.openid as openid, u.accountancy_code,
u.thm, u.tjm, u.salary, u.salaryextra, u.weeklyhours, u.color, u.dateemployment, u.ref_int, u.ref_ext, u.default_range, u.default_c_exp_tax_cat,
c.code as country_code, c.label as country, d.code_departement as state_code, d.nom as state
FROM llx_user as u
LEFT JOIN llx_c_country as c ON u.fk_country = c.rowid
LEFT JOIN llx_c_departements as d ON u.fk_state = d.rowid
WHERE u.entity IS NOT NULL
AND (u.ldap_sid = ‹ 0-0 › OR u.login = ‹ MonUser ›) LIMIT 1 ORDER BY u.entity ASC
2018-12-04 18:12:07 ERR 62.147.242.8 DoliDBPgsql::query SQL Error message: ERREUR: 42601: erreur de syntaxe sur ou près de « ORDER »
LINE 1: …ldap_sid = ‹ 0-0 › OR u.login = ‹ MonUser ›) LIMIT 1 ORDER BY u…

LOCATION: scanner_yyerror, scan.l:1087 (DB_ERROR_SYNTAX)
2018-12-04 18:12:07 ERR 62.147.242.8 DoliDBPgsql::query SQL Error usesavepoint = 0
2018-12-04 18:12:07 DEBUG 62.147.242.8 sql=SELECT u.rowid, u.lastname, u.firstname, u.employee, u.gender, u.birth, u.email, u.job, u.skype,
u.signature, u.office_phone, u.office_fax, u.user_mobile, u.address, u.zip, u.town, u.fk_state as state_id,
u.fk_country as country_id, u.admin, u.login, u.note, u.pass, u.pass_crypted, u.pass_temp, u.api_key, u.fk_soc,
u.fk_socpeople, u.fk_member, u.fk_user, u.ldap_sid, u.statut, u.lang, u.entity, u.datec as datec, u.tms as datem,
u.datelastlogin as datel, u.datepreviouslogin as datep, u.photo as photo, u.openid as openid,
u.accountancy_code, u.thm, u.tjm, u.salary, u.salaryextra, u.weeklyhours, u.color, u.dateemployment,
u.ref_int, u.ref_ext, u.default_range, u.default_c_exp_tax_cat, c.code as country_code,
c.label as country, d.code_departement as state_code, d.nom as state
FROM llx_user as u LEFT JOIN llx_c_country as c ON u.fk_country = c.rowid
LEFT JOIN llx_c_departements as d ON u.fk_state = d.rowid WHERE u.entity IN (0, 1)
AND u.login = ‹ MonUser ›
ORDER BY u.entity ASC
2018-12-04 18:12:07 DEBUG 62.147.242.8 User::fetch user not found
2018-12-04 18:12:07 INFO 62.147.242.8 User not found, connexion refused
2018-12-04 18:12:07 DEBUG 62.147.242.8 sql=SELECT transkey, transvalue FROM llx_overwrite_trans where lang=‹ fr_FR ›
2018-12-04 18:12:07 INFO 62.147.242.8 — End access to /index.php
2018-12-04 18:12:07 INFO 62.147.242.8 — Access to /index.php showing the login form and exit
2018-12-04 18:12:07 DEBUG 62.147.242.8 sql=SELECT transkey, transvalue FROM llx_overwrite_trans where lang=‹ fr_FR ›
2018-12-04 18:12:07 INFO 62.147.242.8 — End access to /index.php
2018-12-04 18:12:08 INFO 62.147.242.8 — Access to /theme/eldy/style.css.php - action=, massaction=
2018-12-04 18:12:08 DEBUG 62.147.242.8 sql=SELECT transkey, transvalue FROM llx_overwrite_trans where lang=‹ fr_FR ›
2018-12-04 18:12:08 DEBUG 62.147.242.8 Menubase::menuLoad mymainmenu= myleftmenu= type_user=0 menu_handler=eldy tabMenu size=0
2018-12-04 18:12:08 DEBUG 62.147.242.8 sql=SELECT m.rowid, m.type, m.module, m.fk_menu, m.fk_mainmenu, m.fk_leftmenu, m.url,
m.titre, m.langs, m.perms, m.enabled, m.target, m.mainmenu, m.leftmenu, m.position
FROM llx_menu as m WHERE m.entity IN (0,1) AND m.menu_handler IN (‹ eldy ›,‹ all ›) AND m.usertype IN (0,2) ORDER BY m.position, m.rowid
2018-12-04 18:12:08 INFO 62.147.242.8 — End access to /theme/eldy/style.css.php
2018-12-04 18:12:08 INFO 62.147.242.8 — Access to /core/js/lib_head.js.php - action=, massaction=
2018-12-04 18:12:08 DEBUG 62.147.242.8 sql=SELECT transkey, transvalue FROM llx_overwrite_trans where lang=‹ fr_FR ›
2018-12-04 18:12:08 INFO 62.147.242.8 — End access to /core/js/lib_head.js.php

Du coup je pense qu’il y a un bug.
Je vais faire un pointeur vers ici depuis le forum de bug.

Effectivement avec le uid, il arrive à se connecter. Quelques erreurs sql après dans le log (je ne sais pas si ça impacte la connexion). S’il ne trouve pas c’est peut être un problème filtre mais vue que tu m’as dit que çà fonctionné via la recherche dans Dolibarr, je ne sais pas.

Désolé de ne pas pouvoir t’aider plus que ça. Je suis vraiment pas très bon en ldap.

Salut à tou.te.s,
Après avoir bien galéré pour configuré le LDAP, voici ce que je viens de découvrir :

1- une fois le module configuré comme indiqué ci-dessus, l’import des utilisateurs de LDAP vers dolibarr se fait par la commande suivante :

sudo -u apache php /chemin/vers/dolibarr/scripts/user/sync_users_ldap2dolibarr.php commitiferror --server=localhost

2- pour être à même de s’authentifier grâce au mot de passe de LDAP, c’est dans le fichier conf.php que cela se passe /chemin/vers/dolibarr/htdocs/conf/conf.php. Voir dans le fichier example

$dolibarr_main_authentication='dolibarr,ldap'; $dolibarr_main_auth_ldap_host='127.0.0.1'; // You can define several servers here separated with a comma. $dolibarr_main_auth_ldap_port='389'; // Port $dolibarr_main_auth_ldap_version='3'; $dolibarr_main_auth_ldap_servertype='openldap'; // openldap, activedirectory or egroupware $dolibarr_main_auth_ldap_login_attribute='uid'; // Ex: uid or samaccountname for active directory $dolibarr_main_auth_ldap_dn='ou=users,dc=my-domain,dc=com'; // Ex: ou=users,dc=my-domain,dc=com $dolibarr_main_auth_ldap_filter = ''; // If defined, two previous parameters are not used to find a user into LDAP. Ex: (uid=%1%) or &(uid=%1%)(isMemberOf=cn=Sales,ou=Groups,dc=opencsi,dc=com). //$dolibarr_main_auth_ldap_admin_login=''; // Required only if anonymous bind disabled. Ex: cn=admin,dc=example,dc=com //$dolibarr_main_auth_ldap_admin_pass=''; // Required only if anonymous bind disabled. Ex: secret //$dolibarr_main_auth_ldap_debug='false';

Bonjour,
Je travaille actuellement sur Dolibarr en local sur ma machine avec un seveur LDAP qui est sur le Synology et j’ai besoin a chaque fois que je créer contact sur Dolibarr, qu’il se crée automatiquement sur mon annuaire LDAP.

J’ai tous configuré sur Dolibarr, le test de connexion au serveur est OK, le test de synchronisation de contact est OK aussi.

quand je crée vraiment mon contact, il se crée bien dans Dolibarr avec ça « fiche LDAP », je force donc la Synchronisation de Dolibarr vers LDAP.

Je vais donc regarder sur le NAS et aucun rien ne s’ajoute… et aucune erreur ne s’affiche donc si quelqu’un pouvais m’aider?

Je pense que cela peut venir de mon mapping LDAP sur le NAS mais je ne suis pas sur du tout.

Merci d’avance
Bastien

Je n’arrive pas non plus a le configurer correctement.

Je trouve pas de doc sur le mapping du synology

Bonjour,
Avez-vous avancé sur le sujet?
J’ai le même problème.
J’ai remarque qu’en activant le userPassword (crypté ou pas) cela génère une erreur 19.
Cordialement.

Bon si cela peut servir à quelqu’un:

https://www.synology.com/fr-fr/knowledgebase/DSM/help/DSM/AdminCenter/file_directory_service_ldap
et aussi

Et cela fonctionne !

1 « J'aime »