Called in response to an attempt to submit this credential to the underlying authentication engine.
HRESULT GetSerialization( [out] CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr, [out] CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs, [out] LPWSTR *ppszOptionalStatusText, [out] CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon );
- pcpgsr [out]
Contains a pointer to a member of the CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE enumeration.
- pcpcs [out]
Contains a pointer to a CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION structure containing the credential.
- ppszOptionalStatusText [out]
When this method returns, contains the address of a pointer to a Unicode string value. May be NULL.
- pcpsiOptionalStatusIcon [out]
When this method returns, contains a pointer to a member of the CREDENTIAL_PROVIDER_STATUS_ICON enumeration. This value can be NULL.
If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
This method is required.
Credential providers handle extremely sensitive user secrets in order to complete logon and unlock requests. As a best practice, secret information such as passwords and PINs should be handled with the utmost care. Proper techniques for handling secret information within a credential provider are:
- Always securely discard secrets. To do this, call SecureZeroMemory before freeing the memory used to hold any secret.
- Securely discard secrets promptly after they are used.
- Securely discard secrets if they are not used for their intended purpose within an expected amount of time.
Minimum supported client
|Windows Vista [desktop apps only]|
Minimum supported server
|Windows Server 2008 [desktop apps only]|