You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2022-08-11 14:53:42

eric.le-corre
Member
Registered: 2013-01-07
Posts: 1,005

[solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Bonjour,

L'authentification basique va être abandonné par Microsoft sur Office 365 : https://www.it-connect.fr/exchange-onli … -doctobre/
Ceci va peut etre poser des problèmes si vous utilisez IMAP ou POP pour votre collecteur Office 365. D'après ce que j'ai lu, le SMTP basique va etre aussi desactive par Microsoft SAUF si il est actif (si vous l'utilisez), notamment pour les notifications.

J'ai donc testé ce plugin qui permet de faire de l'authentification moderne en IMAP : https://glpi-plugins.readthedocs.io/fr/ … index.html
Seulement il n'y a pas de doc précise et notamment pour faire fonctionner avec O365, voici la solution :

Se connecter avec un compte admin sur votre tenant O365, aller ensuite dans le menu d'administration puis sur Azure AD
Une nouvelle page s'ouvre où vous êtes sur AZURE AD (bien selectionner le menu "azure active directory" a gauche). Ensuite aller dans le menu "inscription d'applications"

1) cliquer sur nouvelle inscription et donner un nom, par exemple "GLPI pour Office 365"
2) selectionner "Comptes dans cet annuaire d'organisation uniquement (XXXXXXX uniquement - Locataire unique)", c'est deja celui par defaut normalement
3) cliquer sur inscrire pour créer l'application

5) installer le plugin Oauth IMAP sur votre serveur GLPI comme vous faites d'habitude, ne pas oublier de mettre les bons droits sur le plugin et mettre apache comme propriétaire, les commandes a passer sont (sur ubuntu) :
chown -R www-data:www-data oauthimap
chmod -R 755 oauthimap

6) activer le plugin
7) aller dans le plugin
8) cliquer sur "ajouter" pour ajouter un enregistrement, vous donner un nom, par exemple "AzureAD IMAP Office 365"
9) pour les champs "ID d'application (client)" et "ID de l'annuaire (locataire)", vous trouverez cette information sur l'application que vous venez d'enregistrer dans AZURE AD, suffit de faire un copier/coller
10) Pour "Fournisseur Oauth", on choisit "Azure"
11) pour le "secret client", on retourner sur l'application AZURE AD et on va dans le menu "certificats et secrets"
12) on clique sur "nouveau secret client" et date expiration, on met "24 mois" et on cliquer sur "ajouter"
13) cela genere une cle que vous pouvez copier pour mettre dans le champ "secret client"

15) Le plugin donne aussi "Url de retour", on copie le contenu et on retourner dans l'application AZURE AD, on va dans le menu "authentification"
16) on clique sur "ajouter une plateforme" on selectionner "web" et on colle dans URL le contenu de "URL retour" du plugin"
17) toujours dans Azure AD sur l'application, on va dans "API autorisées", on cliquer sur "ajouter autorisation"
18) dans "API utilisées par mon organisation", on fait une recherche sur "Office 365 Exchange" et on selectionne "Office 365 exchange online" puis "autorisation deleguees"
19) dans les menu dessous, on selectionne "mail" et on active les autorisations ci-dessous puis on clique sur "ajouter autorisation"

Mail.Read
Mail.Read.All
Mail.Read.Shared
Mail.ReadBasic
Mail.ReadWrite

20) toujours dans AZURE AD sur l'application, on va dans "propriétaires" et on ajoute éventuellement d'autres collegues de la technique afin qu'ils puissent aussi modifier l'application AZURE (au cas où...  :-) )
21) On retourne dans le plugin GLPI et on sauvegarde la configuration que l'on a fait, on oublie pas d'activer (actif : OUI)
22) toujours dans le plugin, on va dans "autorisation Oauth"  puis on cliquer sur "creer une autorisation"
23) cela lance une page web, vous demandant de s'authentifier. Là vous rentrer l'adresse email et le passe que vous utilisez pour votre collecteur
24) cela va faire la demande d'autorisation pour se connecter afin qu'il puisse accéder à l'application AZURE AD que l'on a créé
25) l'autorisation est crée, on arrive au bout

26) Aller dans la configuration du collecteur, cliquer sur votre collecteur
27) dans "option de connexion", selectionner votre nom de Oauth que vous avez créé et mettre SSL, ma chaine de connexion est {outlook.office365.com/imap-oauth-1/ssl/novalidate-cert/debug} bien que je ne pense pas que j'ai besoin de debug
28) Sauvegarder les nouveaux paramètres
29) tester le collecteur

