Question

Je me demande simplement si quelqu'un sait ou a créé un wrapper autour d'Active Directory pour pouvoir l'interroger facilement dans .net? Un peu comme " LINQ-to-ActiveDirectory " ou un dialecte SQL, c’est-à-dire pouvoir faire "SELECT DISTINCT (DEPARTMENT) FROM / Users / SomeOU / AnotherOU" ou " SELECT utilisateur du domaine " ou peu importe.

Pour autant que je sache, il est possible d'interroger WMI et IIS dans un fichier "SQLesque". Ainsi, je me demande simplement si quelque chose de similaire est possible pour Active Directory également, sans avoir à apprendre un autre langage de requête (LDAP)?

Était-ce utile?

La solution

  

LINQ to Active Directory implémente une   Fournisseur de requêtes LINQ personnalisé qui permet   interroger des objets dans Active Directory.   En interne, les requêtes sont traduites   dans les filtres LDAP qui sont envoyés à   le serveur utilisant le   System.DirectoryServices .NET   Bibliothèque de framework.

http://www.codeplex.com/LINQtoAD

Exemple (du site):

// NOTE: Entity type definition "User" omitted in sample - see samples in release.

var users = new DirectorySource<User>(ROOT, SearchScope.Subtree);
users.Log = Console.Out;

var res = from usr in users
          where usr.FirstName.StartsWith("B") && usr.Office == "2525"
          select new { Name = usr.FirstName + " " + usr.LastName, usr.Office, usr.LogonCount };

foreach (var u in res)
{
    Console.WriteLine(u);
    u.Office = "5252";
    u.SetPassword(pwd);
}

users.Update();
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top