c# active directory ldap

0

merhabalar

üniversite öğrencisiyim lisans bitirme projemde cok takıldığımız bir konu var bilgisi olandan acil yardım istiyoruz.

c# kullanarak active directory de ldap a bağlanark verilerimi sicil numarasına göre aratarak donen sonuçları textlerde göstermek istiyorum.

sorunumuz bu daha önce bu konuyla ilgilenen bilgili arkadaşların yardımını rica ediyoruz.

semraiskndr semraiskndr (1)
8 yıl önce sordu

    Toplam 1 Cevap


    0

    Aşağıda C# ile Active Directory üzerinde nasıl sorgu yapıldığına dair bir örnek var.

    Bu örnek üzerinden gidebilirsiniz. 

    Kodlardaki username ve password'u kendinize göre düzenleyin. Buradaki user yani kullanıcı Administrator haklarına sahip olmalıdır.

     

     DirectoryEntry rootDSE = rootDSE = new DirectoryEntry("LDAP://OU="",OU=" ",dc="me",dc=com", username, password);
    
        DirectorySearcher search = new DirectorySearcher(rootDSE);
    
        search.PageSize = 1001;// To Pull up more than 100 records.
    
         search.Filter = "(&(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))";//UserAccountControl will only Include Non-Disabled Users.
          SearchResultCollection result = search.FindAll();
    
             foreach (SearchResult item in result)
            {
                if (item.Properties["cn"].Count > 0)
                {
                    DisplayName = item.Properties["cn"][0].ToString();
                }
                if (item.Properties["mail"].Count > 0)
                {
                    EmailAddress = item.Properties["mail"][0].ToString();
                }
                if (item.Properties["SamAccountName"].Count > 0)
                {
                    DomainName = item.Properties["SamAccountName"][0].ToString();
                }
                if (item.Properties["department"].Count > 0)
                {
                    Department = item.Properties["department"][0].ToString();
                }
                if (item.Properties["title"].Count > 0)
                {
                    title = item.Properties["title"][0].ToString();
                }
                if (item.Properties["company"].Count > 0)
                {
                    company = item.Properties["company"][0].ToString();
                }
                if (item.Properties["DistinguishedName"].Count > 0)
                {
                    memberof = item.Properties["DistinguishedName"][0].ToString();
                }
                if (item.Properties["AccountExpirationDate"].Count > 0)
                {
                    string aaa = item.Properties["AccountExpirationDate"][0].ToString();
                }
    
                  dt.Rows.Add(DisplayName, EmailAddress, DomainName, Department, title, company, memberof);
                 DisplayName = string.Empty;
                 EmailAddress = string.Empty;
                 DomainName = string.Empty;
                 Department = string.Empty;
                 title = string.Empty;
                 company = string.Empty;
                 memberof = string.Empty;
    
                   rootDSE.Dispose();

    Kod stackoverflow'dan alnmıştır.

    cemkara cemkara (4215)
    8 yıl önce cevaplandı

      üyelik gerektirir

      Cevap yazabilmek için üye girişi yapmalısınız.

      Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
      uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol