Bagikan melalui


Menyesuaikan Winlogon

Sesuaikan perilaku Winlogon dengan menerapkan Penyedia Kredensial. Untuk informasi tentang Penyedia Kredensial, lihat Antarmuka ICredentialProvider.

Windows Server 2003 dan Windows XP: Penyedia Kredensial tidak didukung.

Bagian berikut ini menjelaskan cara untuk menyesuaikan Winlogon di versi Windows sebelum Windows Vista.

Catatan

DLL GINA dan paket pemberitahuan Winlogon diabaikan di Windows Vista.

 

Paket Pemberitahuan Winlogon

Paket pemberitahuan Winlogon adalah DLL yang mengekspor fungsi yang menangani peristiwa Winlogon. Misalnya, ketika pengguna masuk ke sistem, Winlogon memanggil setiap paket pemberitahuan untuk memberikan informasi tentang peristiwa tersebut. Untuk informasi selengkapnya, lihat Paket Pemberitahuan Winlogon.

Ganja GINA

Stub GINA adalah DLL GINA kustom yang menggunakan implementasi fungsi ekspor dari DLL GINA yang diinstal sebelumnya (biasanya MsGina.dll). Stub GINA mendapatkan pointer ke setiap fungsi yang diekspor oleh DLL GINA yang diinstal sebelumnya. Setiap fungsi stub GINA kemudian menggunakan penunjuk fungsi yang sesuai untuk memanggil fungsi yang sesuai di DLL GINA yang diinstal sebelumnya.

Penting

Setiap fungsi stub GINA harus memanggil fungsi yang sesuai di GINA yang diinstal sebelumnya.

 

Fungsi stub GINA dapat menerapkan fungsionalitas tambahan dalam satu atau beberapa fungsi ekspornya. Misalnya, fungsi WlxLoggedOutSAS dari stub GINA mungkin memeriksa waktu saat ini sebelum memanggil fungsi WlxLoggedOutSAS dari MsGina.dll. Jika waktu saat ini berada dalam rentang tertentu, fungsi stub dapat menampilkan pesan yang menunjukkan masuk tidak diizinkan selama periode waktu tersebut dan mengembalikan WLX_SAS_ACTION_NONE ke Winlogon. Fungsi WlxLoggedOutSAS dari MsGina.dll kemudian hanya akan dipanggil selama periode waktu yang diizinkan.

Aplikasi stub GINA mendapatkan tabel pengiriman ke fungsi dukungan Winlogon melalui parameter pWinlogonFunctions dari fungsi WlxInitialize . Aplikasi stub GINA dapat menggunakan tabel pengiriman ini untuk memanggil fungsi dukungan Winlogon. Misalnya, aplikasi stub GINA dapat memanggil fungsi WlxSasNotify untuk menyebabkan peristiwa urutan perhatian aman (SAS) ketika kartu pintar dimasukkan ke pembaca.

Untuk informasi selengkapnya tentang membuat stub GINA, lihat sampel Gina Stubs di direktori \Samples\Security\Gina\GinaStub dari penginstalan Platform Software Development Kit (SDK).

Catatan

Semua panggilan antara GINA dan Winlogon harus berada dalam satu utas.

 

Kait GINA

Kait GINA adalah potong GINA yang, dalam implementasi fungsi WlxInitialize , menggantikan penunjuk ke fungsi dukungan WlxDialogBoxParam dalam tabel pengiriman dengan penunjuk ke implementasinya sendiri dari fungsi WlxDialogBoxParam . Akibatnya, setiap kali GINA yang diinstal sebelumnya (biasanya MsGina.dll) memanggil fungsi WlxDialogBoxParam , fungsi yang diimplementasikan oleh kait GINA dipanggil.

Fungsi WlxDialogBoxParam yang diterapkan oleh kait GINA dapat menggantikan prosedur panggilan balik DialogProc yang merespons peristiwa kotak dialog tertentu.

Ini memberikan kontrol penuh kait GINA atas tampilan dan perilaku semua kotak dialog yang MsGina.dll buat.

Untuk informasi selengkapnya tentang membuat kait GINA, lihat sampel Gina Hooks di direktori \Samples\Security\Gina\GinaHook dari penginstalan Platform SDK.

Catatan

Semua panggilan antara GINA dan Winlogon harus berada dalam satu utas.