Fungsi LsaCallAuthenticationPackage (ntsecapi.h)
Fungsi LsaCallAuthenticationPackage digunakan oleh aplikasi masuk untuk berkomunikasi dengan paket autentikasi.
Fungsi ini biasanya digunakan untuk mengakses layanan yang disediakan oleh paket autentikasi.
Sintaks
NTSTATUS LsaCallAuthenticationPackage(
[in] HANDLE LsaHandle,
[in] ULONG AuthenticationPackage,
[in] PVOID ProtocolSubmitBuffer,
[in] ULONG SubmitBufferLength,
[out] PVOID *ProtocolReturnBuffer,
[out] PULONG ReturnBufferLength,
[out] PNTSTATUS ProtocolStatus
);
Parameter
[in] LsaHandle
Handel yang diperoleh dari panggilan sebelumnya ke LsaRegisterLogonProcess atau LsaConnectUntrusted.
[in] AuthenticationPackage
Menyediakan pengidentifikasi paket autentikasi. Nilai ini diperoleh dengan memanggil LsaLookupAuthenticationPackage.
[in] ProtocolSubmitBuffer
Buffer pesan khusus paket autentikasi yang diteruskan ke paket autentikasi.
Untuk informasi tentang format dan konten buffer ini, lihat dokumentasi untuk paket autentikasi individual.
[in] SubmitBufferLength
Menunjukkan panjang, dalam byte, dari buffer ProtocolSubmitBuffer .
[out] ProtocolReturnBuffer
Pointer yang menerima alamat buffer yang dikembalikan oleh paket autentikasi.
Untuk informasi tentang format dan konten buffer ini, lihat dokumentasi untuk paket autentikasi individual.
Buffer ini dialokasikan oleh fungsi ini. Setelah Anda selesai menggunakan buffer ini, kosongkan memori dengan memanggil fungsi LsaFreeReturnBuffer .
[out] ReturnBufferLength
Penunjuk ke ULONG yang menerima panjang buffer yang dikembalikan, dalam byte.
[out] ProtocolStatus
Jika fungsi berhasil, parameter ini menerima kode NTSTATUS yang menunjukkan status penyelesaian paket autentikasi.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan adalah STATUS_SUCCESS. Periksa parameter ProtocolStatus untuk mendapatkan status yang dikembalikan oleh paket autentikasi.
Jika fungsi gagal, nilai yang dikembalikan adalah kode NTSTATUS . Berikut ini adalah kemungkinan kode kesalahan.
Menampilkan kode | Deskripsi |
---|---|
|
Panggilan tidak dapat diselesaikan karena kuota memori klien tidak cukup untuk mengalokasikan buffer pengembalian. |
|
Paket autentikasi yang ditentukan tidak dikenali oleh LSA. |
|
Klien Kerberos menerima sertifikat KDC yang tidak valid. Untuk masuk perangkat, validasi KDC yang ketat diperlukan, sehingga KDC harus memiliki sertifikat yang menggunakan templat "Autentikasi Kerberos" atau yang setara. Sertifikat KDC juga dapat kedaluwarsa, dicabut, atau klien sedang dalam serangan aktif mengirim permintaan ke server yang salah. |
|
Klien Kerberos menggunakan sertifikat sistem yang tidak valid. Untuk masuk perangkat, harus ada nama DNS. Selain itu, sertifikat sistem dapat kedaluwarsa atau sertifikat yang salah dapat dipilih. |
Untuk informasi selengkapnya, lihat Nilai Pengembalian Fungsi Kebijakan LSA.
Fungsi LsaNtStatusToWinError mengonversi kode NTSTATUS menjadi kode kesalahan Windows.
Keterangan
Aplikasi masuk dapat memanggil LsaCallAuthenticationPackage untuk berkomunikasi dengan paket autentikasi. Ada beberapa alasan mengapa aplikasi dapat melakukan ini:
- Untuk menerapkan protokol autentikasi beberapa pesan, seperti protokol Challenge-Response NTLM.
- Untuk meneruskan informasi perubahan status ke paket autentikasi. Misalnya, NTLM mungkin memberi tahu paket MSV1_0 bahwa pengendali domain yang sebelumnya tidak dapat dijangkau sekarang dapat dijangkau. Paket autentikasi kemudian akan masuk kembali setiap pengguna yang masuk ke pengendali domain tersebut.
Anda harus memanggil LsaCallAuthenticationPackage untuk membersihkan kredensial perangkat PKINIT untuk LOCAL_SYSTEM dan NETWORK_SERVICE. Ketika tidak ada kredensial perangkat PKINIT, panggilan yang berhasil tidak melakukan operasi. Ketika ada kredensial perangkat PKINIT, panggilan yang berhasil membersihkan kredensial perangkat PKINIT sehingga hanya kredensial kata sandi yang tersisa.
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 | Secur32.lib |
DLL | Secur32.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk