Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Dapatkan Maklumat Pengguna (Nama dan Nama Pengguna) daripada Active Directory?

Bagaimanakah Saya Boleh Dapatkan Maklumat Pengguna (Nama dan Nama Pengguna) daripada Active Directory?

DDD
DDDasal
2025-01-06 13:22:41659semak imbas

How Can I Retrieve User Information (Name and Username) from Active Directory?

Mengambil semula Maklumat Pengguna daripada Active Directory

Untuk mengumpulkan senarai pengguna daripada Active Directory bersama dengan nama pengguna yang sepadan, nama pertama dan nama keluarga, pertimbangkan pendekatan berikut:

Memahami Active Directory Struktur

Direktori Aktif menyusun data secara hierarki, dengan bekas dan objek yang dikenal pasti dengan nama yang terkenal. Memahami struktur ini adalah penting sebelum melakukan pertanyaan.

Pertanyaan LDAP dan Pencari Utama

Direktori Aktif ialah pelayan LDAP dan pertanyaan LDAP boleh digunakan untuk mendapatkan maklumat. Untuk pertanyaan khusus pengguna, kelas PrincipalSearcher daripada System.DirectoryServices.AccountManagement disyorkan.

Contoh Kod untuk Retrieval

Sampel kod berikut menunjukkan cara untuk mendapatkan maklumat pengguna menggunakan Pencari Utama:

using (var context = new PrincipalContext(ContextType.Domain, "yourdomain.com"))
{
    using (var searcher = new PrincipalSearcher(new UserPrincipal(context)))
    {
        foreach (var result in searcher.FindAll())
        {
            DirectoryEntry de = result.GetUnderlyingObject() as DirectoryEntry;
            Console.WriteLine("First Name: " + de.Properties["givenName"].Value);
            Console.WriteLine("Last Name : " + de.Properties["sn"].Value);
            Console.WriteLine("SAM account name   : " + de.Properties["samAccountName"].Value);
            Console.WriteLine("User principal name: " + de.Properties["userPrincipalName"].Value);
            Console.WriteLine();
        }
    }
}

Pertimbangan Atribut

Perhatikan bahawa "Nama yang diberi" sepadan dengan Nama Pertama, manakala "sn" mewakili Nama Akhir. Bagi nama pengguna, Active Directory menyimpan dua nama log masuk: "samAccountName" (pra-Windows 2000) dan "userPrincipalName" (post-Windows 2000).

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Maklumat Pengguna (Nama dan Nama Pengguna) daripada Active Directory?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn