Clients OAuth
Présentation
GLPI 11 introduit une fonctionnalité majeure d'authentification OAuth 2.0 qui révolutionne la façon dont les applications tierces accèdent à vos données GLPI. Cette nouvelle fonctionnalité permet une intégration sécurisée et moderne avec l'écosystème de votre organisation. OAuth 2.0 est un protocole d'autorisation moderne qui permet aux applications tierces d'accéder à vos ressources GLPI sans partager vos mots de passe.
Pourquoi l’utiliser ?
Sécurité renforcée : Pas de partage de mots de passe
Contrôle granulaire : Permissions spécifiques par application
Intégrations modernes : Compatible avec applications mobiles et web
Gestion centralisée : Révocation d'accès instantanée
Traçabilité : Suivi des accès et utilisation
Prérequis
Profil Administrateur ou droits sur OAuth Clients
Accès au menu Configuration
Création du Client OAuth
Étape 1 : Navigation dans l'interface
Dans le menu principal, cliquez sur Configuration
Sélectionnez OAuth Clients dans le sous-menu
Sur la page OAuth Clients, cliquez sur Ajouter

Informations de base
Nom: Nom descriptif du client
Commentaire: Description du client (optionnel)
Sélection des grants
Choisissez le type d'authentification selon votre application

Authorization Code: Authentification interactive la plus sécurisée pour les applications avec utilisateurs.. L'utilisateur est redirigé vers GLPI pour s'authentifier, puis renvoyé vers l'application avec un code temporaire qui est échangé contre un token.
Password Grant: Authentification directe avec nom d'utilisateur et mot de passe. L'application demande directement les credentials utilisateur et les envoie à GLPI pour obtenir un token.
Client Credentials: Authentification machine-à-machine sans utilisateur humain. L'application s'authentifie uniquement avec ses propres identifiants (client ID/secret), aucun utilisateur spécifique impliqué.
Définir les scopes (permissions)

api: Accès général à l'API GLPI
user: Informations de l'utilisateur connecté
email: Adresse email de l'utilisateur
inventory: Soumission d'inventaires
status: État du système
graphql: Interface GraphQL
Sauvegarder
Cliquez sur Ajouter en bas du formulaire
Le client OAuth est créé avec des identifiants uniques (ClientID et Client Secret)

Configuration du client OAuth
URI de redirection
Éditez votre client OAuth
Section "URI de redirection autorisées"
Ajoutez les URLs de votre application

Restrictions IP
Section "Restrictions IP"
Ajoutez les adresses IP autorisées

Utiliser le Client OAuth avec l’agent
Activer l’inventaire
Dans le menu principal, cliquez sur Administration
Sélectionnez Inventaire dans le sous-menu
Cochez la case à cocher "Enable inventory"

Autorisation des agents
Une fois l’inventaire activé, le champ notamment l’option « Authentification des agents ».
Dans la liste déroulante correspondante, sélectionnez « OAuth – Client credentials » afin d’utiliser un client OAuth comme source d’authentification.

Création du client OAuth
Créez un client OAuth qui sera utilisé par l’agent.
Dans la section « Scopes », sélectionnez Inventory afin d’autoriser l’accès aux fonctionnalités d’inventaire.
Attention : pensez à copier immédiatement le client secret, car il ne sera affiché qu’une seule fois et ne pourra pas être récupéré par la suite.
Une fois le client créé, conservez précieusement les informations suivantes :
Client ID
Client Secret
Ces valeurs seront nécessaires pour la configuration de l’agent à l’étape suivante.

Connexion à l’agent
Pour finaliser la configuration, ajoutez les paramètres oauth-client-id et oauth-client-secret dans la configuration de l’agent.
Ces informations permettront à l’agent de s’authentifier correctement auprès du serveur OAuth.
oauth-client-id: copiez/collez le Client ID du client OAuth créé précédemment.oauth-client-secret: copiez/collez le Client Secret associé à ce même client OAuth.
Une fois ces paramètres renseignés, enregistrez la configuration de l’agent. Celui-ci utilisera alors automatiquement ces identifiants pour obtenir un jeton d’accès (access token) et communiquer de manière sécurisée avec le serveur.
Mis à jour