Voilà :-)

Last edited by eric.le-corre (2022-09-27 09:37:19)

Offline

#2 2022-08-11 17:35:52

ec2311
Member
Registered: 2016-04-07
Posts: 352

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Bonjour

Super

mais ceci dit, j'ai un probleme que je n'arrive pas à resoudre :
mes serveurs GLPI sont derriere firewall, et visiblement le collecteur (laminas mail) ne sait pas utiliser la config proxy glpi pour se connecter...
J'ai deja fait un post : https://forum.glpi-project.org/viewtopic.php?id=283054

Si quelqu'un a une solution

Merci


GLPI 10.0.10
GLPIinventory 1.3.4

Agents : FI (2.6, 2.5) et Glpiagents (1.7)

Offline

#3 2022-08-17 15:24:56

eric.le-corre
Member
Registered: 2013-01-07
Posts: 1,005

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

tu peux pas faire une exception de port afin que le protocole IMAP venant de l'IP de ton serveur GLPI soit autorisé sans proxy ?

Last edited by eric.le-corre (2022-08-17 15:25:19)

Offline

#4 2022-08-23 13:39:18

ec2311
Member
Registered: 2016-04-07
Posts: 352

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

salut @Eric.le-corre,

Une modification a été faite dans les connexions entre le serveur et le monde exterieur..
Suite à cela : cela passe

mais néanmoins c'est un peu etrange que le module 'laminas mail' ne soit pas configuré avec une utilisation du proxy glpi...


GLPI 10.0.10
GLPIinventory 1.3.4

Agents : FI (2.6, 2.5) et Glpiagents (1.7)

Offline

#5 2022-09-01 17:09:36

ElSciatico
Member
Registered: 2022-09-01
Posts: 1

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Hello,

Merci pour toutes ces infos, il est vrai que cela manquait.

J'ai aussi pas mal travaillé sur le sujet et ta procédure me conforte dans ce que j'ai fait.

Mais j'ai toujours un souci de connexion : AADSTS900971: No reply address provided.

J'ai scrupuleusement suivi ta procédure.

cependant j'ai quelques questions :
Ton serveur GLPI est-il exposé à internet ?
Dans ton application AzureAD, Redirect URIs, ton URL commence-t-elle par HTTP ou HTTPS ?

D'avance merci pour le retour.

Cordialement.
E.

Offline

#6 2022-09-14 17:19:39

eric.le-corre
Member
Registered: 2013-01-07
Posts: 1,005

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

mon GLPI a un acces internet en https, http, tout ce qui est classique

pour Redirect URLS, je suis en HTTPS

Sur GLPI, je suis en SSO, donc j'utilise un certificat et je suis en HTTPS

Offline

#7 2022-09-23 17:25:02

Balivo
Member
Registered: 2022-09-23
Posts: 1

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Bonjour
ta doc est très complété mais de mon coté je rencontre un problème
Quand je demande de creer une autorisation je rentre mon id password  j'ai renseigné au préalable le client Secret, le client id, de Tenant id, et j'ai donné mon lien https a mes admins de messagerie
et j'ai cette erreur : "unable to save authorization code"

j'ai refais x fois l'install du plugin avec les paramètres et j'ai toujours cet erreur

Dans ta doc dans la partie 5 tu parles de mettre les bons droits  est-ce possible de m'en dire d'avantage car je n'ai pas fait cette action et je ne sais pas de ql droits tu parles
"5) installer le plugin Oauth IMAP sur votre serveur GLPI comme vous faites d'habitude (ne pas oublier de mettre les bons droits sur le plugin et mettre apache comme propriétaire)"

Mon conf
Server Virtuel Ubuntu 20.04
Glpi 10.0.2
Plugin Oauth 1.4.1

Par avance merci de vos retours

Offline

#8 2022-09-26 20:55:54

eric.le-corre
Member
Registered: 2013-01-07
Posts: 1,005

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

oui, une fois decompressé le plugin dans le dossier glpi/plugins, ne pas oublier de passer les commandes :
chown -R www-data:www-data oauthimap (afin de mettre apache comme propriétaire du dossier)
chmod -R 755 oauthimap (les bons droits en lecture/ecriture)

Eventuellement cela peut etre ça si le plugin essaye d'écrire des données dans le dossier où se trouve le plugin et qu'il n'y arrive pas

