Bagikan melalui


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
STATUS_SUCCESS
Enumerasi telah berhasil diselesaikan.
STATUS_MORE_ENTRIES
Panggilan berhasil, tetapi ada lebih banyak domain tepercaya yang akan dijumlahkan. Panggil LsaEnumerateTrustedDomains lagi, meneruskan nilai yang dikembalikan dalam parameter EnumerationContext .
STATUS_NO_MORE_ENTRIES
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

LsaEnumerateTrustedDomainsEx

LsaFreeMemory

LsaOpenPolicy