Dans un précédent article nous avons vu comment installer et configurer Mercator. A l’instar de GLPI, Mercator offre la possibilité d’être connecté à un Active Directory afin de faciliter la gestion des droits d’accès. Nous allons voir dans cet article comment configurer Mercator pour cela.
Prérequis
Nous partirons d’un serveur Mercator fraîchement installé selon la procédure fournit ici.
Notre Active Directory sera sur un contrôleur de domaine Microsoft (dans notre tutoriel un Windows Serveur 2029).
Configurations coté Active Directory
Nous commencerons par créer une Unité d’Organisation (OU) nommée « Mercator ».
Dans cette OU, nous créerons un groupe de sécurité nommé « GRP_Mercator » dans lequel nous ajouterons les utilisateurs autorisés à se connecter au portail Mercator. Ici, l’utilisateur rssi@domaintest.loc fera parti du groupe et pourra alors se connecter à Mercator.
Nous créerons également un utilisateur nommé « user_mercator ». Ce dernier servira au connecteur AD du serveur Mercator à lister l’AD et ainsi obtenir la liste des utilisateurs autorisés.
ATTENTION: les utilisateurs autorisés doivent avoir le champ adresse de messagerie complété pour permettre leurs authentifications. Ici nous choisirons l’adresse « rssi@domaintest.loc » en adresse mail.
Configurations coté serveur Mercator
Sur le serveur hébergeant Mercator tout se passe dans le fichier .env de configuration. Nous commencerons par éditer ce dernier:
sudo nano /var/www/mercator.domaintest.loc/.env
Puis nous décomenterons les paramètres LDAP et nous les renseignerons comme ceci:
################################################################# # Uncomment to user LDAP authentication # # Availables Types : OpenLDAP | AD | FreeIPA | DirectoryServer LDAP_TYPE="AD" LDAP_LOGGING=true LDAP_CONNECTION=default LDAP_HOST=192.168.1.200 LDAP_USERNAME="cn=user_mercator,ou=Mercator,dc=domaintest,dc=loc" LDAP_PASSWORD=Mdp_1234! LDAP_PORT=389 LDAP_BASE_DN="dc=domaintest,dc=loc" LDAP_TIMEOUT=5 LDAP_SSL=false LDAP_TLS=false LDAP_SCOPE="ou=Mercator,dc=domaintest,dc=loc" LDAP_GROUPS="GRP_MERCATOR" #################################################################
Comment fonctionne ces paramètres:
LDAP_TYPE= | Le type d’annuaire que nous utilisons. Ici un Active Directory Microsoft nous mettrons donc « AD » |
LDAP_LOGGING= | Nous placerons ce paramètre à true afin de permettre la connexion via l’AD |
LDAP_CONNECTION= | Nous laisserons ce paramètre sur default |
LDAP_HOST= | Nous donnerons l’adresse IP de notre contrôleur Active Directory |
LDAP_USERNAME= | Nous donnerons l’utilisateur nécessaire a l’énumération AD ainsi que sont emplacement, ici « cn=user_mercator,ou=Mercator,dc=domaintest,dc=loc » |
LDAP_PASSWORD= | Le mot de passe pour l’utilisateur énumérateur |
LDAP_PORT= | Le port de communication de l’AD, par défaut le 389 |
LDAP_BASE_DN= | Ici nous donnerons le domaine AD: « dc=domaintest,dc=loc » |
LDAP_TIMEOUT= | La valeur de timeout pour les réponse de l’AD. Par défaut 5 pour 5 secondes |
LDAP_SSL= |
A mettre sur true si votre AD utilise SSL, sinon laisser sur false |
LDAP_TLS= |
A mettre sur true si votre AD utilise TLS, sinon laisser sur false |
LDAP_SCOPE= |
L’OU dans laquelle se trouve le groupe autorisant les utilisateurs à se connecter |
LDAP_GROUPS= |
Le nom du groupe contenant les utilisateurs autorisés |
Test de connexion
Afin de tester si la connexion AD est fonctionnelle, depuis le serveur Mercator, nous nous placerons dans le dossier de Mercator et nous lancerons la commande suivante:
cd /var/www/mercator.domaintest.loc php artisan ldap:test
Erreur de connexion et résolution
Si à la connexion avec votre utilisateur AD vous obtenez une erreur 500, il vous faudra passer les commandes suivante sur le serveur Mercator:
cd /var/www/mercator.domaintest.loc sudo php artisan vendor:publish --all sudo php artisan migrate
Connexion avec l’utilisateur AD
A la première connexion de votre utilisateur AD, ce dernier sera renseigné dans la base de données des utilisateurs Mercator.
En tant qu’administrateur vous devrez alors modifier les droits de cet utilisateur afin de lui donner la bonne granularité, la bonne langue etc ….
Comments are closed