C# ile Active Directory Kullanarak Login İşlemi

C# framework Active Directory bazlı otantikasyon (login) konusunda bize iki yol sunmaktadır. Birincisi PrincipalContext diğeri ise DirectoryEntry Classlarıdır.

Bu Classlar System.DirectoryServices ve System.DirectoryServices.AccountManagement namespace’i altındadır. DirectoryEntry class’ı oldukca eskidir. Yaygın olarak kullanılmaktadır ve birçok eski framework versiyonun tarafından desteklenmektedir.

PrincipalContext class’ı Framework 4 versiyonunuyla kullanılmaya başlanmıştır ve login işlemini kolaylıkla yapabileceğimiz bir method sunmaktadır.

Bu iki class’ı da ayrı ayrı örneklendireceğim. Login sonrası otorizasyonu konusu programcıya bırakıyorum.

DirectoryEntry Örneği:

//Username: textBox1.Text
//Password: textBox2.Text

DirectoryEntry myDomain = new DirectoryEntry("LDAP://domain.com.tr", textBox1.Text, textBox2.Text);
bool loginBasarili=false;
//Eğer dönen property var ise login olunmuştur.
if(myDomain.Properties.Count>0)
loginBasarili=true;

PrincipalContext Örneği:

//Username: textBox1.Text
//Password: textBox2.Text
bool loginBasarili=false;
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, "domain.com.tr"))
{
//Kullanıcı ve Şifre bilgilerini doğrulamasını yapar. Doğruysa login olunmuştur.

loginBasarili= pc.ValidateCredentials(textBox1.Text, textBox2.Text);
}

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*