Jacob Bellamy
Jacob Bellamy

Reputation: 779

How to programmatically retrieve information from LDAP

I am running an ASP.Net page on IIS7, and developing in VS 2008. Currently, I have user authentication being done through an LDAP connection. Once the user logs in, on one page they have a form with some basic information about them (such as their name, email address, country, and the like) and I wish to pre populate some of these fields from information already stored in the LDAP. In particular their given name and email addresses. The question is, using C#, how do I actually retrieve this information?

Upvotes: 6

Views: 6066

Answers (1)

Nick Craver
Nick Craver

Reputation: 630429

Sounds like you're on .Net 3.5 SP1, in that case you can use the System.DirectoryServices.AccountManagement namespace that greatly simplifies this.

Here's a sample:

var pc = new PrincipalContext(ContextType.Domain, "mydomaincontroller");
var u = UserPrincipal.FindByIdentity(pn, userName);
var email = u.EmailAddress;
var name = u.DisplayName;

Here's a full list of properties you can grab.

Upvotes: 9

Related Questions