Fungsi LsaEnumerateTrustedDomains (ntsecapi.h)
Fungsi LsaEnumerateTrustedDomains mengambil nama dan SID domain yang dipercaya untuk mengautentikasi kredensial masuk. LsaEnumerateTrustedDomains ditujukan untuk digunakan pada sistem yang menjalankan Windows NT 4.0 atau versi Windows NT yang lebih lama. Gunakan DsEnumerateDomainTrusts untuk tujuan enumerasi kepercayaan lainnya. Secara khusus, LsaEnumerateTrustedDomains hanya dapat digunakan jika satu atau beberapa hal berikut ini benar:
- Sistem panggilan menjalankan Windows NT 4.0 atau versi Windows NT yang lebih lama.
- Sistem target (ditentukan menggunakan parameter PolicyHandle ), adalah pengendali domain yang menjalankan Windows NT 4.0 atau versi yang lebih lama.
- Sistem panggilan menjalankan Windows NT 4.0 atau versi yang lebih lama dan bukan pengendali domain, dan sistem target adalah pengendali domain di domain sistem panggilan. Sistem target dapat menjalankan versi Windows NT apa pun, termasuk Windows 2000 dan Windows XP.
Sintaks
NTSTATUS LsaEnumerateTrustedDomains(
[in] LSA_HANDLE PolicyHandle,
[in] PLSA_ENUMERATION_HANDLE EnumerationContext,
[out] PVOID *Buffer,
[in] ULONG PreferedMaximumLength,
[out] PULONG CountReturned
);
Parameter
[in] PolicyHandle
Handel ke objek Policy . Handel harus memiliki hak akses POLICY_VIEW_LOCAL_INFORMATION. Untuk informasi selengkapnya, lihat Membuka Penanganan Objek Kebijakan.
[in] EnumerationContext
Penunjuk ke handel enumerasi yang memungkinkan Anda melakukan beberapa panggilan untuk menghitung semua domain tepercaya. Pada panggilan pertama ke LsaEnumerateTrustedDomains, EnumerationContext harus menunjuk ke variabel yang telah diinisialisasi ke nol. Pada panggilan berikutnya ke LsaEnumerateTrustedDomains, EnumerationContext harus menunjuk ke handel enumerasi yang dikembalikan oleh panggilan sebelumnya.
[out] Buffer
Menerima penunjuk ke array struktur LSA_TRUST_INFORMATION yang berisi nama dan SID dari satu atau beberapa domain tepercaya.
Ketika Anda tidak lagi memerlukan informasi, teruskan pointer yang dikembalikan ke LsaFreeMemory.
[in] PreferedMaximumLength
Menentukan ukuran maksimum yang disukai, dalam byte, dari buffer yang dikembalikan. Informasi ini adalah perkiraan; jumlah byte aktual yang dikembalikan mungkin lebih besar dari nilai ini.
[out] CountReturned
Penunjuk ke variabel yang menerima jumlah elemen yang dikembalikan dalam parameter Buffer .
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan adalah salah satu nilai NTSTATUS berikut.
Nilai | Deskripsi |
---|---|
|
Enumerasi telah berhasil diselesaikan. |
|
Panggilan berhasil, tetapi ada lebih banyak domain tepercaya yang akan dijumlahkan. Panggil LsaEnumerateTrustedDomains lagi, meneruskan nilai yang dikembalikan dalam parameter EnumerationContext . |
|
Tidak ada lagi domain tepercaya untuk dijumlahkan. |
Jika fungsi gagal, nilai yang dikembalikan adalah kode NTSTATUS. Untuk informasi selengkapnya, lihat Nilai Pengembalian Fungsi Kebijakan LSA.
Anda dapat menggunakan fungsi LsaNtStatusToWinError untuk mengonversi kode NTSTATUS ke kode kesalahan Windows.
Keterangan
Untuk domain dengan pengendali domain yang hanya menjalankan Windows NT 4.0 atau versi Windows NT yang lebih lama, LsaEnumerateTrustedDomains mengembalikan daftar semua domain tepercaya. Dalam rilis Windows NT hingga dan termasuk rilis 4.0, semua domain tepercaya secara langsung dipercaya.
Di domain mode campuran Windows XP dan Windows 2000, pengendali domain mungkin menjalankan Windows XP, Windows 2000, atau Windows NT. Oleh karena itu, dalam domain mode campuran, beberapa domain tepercaya dipercaya secara langsung dan yang lain secara tidak langsung dipercaya. Saat menghitung domain tepercaya sistem dalam domain mode campuran, LsaEnumerateTrustedDomains hanya mengembalikan domain tepercaya secara langsung.
Sebaliknya, domain mode asli Windows XP dan Windows 2000 hanya berisi pengontrol domain Windows 2000, meskipun mungkin ada anggota di domain yang menjalankan Windows NT 4.0 atau versi yang lebih lama. Saat menghitung domain tepercaya sistem dalam domain Windows XP dan Windows 2000 mode asli, LsaEnumerateTrustedDomains mengembalikan domain tepercaya secara langsung dan tidak langsung.
Mengambil semua informasi kepercayaan mungkin memerlukan lebih dari satu panggilan LsaEnumerateTrustedDomains . Anda dapat menggunakan parameter EnumerationContext untuk melakukan beberapa panggilan, sebagai berikut: Pada panggilan pertama, atur variabel yang diacu oleh EnumerationContext ke nol. Jika LsaEnumerateTrustedDomains mengembalikan STATUS_SUCCESS atau STATUS_MORE_ENTRIES, panggil fungsi lagi, meneruskan nilai EnumerationContext yang dikembalikan oleh panggilan sebelumnya. Enumerasi selesai ketika fungsi mengembalikan STATUS_NO_MORE_ENTRIES.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | ntsecapi.h |
Pustaka | Advapi32.lib |
DLL | Advapi32.dll |
Lihat juga
LSA_TRUST_INFORMATION