Share via


Función SspiPromptForCredentialsA (sspi.h)

Permite que una aplicación de interfaz de proveedor de soporte técnico de seguridad (SSPI) pida a un usuario que escriba las credenciales.

Sintaxis

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

Parámetros

[in] pszTargetName

Nombre del destino que se va a usar.

[in] pUiInfo

Puntero a una estructura de CREDUI_INFO que contiene información para personalizar la apariencia del cuadro de diálogo que muestra esta función.

Si el miembro hwndParent de la estructura CREDUI_INFO no es NULL, esta función muestra un cuadro de diálogo modal centrado en la ventana primaria.

Si el miembro hwndParent de la estructura CREDUI_INFO es NULL, la función muestra un cuadro de diálogo centrado en la pantalla.

Esta función omite el miembro hbmBanner de la estructura CREDUI_INFO .

[in] dwAuthError

Código de error de Windows, definido en Winerror.h, que se muestra en el cuadro de diálogo. Si las credenciales recopiladas anteriormente no eran válidas, el autor de la llamada usa este parámetro para pasar el mensaje de error de la API que recopiló las credenciales (por ejemplo, Winlogon) a esta función. Se da formato al mensaje de error correspondiente y se muestra en el cuadro de diálogo. Establezca el valor de este parámetro en cero para mostrar ningún mensaje de error.

[in] pszPackage

Nombre del paquete de seguridad que se va a usar.

[in] pInputAuthIdentity

Estructura de identidad que se usa para rellenar los campos de credenciales en el cuadro de diálogo. Para dejar vacíos los campos de credenciales, establezca el valor de este parámetro en NULL.

[out] ppAuthIdentity

Estructura de identidad que representa las credenciales que recopila esta función.

Cuando haya terminado de usar esta estructura, ábrela llamando a la función SspiFreeAuthIdentity .

[in, out, optional] pfSave

Un puntero a un valor booleano que, en la entrada, especifica si la casilla Guardar está seleccionada en el cuadro de diálogo que muestra esta función. En la salida, el valor de este parámetro especifica si la casilla Guardar se seleccionó cuando el usuario hizo clic en el botón Enviar en el cuadro de diálogo. Establezca este parámetro en NULL para omitir la casilla Guardar .

Este parámetro se omite si la marca CREDUIWIN_CHECKBOX no está establecida en el parámetro dwFlags .

[in] dwFlags

Marcas que determinan el comportamiento de esta función. La marca siguiente está definida actualmente.

Valor Significado
SSPIPFC_CREDPROV_DO_NOT_SAVE
0x00000001
El valor del parámetro pfSave se omite y no se guardan las credenciales recopiladas por esta función.

Windows 7 y Windows Server 2008 R2: El valor del parámetro pfSave se omite y no se guardan las credenciales recopiladas por esta función. Solo se SSPIPFC_SAVE_CRED_BY_CALLER el nombre de este posible valor.

SSPIPFC_NO_CHECKBOX
0x00000002
El valor indica que los proveedores de credenciales de tarjeta inteligente y contraseña no mostrarán la casilla "Recordar mis credenciales" al usuario. La función SspiPromptForCredentials pasa este valor de marca, SSPIPFC_NO_CHECKBOX, en el parámetro pvInAuthBuffer de la función CredUIPromptForWindowsCredentials .

Valor devuelto

Si la función se ejecuta correctamente, devuelve SEC_E_OK.

Si se produce un error en la función, devuelve un código de error distinto de cero.

Comentarios

Nota

El encabezado sspi.h define SspiPromptForCredentials como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado sspi.h
Library Credui.lib
Archivo DLL Credui.dll