Fungsi SspiPromptForCredentialsA (sspi.h)

Memungkinkan aplikasi Antarmuka Penyedia Dukungan Keamanan (SSPI) meminta pengguna untuk memasukkan kredensial.

Sintaks

unsigned long SEC_ENTRY SspiPromptForCredentialsA(
  [in]                PCSTR                           pszTargetName,
  [in]                PCREDUI_INFOA                   pUiInfo,
  [in]                unsigned long                   dwAuthError,
  [in]                PCSTR                           pszPackage,
  [in]                PSEC_WINNT_AUTH_IDENTITY_OPAQUE pInputAuthIdentity,
  [out]               PSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppAuthIdentity,
  [in, out, optional] int                             *pfSave,
  [in]                unsigned long                   dwFlags
);

Parameter

[in] pszTargetName

Nama target yang akan digunakan.

[in] pUiInfo

Penunjuk ke struktur CREDUI_INFO yang berisi informasi untuk menyesuaikan tampilan kotak dialog yang ditampilkan fungsi ini.

Jika anggota hwndParent dari struktur CREDUI_INFO bukan NULL, fungsi ini menampilkan kotak dialog modal yang berpusat di jendela induk.

Jika anggota hwndParent dari struktur CREDUI_INFO adalah NULL, fungsi akan menampilkan kotak dialog yang berpusat di layar.

Fungsi ini mengabaikan anggota hbmBanner dari struktur CREDUI_INFO .

[in] dwAuthError

Kode kesalahan Windows, didefinisikan dalam Winerror.h, yang ditampilkan dalam kotak dialog. Jika kredensial yang dikumpulkan sebelumnya tidak valid, pemanggil menggunakan parameter ini untuk meneruskan pesan kesalahan dari API yang mengumpulkan kredensial (misalnya, Winlogon) ke fungsi ini. Pesan kesalahan terkait diformat dan ditampilkan dalam kotak dialog. Atur nilai parameter ini ke nol untuk tidak menampilkan pesan kesalahan.

[in] pszPackage

Nama paket keamanan yang akan digunakan.

[in] pInputAuthIdentity

Struktur identitas yang digunakan untuk mengisi bidang kredensial dalam kotak dialog. Untuk membiarkan bidang kredensial kosong, atur nilai parameter ini ke NULL.

[out] ppAuthIdentity

Struktur identitas yang mewakili kredensial yang dikumpulkan fungsi ini.

Setelah Anda selesai menggunakan struktur ini, bebaskan dengan memanggil fungsi SspiFreeAuthIdentity .

[in, out, optional] pfSave

Penunjuk ke nilai Boolean yang, pada input, menentukan apakah kotak centang Simpan dipilih dalam kotak dialog yang ditampilkan fungsi ini. Pada output, nilai parameter ini menentukan apakah kotak centang Simpan dipilih saat pengguna mengklik tombol Kirim dalam kotak dialog. Atur parameter ini ke NULL untuk mengabaikan kotak centang Simpan .

Parameter ini diabaikan jika bendera CREDUIWIN_CHECKBOX tidak diatur dalam parameter dwFlags .

[in] dwFlags

Bendera yang menentukan perilaku fungsi ini. Bendera berikut saat ini ditentukan.

Nilai Makna
SSPIPFC_CREDPROV_DO_NOT_SAVE
0x00000001
Nilai parameter pfSave diabaikan, dan kredensial yang dikumpulkan oleh fungsi ini tidak disimpan.

Windows 7 dan Windows Server 2008 R2: Nilai parameter pfSave diabaikan, dan kredensial yang dikumpulkan oleh fungsi ini tidak disimpan. Hanya nama nilai yang mungkin ini yang SSPIPFC_SAVE_CRED_BY_CALLER.

SSPIPFC_NO_CHECKBOX
0x00000002
Nilai menandakan bahwa penyedia info masuk kata sandi dan kartu pintar tidak akan menampilkan kotak centang "Ingat kredensial saya" kepada pengguna. Fungsi SspiPromptForCredentials meneruskan nilai bendera ini, SSPIPFC_NO_CHECKBOX, dalam parameter pvInAuthBuffer dari fungsi CredUIPromptForWindowsCredentials .

Nilai kembali

Jika fungsi berhasil, fungsi akan mengembalikan SEC_E_OK.

Jika fungsi gagal, fungsi mengembalikan kode kesalahan bukan nol.

Keterangan

Catatan

Header sspi.h mendefinisikan SspiPromptForCredentials sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 R2 [hanya aplikasi desktop]
Target Platform Windows
Header sspi.h
Pustaka Credui.lib
DLL Credui.dll