Connexion OpenID

Bonjour,

Nous avons testé avec succès la connexion OpenID sur Easya cette semaine et après 6 mois d’attente, la fonction vient d’être intégrée sur Dolibarr dans la version develop (future v18).

Voici le PR de base : (Merci @jeritiana)

https://github.com/Dolibarr/dolibarr/pull/22741

En attendant, pour les impatients, la fonction est disponible via un module externe :

Bonne journée à tous

7 « J'aime »

J’ai réussi à faire la liaison Entra ID (anciennement Azure AD) de Microsoft avec Dolibarr.

Comme la config n’est pas simple, je la partage ici.

Je vais vite sur la partie générique qui est visible ici :Feature Request: OpenID Connect authentication · Issue #22740 · Dolibarr/dolibarr · GitHub

Modification du fichier conf.php

Ensuite la partie spécifique à Entra ID et aux URL à configurer :

Pour cet exemple je vais prendre « user1 » qui est sur mon Entra ID

Attention il faut que le compte Dolibarr soit pré-existant, et que le nom d’affichage de Entra ID corresponde à l’utilisateur dans Dolibarr (puisque dans mon cas j’ai configuré MAIN_AUTHENTICATION_OIDC_LOGIN_CLAIM = name)


Inscription d’une application : je créé une application dédiée à la gestion de la connexion.

« dolibarr demo » peut être ignorée, je l’ai créée pour la synchronisation Dolibarr <=> Microsoft des agendas et l’envoi de mails par Dolibarr via exchange.

Ici l’ID d’application est l’information importante, et sera à renseigner dans vos différentes URL dans les constantes Dolibarr.
Vous aurez aussi besoin d’aller regarder vos points de terminaison pour certaines URL à renseigner dans Dolibarr :

Renseignez les URL de votre instance

Créez un secret. Notez le dans votre keepass ou de façon provisoire (pourra être oublié une fois rentré dans les constantes), il n’est affiché que lors de la création.

Donnez les droits API à l’application

Vous pouvez ajouter votre compte admin comme propriétaire de l’application

Et normalement on est OK coté Microsoft

Coté paramétrage Dolibarr, il faut renseigner les divers constantes / URL :

MAIN_AUTHENTICATION_OIDC_LOGIN_CLAIM : name

MAIN_AUTHENTICATION_OIDC_REDIRECT_URL : https://demo.progiseize.fr/?openid_mode=true

MAIN_AUTHENTICATION_OIDC_TOKEN_URL : https://login.microsoftonline.com/c9334a7e-05f8-4...../oauth2/v2.0/token

MAIN_AUTHENTICATION_OIDC_USERINFO_URL : https://graph.microsoft.com/oidc/userinfo

MAIN_AUTHENTICATION_OPENID_URL : https://login.microsoftonline.com/c9334a7e-05...../oauth2/v2.0/authorize?client_id=d70ae7......&scope=openid+email+profile+User.Read&response_type=code

MAIN_AUTHENTICATION_OIDC_CLIENT_ID : d70ae7f.....

MAIN_AUTHENTICATION_OIDC_CLIENT_SECRET : t5e8Q.....

A partir de là vos utilisateurs peuvent utiliser les identifiants Entra ID, avec le 2FA et les règles d’accès conditionnelles et tous les autres éléments de sécurité qui vont bien :

Et le tour est joué ! L’utilisateur est connecté à l’ERP en passant par Entra ID

3 « J'aime »

Bonjour,

ce système a été, il me semble, intégré dans la V18…

Par contre, j’ai un petit souci car je ne sais quelle valeur mettre dans le fichier conf.php une fois tout configuré pour retrouver la possibilité de me connecter… et rien dans la doc… Authentication, SSO and SSL - Dolibarr ERP CRM Wiki

Par avance merci de votre aide.

@aspangaro-Easya saurais-tu si la connexion openid a été intégrée dans le core ?

De mon coté je suis reparti du module que tu mets en lien pour le guide sur le forum

Bonsoir,

Si tu suis le 1er message, on voit que le PR a été intégré dans la version 18.0.0 de Dolibarr donc tu peux y aller

Bonne soirée

Bonjour et désolé pour ma question « idiote »…

Doit-on ajouter les variables MAIN_AUTHENTICATION_OIDC_%%%% dans le divers ? ou doit-on utiliser les écrans de la gestion des jetons OAuth2 ?
image

Merci d’avance de votre aide…

Bonjour @AurelienBisotti , @aspangaro-Easya

J’aurai besoin d’un petit coup de main… comment puis-je diagnostiquer le « retour » de OpenID…

J’ai bien l’authentification qui semble OK… je passe bien via O365, mais lors du retour… je reste sur la page de login…

Merci d’avance pour votre aide :slight_smile:

Si tu restes bloqué à la page de login Dolibarr après t’êtres connecté depuis l’interface Microsoft, tu peux regarder l’URL qui t’es renvoyée par Microsoft.
Il y a une chaîne de caractères qui contient l’erreur.

Merci !

En suivant à la lettre le tuto ça fonctionne pour moi.

J’ai quand même une question pour @AurelienBisotti, y a-t-il un moyen de désactiver la connexion par login + mot de passe pour forcer l’utilisation de l’OpenID ?

Je m’auto répond, en modifiant le fichier conf.php en ne laissant que la valeur « Openid_connect » et donc supprimant « dolibarr », l’interface login + mot de passe s’affiche toujours mais ne semble plus opérationnelle.

Il faudrait que tu en fasses une issue sur github, pour que cela soit patché directement dans le core

1 « J'aime »