Csharp ile Active Directory den herhangi bir bilgiyi okumak için aşağıdaki pratik methodu kullanabilirsiniz;
Aşağıdaki Örnek de, IIS tarafında Windows Authentication şeklinde yapılandırılmış bir asp.net uygulamasında,
sayfayı görüntüleyen user ın mail adresi alınmaktadır.
//"System.DiretoryServices" .NET Referansı projeye dahil edildikten sonra using System.DirectoryServices;
//Kullanıcının mail adresini alır
string loginusername=
HttpContext.Current.User.Identity.Name.ToString().Replace("DOMAINADI\\","");
string mailadres=
ADdeger("DOMAINADI", loginusername, "mail");
public string ADdeger(string DomainName,string accountname,string attribute)
{
DirectoryEntry entry = new DirectoryEntry("LDAP://"+DomainName);
DirectorySearcher Dsearch = new DirectorySearcher(entry);
Dsearch.Filter = "(&(sAMAccountName=" + accountname + "))";
if(Dsearch.FindAll()[0].Properties.Contains(attribute))
{return Dsearch.FindAll()[0].Properties[attribute][0].ToString() ;}
else {return string.Empty;}
}
Web Configde System.Web altına
satırını eklyerek impersonate kullanmalısınız.

04 Mart 2011
Yorum Yaz
Taglar:
7 Okunma 
Son Yorumlar