2010-11-17 4 views
1

J'ai récemment commencé à apprendre le Framework WCF et j'ai une classe/bibliothèque Active Directory Helper que j'ai créée pour héberger mon code pour interagir avec Active Directory. Je ne suis pas sûr si je réinvente la roue essayant de faire ceci mais il semblerait que ce serait une meilleure implémentation pour exécuter cette bibliothèque Active Directory Helper en tant que service WCF dans mon réseau et référencer ce service à partir de n'importe quelle application interne. Ma question est, est-ce quelque chose qui serait un effort valable, est ce que je fais redondant, ou y at-il quelque chose d'autre de mieux là-bas qui ferait déjà ce que je cherche à mettre en œuvre?Service d'assistance Active Directory WCF

J'ai trouvé cet article dans une recherche Google sur ce sujet:
http://blog.waleedmohamed.net/2009/12/create-active-directory-service-using.html
mais il n'a pas été très intuitive pour moi de suivre et je n'aime pas l'idée de mettre les informations d'identification de domaine pour quelque chose n'importe quel fichier de configuration. À part cela, il ne semble pas y avoir beaucoup d'informations sur le sujet.

Mise à jour
La bibliothèque Aide AD J'ai développé utilise l'espace System.DirectoryServices et met en œuvre des choses comme:
utilisateurs instancier dans ADAM: http://www.koders.com/csharp/fidCD7765F2E9C23683407CEFAFAFB68D3157857BFB.aspx ? s = CDEF:% 22Adam% 22 # L18
récursive obtenir tous les utilisateurs d'un groupe de sécurité: http://www.volumeracing.com/blog/?p=129
etc ...
Mon but est de mettre en œuvre ces choses comme un service WCF sur NetTcp donc au lieu d'inclure cette DLL AD Helper dans chaque projet qui voudrait faire ces choses un s bien, je peux juste avoir mes projets appellent le service WCF. Ensuite, si jamais j'avais besoin d'ajouter ou de mettre à jour la DLL AD Helper, je peux le faire sans avoir à mettre à jour tous mes projets qui implémentent la DLL AD Helper.

Répondre

0

Je voudrais vérifier ces choses avant de poursuivre:

Il y a beaucoup de choses dans cet espace - cependant, la plupart des cas, il nécessite des versions d'OS de rver (Windows Server 2008 ou 2008 R2). Je regarderais de près ces offres de Microsoft, puis déciderais si cela vaut la peine de le faire par vous-même - ou simplement utiliser cela à la place.

+0

Merci Marc. Je lis vos ressources mais je ne vois pas comment ADWS est différent d'utiliser System.DirectoryServices. J'utilise System.DirectoryServices pour m'interfacer avec AD et effectuer diverses tâches dans ma bibliothèque AD Helper. Je pensais que je créerais simplement un service WCF à partir de cela pour mes projets de référence au lieu d'ajouter la bibliothèque à chaque projet. De cette façon, le service WCF deviendrait le seul point de maintenance central pour les tâches AD, au cas où il aurait besoin d'être mis à jour ou ajouté au lieu d'avoir à mettre à jour manuellement tous les projets ayant implémenté la bibliothèque AD Helper. Cela a-t-il du sens? – nwayve

+0

@Dennis: pour autant que je sache, l'utilisation d'ADWS est à peu près ce que vous essayez de faire: résumer les détails de l'utilisation de S.DS derrière une interface de service qui est plus facile à utiliser et peut être appelé diverses applications.Si cet ensemble d'opérations ne correspond pas à vos besoins, alors oui - créer un service WCF pour cacher ces détails d'annuaire est certainement une bonne idée! –

+0

Eh bien, merci pour la référence à ADWS, c'est certainement quelque chose que j'aimerais en savoir plus mais mes recherches de documentation de base sur la façon d'utiliser le service sont en train de bupkis. Cet article (http://social.technet.microsoft.com/Forums/en-US/winserverDS/thread/ec2ff410-25ed-46f7-95e0-18b639935907) indique que ADWS n'est pas pris en charge/documenté à utiliser dans un .NET application. Il semble donc que pour l'instant, rouler mon propre service en utilisant S.DS est la meilleure solution. Aussi: http://stackoverflow.com/questions/2963905/using-active-directory-web-services-in-net-application – nwayve