Module OAuth FR

OAuth
Numéro/ID du module 66000
Doc utilisateur du module Cette page
Doc développeur du module

Introduction

Le module OAuth est un module technique qui vous permet de créer et de gérer des connexions OAuth2 avec un serveur de délégation d'authentification OAuth2. Seul, ce module est inutile. Mais une fois que vous avez créé des connexions OAuth2, vous pouvez les réutiliser dans d'autres modules, par exemple :

Installation

Ce module est livré en standard avec la distribution de Dolibarr, aussi il est déjà installé.

Configuration

Création de l'entrée OAuth

C'est la première étape. Vous devez créer une entrée et choisir les autorisations en fonction de l'objectif pour lequel l'entrée OAuth sera utilisée. Voici quelques exemples de valeurs que vous pouvez utiliser, en fonction du fournisseur OAuth et de l'objectif de l'entrée. Essayez de créer une entrée pour chaque objectif différent.

Pour l'accès SMTP

Voici un exemple de configuration si vous prévoyez d'utiliser le jeton OAuth pour envoyer des e-mails.

Pour Google

Identifiant client / Identifiant secret : Voir le chapitre Documentation externe.

Scope : Choisissez le scope 'gmail_full'

Pour Microsoft Office365

Identifiant client / Identifiant secret : Voir le chapitre Documentation externe.

Locataire : L'ID du locataire fourni par Microsoft. Exemple : 123456ab-1234-5678-abdc-12345678abcd

Scope : Choisissez le scope : 'offline_access' + 'outlook.office365.com/SMTP.Send'. Le scope 'email' peut également être ajouté mais semble facultatif. N'oubliez pas d'autoriser également ces permissions dans la configuration Azure.

Si cela échoue, choisissez : 'outlook.office.com/.default'

Pour l'accès IMAP

Voici un exemple de configuration si vous prévoyez d'utiliser le jeton OAuth pour lire votre boîte e-mail avec le collecteur d'e-mails.

Pour Google

Identifiant client / Identifiant secret : Voir le chapitre Documentation externe.

Scope : Choisissez le scope 'gmail_full'

Pour Microsoft Office365

Identifiant client / Identifiant secret : Voir le chapitre Documentation externe.

Locataire : L'ID du locataire fourni par Microsoft. Exemple : 123456ab-1234-5678-abdc-12345678abcd

Scope : Choisissez le scope : 'offline_access' + 'outlook.office365.com/IMAP.AccessAsUser.All'. Le scope 'email' peut également être ajouté mais semble facultatif. N'oubliez pas d'autoriser également ces permissions dans la configuration Azure.

Si cela échoue, choisissez : 'outlook.office.com/.default'

Pour la connexion SSO

Voici un exemple de configuration si vous prévoyez d'utiliser le fournisseur OAuth pour vous connecter. Notez que pour cette utilisation, la création de l'entrée OAuth est suffisante, pas besoin de générer le jeton.

Pour Google

Nom de l'entrée : "Login" (Le texte "Login" avec une majuscule pour L. Vous devez utiliser cette chaîne d'entrée pour la connexion SSO. Aucun autre nom n'est possible).

Identifiant client / Identifiant secret : Voir le chapitre Documentation externe.

Scope : Choisissez le scope 'openid' et 'email'

Vous devez également modifier votre fichier de configuration Dolibarr pour utiliser la connexion SSO avec Google OAuth. Voir la page Authentication,_SSO_and_SSL#googleoauth.

Pour Microsoft Office365

Pas encore disponible ! Probablement...

Identifiant client / Identifiant secret : Voir le chapitre Documentation externe.

Locataire : L'ID du locataire fourni par Microsoft. Exemple : 123456ab-1234-5678-abdc-12345678abcd

Scope : Choisissez le scope 'openid' et 'email'

Génération du jeton

Remarque : Si l'objectif de l'entrée OAuth est d'être utilisé pour la connexion SSO, vous n'avez pas besoin de générer le jeton.

Une fois votre entrée OAuth créée, vous pouvez passer à l'onglet suivant pour générer et obtenir votre jeton OAuth. Ce jeton sera ensuite utilisé par les autres modules ou fonctionnalités (par exemple, pour envoyer des e-mails en utilisant SMTP ou pour lire des e-mails en utilisant IMAP).

Remarque sur la durée de validité du jeton

  • Pour Google, lorsque votre entrée OAuth est publiée en mode Test, Google non vérifié, le jeton d'actualisation expire après 7 jours et est limité à 100 actualisations du jeton d'accès.
  • Pour Google, lorsque votre entrée OAuth est publiée en mode Production, Google vérifié, le jeton d'actualisation expire après 180 jours et le nombre d'actualisations du jeton d'accès est illimité.

Comment obtenir mon ID Client / Secret

Pour créer une entrée OAuth, vous avez besoin d'un ID client et d'un ID secret (et parfois d'un ID locataire - "tenant" en anglais). Leur obtention dépend de votre fournisseur OAUTH.

Pour Microsoft 365

Les étapes suivantes sont les suivantes :

  • Accédez à https://portal.azure.com - Gérer l'application pour créer une application. Vous pouvez obtenir la valeur de l'ID client dans le champ "ID application (client)" et l'ID locataire dans le champ "ID annuary (locataire)"
  • Ensuite, définissez la propriété "Assignation required" sur Non (je ne suis pas sûr que ce soit nécessaire)
  • Ensuite, définissez le chapitre Authentification pour ajouter l'URL de rappel autorisée suggérée par Dolibarr.
  • Ensuite, définissez l'API autorisée, par exemple Microsoft Graph email, IMAP.ACcessAsUser.ALL, Mail.Read, Mail.Send, offline_access, openid, profile, SMTP.Send
  • Ensuite, définissez le certificat et le secret (l'ID secret est la colonne "Valeur", la colonne "ID du secret" peut être ignorée)

Vous pouvez obtenir un résumé de tout cela dans le menu "Aperçu"

Il y a de la documentation ici :

Pour Google

Les étapes suivantes sont :

  Page waiting to complete. To complete, create an account, go back and clic on "Modify".
  Page en attente d'être complété. Pour compléter, créez un compte, revenez et cliquez sur "Modifier".
  Página a completar. Para completarla, cree una cuenta, vuelva a la página y haga clic en "editar"
  Seite wartet auf Vervollständigung. Um zu helfen, erstelle ein Konto, gehe zurück und klicke auf "Bearbeiten".
  待完成,欲帮助完成,注册帐号,点击“编辑"
  ページは未完成の状態です。完成させるにはアカウントを作成し、ページに戻って「編集」をクリックして下さい。

Vous trouverez ici de la documentation :