Share via


Método ICredentialProviderCredential::GetSerialization (credentialprovider.h)

Se llama en respuesta a un intento de enviar esta credencial al motor de autenticación subyacente.

Sintaxis

HRESULT GetSerialization(
  [out] CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
  [out] CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION   *pcpcs,
  [out] LPWSTR                                         *ppszOptionalStatusText,
  [out] CREDENTIAL_PROVIDER_STATUS_ICON                *pcpsiOptionalStatusIcon
);

Parámetros

[out] pcpgsr

Tipo: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE*

Indica el éxito o error del intento de serializar las credenciales.

[out] pcpcs

Tipo: CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION*

Puntero a la credencial. Dependiendo del resultado, puede que no haya ninguna credencial válida.

[out] ppszOptionalStatusText

Tipo: LPWSTR*

Puntero a un valor de cadena Unicode que mostrará la interfaz de usuario de inicio de sesión después de la serialización. Puede ser NULL.

[out] pcpsiOptionalStatusIcon

Tipo: CREDENTIAL_PROVIDER_STATUS_ICON*

Puntero a un icono que mostrará la credencial después de la llamada a GetSerialization . Este valor puede ser NULL.

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Este método es necesario.

El CREDENTIAL_PROVIDER_USAGE_SCENARIO indica cuál sería la respuesta adecuada cuando el usuario intenta enviar credenciales. En la tabla siguiente se indica cómo responder en función del escenario de uso.

CPUS_CHANGE_PASSWORD No se produce ninguna serialización de credenciales en este escenario. En este escenario, el proveedor de credenciales debe actualizar la información privada del usuario y devolver CPGSR_NO_CREDENTIAL_FINISHED como pcpgsr.
CPUS_CREDUI La información de credenciales debe serializarse y entregarse a la aplicación que llama.
CPUS_LOGON, CPUS_UNLOCK_WORKSTATION La información de credenciales debe empaquetarse en una secuencia binaria y transmitirse a Winlogon y, finalmente, a LSA.
 

Procedimientos recomendados del proveedor de credenciales

Los proveedores de credenciales controlan secretos de usuario extremadamente confidenciales para completar las solicitudes de inicio de sesión y desbloqueo. Como procedimiento recomendado, la información secreta, como contraseñas y PIN, debe controlarse con el máximo cuidado. Las técnicas adecuadas para controlar la información secreta dentro de un proveedor de credenciales son:
  • Descartar siempre los secretos de forma segura. Para ello, llame a SecureZeroMemory antes de liberar la memoria usada para contener cualquier secreto.
  • Descarte los secretos de forma segura inmediatamente después de que se usen.
  • Descarte de forma segura los secretos si no se usan para su propósito previsto dentro de un período de tiempo esperado.

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado credentialprovider.h