You are not logged in.
Dernière Modification du patch: 23/05/2006
Bonjour à tous,
Comme certain d'entre vous j'avais besoin d'une authentification multi-domaines pour la partie LDAP, mon groupe disposant de plusieurs société étant chacune un domaine "enfant" du principal.
J'ai donc modifier l'authentification LDAP actuelle (ver 0.65 de GLPI) afin que les utilisateur de chaque société puissent s'authentifier et ainsi ouvrir des incidents.
Je ne suis pas du tout développeur web, je bidouille seulement, et ce que j'ai fait est du travail Quick&Dirty donc ne m'en voulez pas si c'est mal codé. J'ai en fait crée une nouvelle table sql afin d'y insérer les conf LDAP de chaque domaine. Ainsi au login, l'utilisateur devra simplement choisir son domaine dans la liste déroulante contenant la liste des domaines configurés. En cliquant sur connexion, cela récupéra les info selon le domaine et mettra à jour les variables globales propres à l'authentification LDAP (ldap_host,...) pour ensuite effectuer l'authentification comme avant.
Voici mes fichiers modifiés (lien supprimé, voir mon post suivant) (je ne suis pas responsable des problèmes que ces fichiers pourraient causer dans votre environnement, tout ce que je peux vous dire, c'est que chez moi ca marche ):
functions.php --> à remplacer dans glpi/setup/
setup-config.php--> à remplacer dans setup/
index.php --> à remplacer dans la racine du site.
login.php --> à remplacer dans la racine du site.
Et voici la table à rajouter dans la base glpi:
CREATE TABLE `glpi_config_multisites` (
`ID` int(11) NOT NULL auto_increment,
`ms_ldap_domain` varchar(25) NOT NULL default 'NONAME',
`ms_ldap_port` varchar(10) NOT NULL default '389',
`ms_ldap_host` varchar(200) default NULL,
`ms_ldap_basedn` varchar(200) default NULL,
`ms_ldap_rootdn` varchar(200) default NULL,
`ms_ldap_pass` varchar(200) default NULL,
`ms_ldap_login` varchar(200) NOT NULL default 'uid',
`ms_ldap_condition` varchar(255) default NULL,
`ms_ldap_field_name` varchar(200) default NULL,
`ms_ldap_field_email` varchar(200) default NULL,
`ms_ldap_field_location` varchar(200) default NULL,
`ms_ldap_field_realname` varchar(200) default NULL,
`ms_ldap_field_phone` varchar(200) default NULL,
`ms_ldap_use_tls` varchar(200) NOT NULL default '0',
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;
Ma dernière modif a causé un petit bug: la première authentification ne fonctionne pas, mais qu'en on ressai oui. Les infos utilisateurs ne semblent plus être insérées dans la base glpi (mail, nom complet,...). Je suis dessus.
Fonctionnement:
Rentrer avec un admin local à glpi afin de configurer les différents domaines ldap dans le menu d'authentification externe.
Ensuite il suffit de remplir la partie propre à LDAP et faire valider. Cela aura pour effet de créer une configuration pour le domaine en question.
Pour chaque domaine configurés, il y aura un le formulaire LDAP, pour ainsi pouvoir les modifier. Pour supprimer une config il suffier de cocher la case adéquate et valider.
Si vous avez des questions n'hésitez pas.
En attendant la version 0.7 de glpi, j'espère que cela pourra dépanner certain.
++
Nick
Last edited by Nick (2006-05-23 10:14:54)
Offline
Bonjour tous,
Aye j'ai corrigé les quelques bugs qui me restaient et fait un diff des fichiers que j'ai modifié que vous pouvez trouver ici.
N'oubliez pas de rajouter la table glpi_config_multisites de mon premier post.
En espérant que cela pourra servir à d'autres.
++
Nick
Last edited by Nick (2006-05-22 15:52:37)
Offline
Ah c'est trés intéressant ça...
Plateforme :
OS : Windows 2003 Sp1 / logiciel de décompactage : Winzip / Navigateurs : Internet Explorer 6sp1 / firefox 1.5
Installation : Package Ocs NG RC3 - XAMPP version 1.5.1
Serveur : Apache 2.0.55 / Base : 5.0.18-nt / Langage : PHP 5.1.1 / PhpMyAdmin 2.7.0-pl1
Offline
Cela sera géré avec la gestion multi-entité dans la 0.7
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Cela sera géré avec la gestion multi-entité dans la 0.7
Oui je sais bien, mais je ne pouvais pas attendre
Sinon petite modif du patch ce jour, afin de corriger un bug au niveau des ajouts de domaines dans l'authentification externe: les champs ldap/AD n'étaient pas enregistrés lors de l'ajout. C'est maintenant corrigé.
++
Nick
Last edited by Nick (2006-05-23 10:18:34)
Offline
Bonjour,
Je viens de lire le fichers des modifications, cette fonctionnalité m'intéresse fortement et je souihaiterais le mettre en place dès maintenant, sauf que les modifications ne sont valables que pour la version 0.65 de GLPI et j'ai actuellement installé la version 0.68.2.
Est-ce que quelqu'un serait capable de mettre à jour les modifications à apporter, car par exemple, le fichiers functions.php n'existent plus tel quel dans la version 0.68.2
Merci pour votre réponse (et bravo aux développeurs de ce script)
Cordialement
GLPI : 0.68.2 / 0.70.2 en test
CentOS 4.4 : Apache 2.0.52 / MySQL 4.1.20
Offline
J'ai trouvé la modification à faire,
il suffit de modifier le login.php et index.php avec ce qu'il y a d'écrit dans le fichier plus haut.
ensuite il faut créer la table et faire les modif directement dedans
et ça fonctionne correctement
GLPI : 0.68.2 / 0.70.2 en test
CentOS 4.4 : Apache 2.0.52 / MySQL 4.1.20
Offline
Vous aller avoir des problèmes au passage vers la 0.7. On vous aura prevenu.
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Oui mais elle arrive quand la 0.7 ?
Je ne suis pas pressé mais j'ai absolument besoin de l'authentification multi-domaine
Last edited by eduardosan (2006-11-10 11:30:50)
GLPI : 0.68.2 / 0.70.2 en test
CentOS 4.4 : Apache 2.0.52 / MySQL 4.1.20
Offline
elle est en cours de dev.
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Ok, et en quoi il y aura des problèmes quand je vais migrer vers cette version ?
GLPI : 0.68.2 / 0.70.2 en test
CentOS 4.4 : Apache 2.0.52 / MySQL 4.1.20
Offline
Je n'en sais rien pour le moment mais cela va surement poser des problèmes.
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Oui, personnellement je ne vois pas en quoi, étant donné les changements mineurs du code, qui seront facilement réversible, et aussi la base de donnée qui ne change pas ...
GLPI : 0.68.2 / 0.70.2 en test
CentOS 4.4 : Apache 2.0.52 / MySQL 4.1.20
Offline
vous verrez bien.
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline