共用方式為


SspiPromptForCredentialsA 函式 (sspi.h)

允許 安全性支援提供者介面 (SSPI) 應用程式提示使用者輸入認證。

語法

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
);

參數

[in] pszTargetName

要使用的目標名稱。

[in] pUiInfo

CREDUI_INFO 結構的指標,其中包含自定義此函式顯示之對話框外觀的資訊。

如果 CREDUI_INFO 結構的 hwndParent 成員未 NULL,則此函式會顯示以父視窗為中心的強制回應對話框。

如果 hwndParentCREDUI_INFO 結構的成員 NULL,則函式會顯示以畫面為中心的對話框。

此函式會忽略 CREDUI_INFO 結構的 hbmBanner 成員。

[in] dwAuthError

在 Winerror.h 中定義的 Windows 錯誤碼,會顯示在對話框中。 如果先前收集的認證無效,呼叫端會使用此參數,將收集認證 API 的錯誤訊息(例如 Winlogon) 傳遞至此函式。 對應的錯誤訊息會格式化並顯示在對話框中。 將此參數的值設定為零,以顯示沒有錯誤訊息。

[in] pszPackage

要使用的安全性套件名稱。

[in] pInputAuthIdentity

用來在對話框中填入認證欄位的身分識別結構。 若要讓認證欄位保持空白,請將此參數的值設定為 NULL

[out] ppAuthIdentity

識別結構,表示此函式所收集的認證。

當您完成使用此結構時,請呼叫 SspiFreeAuthIdentity 函式來釋放它。

[in, out, optional] pfSave

在輸入時,布爾值的指標會指定此函式顯示的對話框中是否已選取 [儲存] 複選框。 在輸出中,此參數的值會指定當使用者在對話框中按兩下 [送出] 按鈕時,是否已選取 [儲存] 複選框。 將此參數設定為 NULL 忽略 [儲存] 複選框

如果未在 dwFlags 參數中設定 CREDUIWIN_CHECKBOX 旗標,則會忽略此參數。

[in] dwFlags

決定此函式行為的旗標。 目前已定義下列旗標。

價值 意義
SSPIPFC_CREDPROV_DO_NOT_SAVE
0x00000001
會忽略 pfSave 參數的值,而且不會儲存此函式收集的認證。

Windows 7 和 Windows Server 2008 R2:會忽略 pfSave 參數的值,而且不會儲存此函式收集的認證。 只有這個可能值的名稱SSPIPFC_SAVE_CRED_BY_CALLER。

SSPIPFC_NO_CHECKBOX
0x00000002
值表示密碼和智慧卡認證提供者不會向使用者顯示 [記住我的認證] 複選框。 SspiPromptForCredentials 函式會在 CredUIPromptForWindowsCredentials 函式的 pvInAuthBuffer 參數中傳遞這個旗標值 SSPIPFC_NO_CHECKBOX。

傳回值

如果函式成功,則會傳回 SEC_E_OK

如果函式失敗,則會傳回非零的錯誤碼。

言論

注意

sspi.h 標頭會根據 UNICODE 預處理器常數的定義,將 SspiPromptForCredentials 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2008 R2 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 sspi.h
連結庫 Credui.lib
DLL Credui.dll