Функция 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 , содержащую сведения для настройки внешнего вида диалогового окна, отображаемого этой функцией.
Если элемент hwndParent структуры CREDUI_INFO не имеет значения NULL, эта функция отображает модальное диалоговое окно по центру родительского окна.
Если элемент hwndParent структуры CREDUI_INFO имеет значение NULL, функция отображает диалоговое окно по центру экрана.
Эта функция игнорирует элемент hbmBanner структуры CREDUI_INFO .
[in] dwAuthError
Код ошибки Windows, определенный в Winerror.h, который отображается в диалоговом окне. Если собранные ранее учетные данные были недопустимыми, вызывающий объект использует этот параметр для передачи сообщения об ошибке из API, который собрал учетные данные (например, Winlogon) в эту функцию. Соответствующее сообщение об ошибке форматируется и отображается в диалоговом окне. Задайте значение этого параметра равным нулю, чтобы сообщение об ошибке не отображалось.
[in] pszPackage
Имя используемого пакета безопасности.
[in] pInputAuthIdentity
Структура удостоверения, используемая для заполнения полей учетных данных в диалоговом окне. Чтобы оставить поля учетных данных пустыми, задайте для этого параметра значение NULL.
[out] ppAuthIdentity
Структура удостоверения, представляющая учетные данные, собираемые этой функцией.
Завершив использование этой структуры, освободите ее, вызвав функцию SspiFreeAuthIdentity .
[in, out, optional] pfSave
Указатель на логическое значение, указывающее, выбрано ли поле Сохранить проверка в диалоговом окне, отображаемом этой функцией. В выходных данных значение этого параметра указывает, было ли выбрано поле Сохранить проверка, когда пользователь нажимал кнопку Отправить в диалоговом окне. Присвойте этому параметру значение NULL, чтобы игнорировать поле Сохранить проверка.
Этот параметр игнорируется, если флаг CREDUIWIN_CHECKBOX не задан в параметре dwFlags .
[in] dwFlags
Флаги, определяющие поведение этой функции. В настоящее время определен следующий флаг.
Значение | Значение |
---|---|
|
Значение параметра pfSave игнорируется, а учетные данные, собранные этой функцией, не сохраняются.
Windows 7 и Windows Server 2008 R2: Значение параметра pfSave игнорируется, а учетные данные, собранные этой функцией, не сохраняются. Было SSPIPFC_SAVE_CRED_BY_CALLER только имя этого возможного значения. |
|
Значение означает, что поставщики учетных данных паролей и смарт-карта не будут отображать флажок "Запомнить мои учетные данные" для пользователя. Функция SspiPromptForCredentials передает это значение флага, SSPIPFC_NO_CHECKBOX, в параметр pvInAuthBuffer функции CredUIPromptForWindowsCredentials . |
Возвращаемое значение
Если функция выполняется успешно, она возвращает SEC_E_OK.
Если функция завершается сбоем, она возвращает ненулевой код ошибки.
Комментарии
Примечание
Заголовок sspi.h определяет SspiPromptForCredentials как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | sspi.h |
Библиотека | Credui.lib |
DLL | Credui.dll |