| 12 Août 2009
| Index de l'article |
|---|
| AD User Editor |
| Installation |
| Configuration |
| Sources, Evolutions et Modifications |
| Toutes les pages |
AD User Editor est un webpart pour MOSS 2007 qui permet de modifier facilement les propriétés de profil de n'importe quelle personne dans Active Directory. Il peut également être configuré en "self-service" pour permettre aux utilisateurs de modifier leur profil uniquement.

- 5 types de champs d'édition: Texte simple, Liste déroulante/Liste "ListBox" (avec valeurs prédéfinies), Sélecteur de personnes, Sélecteur de date.
- Compatibilité Multi-domaines.
- Quasiment toutes les propriétés Active Directory peuvent être ajoutées ou supprimées du formulaire d'édition, directement à partir des paramètres du webpart (rien de "codé en dur").
- Apparence SharePoint
Télécharger AD User Editor (CodePlex)
Installation
- Téléchargez l'archive et décompressez-la sur le serveur où MOSS 2007 est installé puis lancez setup.exe pour l'installer (*).
- Allez dans la collection de site où vous l'avez installé.
- Cliquez sur "Actions du Site > Modifier tous les paramètres" puis "Fonctionnalités de la Collection de Sites". Vous devriez normalement voir apparaître la fonctionnalité "Nomine SharePoint Tools".
- Appuyez sur le button "Activer" en face de celle-ci.
- Créez une page de webparts ou modifiez celle de votre choix et ajoutez le webpart "AD User Editor".
- Courage, c'est presque fini!
- Ouvrez un invite de commande (Menu Démarrer>éxécuter>cmd) et exécutez les commandes suivantes:
cd <path_to_installer>
stsadm -o addsolution -filename NomineSharePointTools.wsp
- Allez dans "l'Administration Centrale" de SharePoint et cliquez sur l'onglet "Opérations".
- Cliquez maintenant sur "Gestion des solutions" (sous le titre "Configuration globale"). Normalement, vous devriez voir apparaitre la solution que vous venez d'installer (NomineSharePointTools.wsp).
- Cliquez dessus, choisissez "Déployer la solution", sélectionnez l'application web voulue, et validez par "OK".
Configuration du WebPart
Contrôleur(s) Active Directory
Vous pouvez cliquer sur les trois points à côté de la case pour l'éditer plus facilement (voire copier-coller son contenu dans votre éditeur de texte favori).
Ce paramètre permet au webpart de savoir quel contrôleur AD contacter pour éditer un utilisateur.
Voici un exemple de configuration:
<?xml version='1.0' encoding='UTF-8'?>
<domains>
<domain name='PESSAC' path='LDAP://srvpscinfo/DC=pessac,DC=flamel,DC=com' usr='xxxx' pwd='yyyy' />
<domain name='VENISSIEUX' path='LDAP://srvvnxinfo/DC=venissieux,DC=flamel,DC=com' usr='xxxx' pwd='yyyy' />
</domains>
Il y a 4 paramètres:
- name: Nom "Windows" du domaine (ex: VENISSIEUX\nomine)
- path: Adresse permettant de contacter le contrôleur AD concerné (ex: "LDAP://monserveurad/DC=domaine,DC=com").
- usr: Login du compte ayant un accès lecture/écriture à Active Directory.
- pwd: Mot de passe de ce compte.
Propriétés Active Directory
Permet de configurer les propriétés dont vous voulez permettre l'édition.
Voici un exemple de configuration:
<?xml version='1.0' encoding='UTF-8'?>
<properties>
<property adname='displayName' name='Nom complet' type='textbox' values='' />
<property adname='sn' name='Nom' type='textbox' values='' />
<property adname='givenName' name='Prénom' type='textbox' values='' />
<property adname='manager' name='Responsable' type='person' values='' />
<property adname='assistant' name='Assistant(e)' type='person' values='' />
<property adname='department' name='Service' type='listbox' values="Accueil;Achats;Administration;Brevets;Ressources Humaines;Systèmes d'Information" />
<property adname='title' name='Titre' type='textbox' values='' />
<property adname='employeeType' name="Type d'employé" type='dropdown' values='Cadre,cadre;Technicien,technicien;Ouvrier,OE' />
<property adname='telephoneNumber' name='Téléphone' type='textbox' values='' />
<property adname='mobile' name='Portable' type='textbox' values='' />
<property adname='facsimileTelephoneNumber' name='Fax' type='textbox' values='' />
<property adname='l' name='Ville' type='dropdown' values='Pessac;Vénissieux;Washington' />
<property adname='physicalDeliveryOfficeName' name='Bureau' type='textbox' values='' />
<property adname='company' name='Compagnie' type='textbox' values='' />
<property adname='accountExpires' name='Date de départ' type='date' values='' />
</properties>
Chaque item "property" a 4 différents paramètres:
- adname: C'est le nom LDAP de la propriété à éditer.
(Vous trouverez une liste de toutes les propriétés LDAP sur www.imibo.com) - name: Le nom à afficher dans le formulaire d'édition
- type: Le type de champ d'édition:
- textbox: Simple case texte.
- dropdown: Liste déroulante avec un choix de valeurs prédéfinies.
- listbox: Pour éviter d'avoir une liste déroulante trop longue, c'est la "listbox" qu'il vous faut (même fonctionnement que la "listbox")
- person: Sélecteur de personne permettant de sélectionner n'importe quel utilisateur trouvé par SharePoint dans l'AD.
- date: Sélecteur de date avec calendrier.
- values: Valeurs prédéfinies pour les listes déroulantes et "listbox". Peut être défini de deux façons:
- Valeurs séparées par un point-virgule (;)
- OU Paire titre_affiché/valeur_insérée. Chaque élément séparée par un point-virgule (;) et chaque paire séparée par une virgule (,)
J'ai essayé d'être aussi clair que possible dans mes explications. N'hésitez pas à poser votre question dans les commentaires un point vous semble flou...
Modifier uniquement l'utilisateur courant
Cochez cette case pour rendre le webpart "self-service".
References
Je me suis inspiré de quantité d'articles et code sources trouvés au gré de mes recherches. Voici les plus importants:
- ActiveDirectoryTools de Burke Holland
- Projet Visual Studio créé par l'utilitaire STSDEV
- Comment bien développer un WepPart sur le blog d'Ishai Sagi
- Contrôles Web Sharepoint (Sélecteur de Personnes et de Date) sur le blog de Karine Bosch
Evolutions souhaitées
- Editeur de propriétés plus intuitif dans la configuration du webpart (style celui-ci, ou à partir d'une liste externe)
- Cryptage des paramètres de connexion (plus en texte clair)
- Le rendre réellement multilingue (cf ici)
- Coder selon les principes MVC (modèle/vue/contrôleur) ou au moins séparer la présentation des données
- Ajouter un contrôle pour les propriétés à valeurs multiples (trouver le contrôle sharepoint qui le fait)
- Installeur SharePoint Solution Installer
Avant d'essayer de compiler le projet
- Utiliser un serveur avec MOSS 2007 et Visual Studio 2008 installés (non testé avec VS2005 et WSS3 seul)
- Installer les extensions Visual Studio pour Sharepoint
- Télécharger et installer STSDEV
- Dézipper l'archive contenant le projet et ouvrir NomineSharePointTools.sln avec Visual Studio
- Editer "DeploymentFiles/Microsoft.SharePoint.targets" pour faire correspondre targetUrl, WssRootFilesFolder, STSADM and STSDEV à la configuration de vôtre serveur.
- Allez dans le menu "Générer>Gestionnaire de configuration" et sélectionnez DebugDeploy ou DebugUdate selon si vous l'avez déja déployé ou pas.
- Appuyez sur F5: La compilation et le déploiement devraient s'effectuer automatiquement (ne faites pas attention au message qui vous dit qu'une classe ne peut être lancée directement)
- Vous n'avez plus qu'à activer la fonctionnalité sur la collection de site et insérer le webpart dans la page de votre choix.
- A chaque prochaine compilation, le webpart sera automatiquement mis à jour sans avoir besoin de le supprimer ou de réactiver la fonctionnalité.
Conclusion
Merci d'avoir essayé ce WebPart. C'est mon premier vrai développement pour SharePoint 2007, donc n'hésitez pas à m'envoyer tout commentaire constructif permettant de le rendre encore meilleur.






Commentaires
vous avez sans doute oublié un ">" dans le fichier de config mais c'est bizarre que cela fasse planter le webpart...
Essayez d'ouvrir votre page avec SharePoint Designer et supprimez le webpart pour essayer de "sauver" votre page.
J'espère que cela résoudra votre problème. Tenez moi au courant.
Cordialement,
Alexis
tout d'abord merci pour votrewebpart
j'ai installé User Editor,
et j'ai modifié Contrôleur Active Directory et Propriétés Active Directory
mais j'ai maintenant cette erreur à chaque fois que je veux charger la page qui contient la webpart :
Server Error in '/' Application.
'?' is an unexpected token. The expected token is ''>''. Line 1, position 37.
je suis assez perdu là, si vous pouviez m'aider :) merci
S’abonner au flux RSS pour les commentaires de cet article.