Last edited by eric.le-corre (2022-09-26 21:11:09)

Offline

#9 2022-09-26 20:57:42

eric.le-corre
Member
Registered: 2013-01-07
Posts: 1,005

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

apres j'ai pas utilise le marketplace, j'ai pris le plugin directement ici : https://github.com/pluginsGLPI/oauthimap/releases
Je ne sais pas si cela change quelque chose...

Offline

#10 2022-09-26 21:03:56

eric.le-corre
Member
Registered: 2013-01-07
Posts: 1,005

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

en tout cas, a tout ceux qui ne sont pas prêt meme si Microsoft desactive l'IMAP ou POP sur votre tenant Office 365, pas d'inquiete, a priori on peut forcer la reactivation. Faut ouvrir un ticket au support O365 pour qu'ils vous montre comment faire. Après niveau sécu, c'est mieux de laisser desactiver vu le nombre de tentatives de connexion par brute force par minute sur le POP ou IMAP. :-)

Last edited by eric.le-corre (2022-09-26 21:06:28)

Offline

#11 2022-09-27 09:28:40

Knfabjnc
Member
Registered: 2022-08-19
Posts: 8

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Sauf erreur de ma part, on ne pourra le réactiver que jusque fin décembre. Passer cette date, on ne pourra plus le faire même en passant par le support. (https:  //techcommunity.microsoft.com/t5/exchange-team-blog/basic-authentication-deprecation-in-exchange-online-september/ba-p/3609437)

Merci pour le petit tuto!

Offline

#12 2022-10-04 15:08:07

Knfabjnc
Member
Registered: 2022-08-19
Posts: 8

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

J'ai un problème avec l'URL de retour. Le plugin affiche une adresse en http, protocole qui n'est pas accepté par Azure qui réclame du https..
J'ai activé la redirection dans apache du http vers https mais ça ne fonctionne pas. Lors de l'étape 23, après la saisie des identifiants, j'ai une erreur Microsoft indiquant qu'il n'y a pas d'URL de retour valide

Quelqu'un peut m'aider ?

EDIT : "Problème" résolu : dans la config générale de GLPI, sur l'interface web, il faut indiquer https au lieu de http dans l'URL d'accès. L'url de redirection dans le plugin se transforme donc en https et une fois saisie dans Azure, ça fonctionne

Last edited by Knfabjnc (2022-10-04 15:19:43)

Offline

#13 2022-10-07 12:22:28

srparis
Member
Registered: 2022-10-07
Posts: 7

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Knfabjnc wrote:

J'ai un problème avec l'URL de retour. Le plugin affiche une adresse en http, protocole qui n'est pas accepté par Azure qui réclame du https..
J'ai activé la redirection dans apache du http vers https mais ça ne fonctionne pas. Lors de l'étape 23, après la saisie des identifiants, j'ai une erreur Microsoft indiquant qu'il n'y a pas d'URL de retour valide

Quelqu'un peut m'aider ?

EDIT : "Problème" résolu : dans la config générale de GLPI, sur l'interface web, il faut indiquer https au lieu de http dans l'URL d'accès. L'url de redirection dans le plugin se transforme donc en https et une fois saisie dans Azure, ça fonctionne


Salut a tous,

bon topic, merci !

J'ai moi aussi du mal avec l'url de retour, mon GLPI est en local, je l'ai laissé en http.
je veux la passer en https comme toi, mais toi tu es passé par le menu "config, generale", et il faut "indiquer https au lieu de http dans l'URL d'accès".
Moi le premier champ de "generale", il s'appelle : "URL de l'application    : case "http://xxxx/glpi" "
Est-ce que c'est cette première case où il faut rajouter un S à http ?
je pensais qu'il fallait passer par la config d'apache pour le mettre en https, mais est-ce que juste ce paramètre peut suffire ??

Merci !

EDIT:
J'ai passé mon glpi en https avec :
a2enmod ssl
# cd /etc/apache2/sites-enabled
# ln -s ../sites-available/default-ssl.conf .
# service apache2 restart


mais quand je retourne dans les paramètre configuration, générale, et que j'essaie de rajouter le "s" dans la case "URL de l'application    : case "http://xxxx/glpi" ", il me dit en notif rouge en bas à droite :
"Erreur
URL de l'application invalide !"

et là je bloque...

Merci !

Last edited by srparis (2022-10-07 13:18:38)

Offline

#14 2022-10-07 15:55:12

Knfabjnc
Member
Registered: 2022-08-19
Posts: 8

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Effectivement il fallait le passer en https avec les commandes que tu as indiqué, j'avais oublié de le mettre dans mon message désolé.
Je n'ai pas fait d'autres modifications et je n'ai pas eu l'erreur que tu indiques... Dans mes paramètres, il n'y a pas le "/glpi" dans l'URL. Uniquement https://@IP
Tu pourrais essayer ça ?

Offline

#15 2022-10-07 16:14:17

srparis
Member
Registered: 2022-10-07
Posts: 7

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

OK merci !

chez toi, il n'y a pas le /glpi, dans la première case "URL de l'application" ??

moi lors de l'install je lui ai dit ca, /glpi, j'essaie sans.

OK, trop spé...
j'ai enlevé l'@ip dans l'url de l'application (toujours dans "config", "générale", première case), et j'ai mis le nom de l'hote (que j'ai mis en enregistrement DNS dans mon serveur DNS intra), j'ai laissé le /glpi à la fin...

et là il est passé sans erreur...

je vais pouvoir continuer la manip Oauth avec Azure.. ..

Merci !

apparemment, l'@ip ne lui plaisait pas...


EDIT: , je suis bloqué au point 23) cela lance une page web, vous demandant de s'authentifier. Là vous rentrer l'adresse email et le passe que vous utilisez pour votre collecteur

L'url de retour est passée, il me demande de ma loguer, je rentre le mot de passe, et là, glpi revient et me dit tout simplement :

"logo de triangle jaune avec point d'exclamation dedans "

lost"

et rien d'autre sur la plage.

re bloqué...

comment voir les logs de cette étape ??

en tout cas merci !

Edit2 :
après un reboot du serveur glpi, ca marche, le login oauth dans la page de config de glpi fonctionne, il me redonne la main,
je continue, mais quand je teste le collecteur configuré avec l'Oauth, il me sort :

Call to undefined method GlpiPlugin\Oauthimap\Imap\ImapOauthProtocol::setupSocket()

et là faut que je cherche encore plus...

le diag du Oauth me donne ca :

Le journal de diagnostic contient des informations sensibles, telles que le jeton d'accès.
Erreur inattendue : Call to undefined method GlpiPlugin\Oauthimap\Imap\ImapOauthProtocol::setupSocket()

thanks !

Last edited by srparis (2022-10-07 16:53:50)

Offline

#16 2022-10-10 15:43:27

sesaidi
Member
Registered: 2022-10-10
Posts: 2

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Salut,

@srparis

Quelle est ta version de GLPI ?

Le plugin utilise une méthode nommée "setupSocket()" qui se trouve dans la librairie "Laminas".
D'après le repo officiel, cette librairie est implémentée dans GLPI qu'à partir de la version 9.5.0-rc1.

Vérifiable ici :
github.com/glpi-project/glpi/blob/9.5.0-rc1/composer.json
github.com/glpi-project/glpi/blob/9.4.6/composer.json

Bizarrement, j'étais en 9.5.1 mais je n'avais pas cette librairie.

J'ai update en 9.5.9 et tout fonctionne correctement.

Offline

#17 2022-10-10 16:38:29

srparis
Member
Registered: 2022-10-07
Posts: 7

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Merci,
Je regardait justement comment upgrader ma version de glpi, je suis en 9.5.1..

Mais dans la doc (site glpi readthedoc) :
Download latest GLPI version.
Ensure the target directory is empty and extract files there.
Restore the previously backed up config, files, marketplace and plugins directory.
Then open the GLPI instance URI in your browser, or (recommended) use the php bin/console db:update command line tools.

mais ligne 2, je ne sais pas où copier les nouveaux fichier... s'il faut écraser les ancien fichiers (je pense pas), ou les copier ailleurs, ou dans /var/html/glpi (debian) ...

je cherche pour l'upgrade là, ensuite je pourrais retester le fameux Oauth...

thanks !

Offline

#18 2022-10-10 16:53:17

sesaidi
Member
Registered: 2022-10-10
Posts: 2

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Fais un backup de la base de données ou si tu es dans un environnement virtualisé, fais un snapshot de la VM.

Tu fais une copie de ton dossier glpi (glpi.bak par exemple).
Tu vides le dossier glpi principal et tu extrais la nouvelle version de GLPI dans ce dossier.
Tu retournes dans ton dossier glpi.bak et tu copies les dossiers : config, files, marketplace et plugins dans le dossier glpi.

Depuis ton dossier glpi, tapes :
php bin/console db:update

Suffit de lancer GLPI depuis ton navigateur, la maj a été effectuée.
Pense à réactiver tes plugins.

Offline

#19 2022-10-10 16:54:48

srparis
Member
Registered: 2022-10-07
Posts: 7

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

ha ben c'est ca qui me manquait...
vider le dossier glpi avant de remettre les nouveaux fichiers dedans ! ok merci ..

backup avant, ca oui, ou snap.

J'essaye ca !
merci !

Offline

#20 2022-10-11 15:48:14

Alexis69
Member
Registered: 2021-08-17
Posts: 4

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

eric.le-corre wrote:

Bonjour,

D'après ce que j'ai lu, le SMTP basique va etre aussi desactive par Microsoft SAUF si il est actif (si vous l'utilisez), notamment pour les notifications.

Bonjour,
Tout d'abord merci pour ce tutoriel, il m'a bien servit. Nous avons fait partie des "quelques tenants" annoncé par Microsoft...
Ce-pendant je viens de me rendre compte quelques jours après avoir fait la modif, que j'ai le même problème coté SMTP.
J'ai cherché un plugin, sans succès.
Comment pourrais-je faire ?

Merci et bonne journée smile

Offline

#21 2022-10-11 21:07:55

target2k1
Member
Registered: 2022-10-11
Posts: 1

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Merci pour ce topic :

Si comme moi vous avez galéré mais que l'erreur était bête (impossible de sauvegarder le code d'autorisation)

j'avais mis "id de secret" au lieu de la "valeur" dans "secret client"

En espérant que ça pourrait aider certains

Offline

#22 2022-10-12 10:11:10

srparis
Member
Registered: 2022-10-07
Posts: 7

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

sesaidi wrote:

Fais un backup de la base de données ou si tu es dans un environnement virtualisé, fais un snapshot de la VM.

Tu fais une copie de ton dossier glpi (glpi.bak par exemple).
Tu vides le dossier glpi principal et tu extrais la nouvelle version de GLPI dans ce dossier.
Tu retournes dans ton dossier glpi.bak et tu copies les dossiers : config, files, marketplace et plugins dans le dossier glpi.

Depuis ton dossier glpi, tapes :
php bin/console db:update

Suffit de lancer GLPI depuis ton navigateur, la maj a été effectuée.
Pense à réactiver tes plugins.

Salut,

Merci a tous ceux qui ont posté pour une solution !

Après fouillage intensif...
J'ai du mettre a jour glpi en v10
puis mettre a jour PHP en v8.1
puis mettre a jour le plugin (attention, l'URI de retour a changé pour moi en cours d'update de tout ca, donc une nouvelle erreur du coté du connecteur Oauth a rebidouiller sur azure)
et on dirait que c'est repartit !

la collecte des mail broute un peu (la page ne se refresh pas, je sais pas si c'est parce qu'il y a plein de mail en attente dedans...), mais ca arrive quand même si on ouvre une autre page avec glpi..

Je surveille ca, je supprime pas encore mon snaptshot wink , mais ca a l'air de marcher !

mais quel bordel par contre .. wink

Offline

#23 2022-10-13 14:46:41

ericO
Member
Registered: 2022-10-13
Posts: 1

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Bonjour,
Un grand merci pour ce tuto 100% opérationnel. Oauth IMAP installé sans aucun souci. Bravo

Offline

#24 2022-10-14 17:41:47

Mickael.Gouache
Member
Registered: 2022-07-25
Posts: 2

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

Merci beaucoup cette page vient de beaucoup m'aider.

Offline

#25 2022-10-18 14:20:31

Tech-Info-PSE
Member
Registered: 2021-12-27
Posts: 11

Re: [solution] Collecteur GLPI à Office 365 avec Oauth IMAP

eric.le-corre wrote:

apres j'ai pas utilise le marketplace, j'ai pris le plugin directement depuis github
Je ne sais pas si cela change quelque chose...

Perso j'ai utilisé le marketplace et je n'ai pas eu besoin de modifier les droits sur les dossiers. C'est un régal, cette nouvelle fonctionnalité, c'est tellement + simple ..

Offline

Board footer

Powered by FluxBB