Metodo ICredentialProviderCredential::GetSerialization (credentialprovider.h)
Chiamato in risposta a un tentativo di inviare questa credenziale al motore di autenticazione sottostante.
Sintassi
HRESULT GetSerialization(
[out] CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
[out] CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,
[out] LPWSTR *ppszOptionalStatusText,
[out] CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon
);
Parametri
[out] pcpgsr
Tipo: CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE*
Indica l'esito positivo o negativo del tentativo di serializzare le credenziali.
[out] pcpcs
Tipo: CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION*
Puntatore alle credenziali. A seconda del risultato, potrebbe non essere presente alcuna credenziale valida.
[out] ppszOptionalStatusText
Tipo: LPWSTR*
Puntatore a un valore stringa Unicode che verrà visualizzato dall'interfaccia utente di accesso dopo la serializzazione. Può essere NULL.
[out] pcpsiOptionalStatusIcon
Tipo: CREDENTIAL_PROVIDER_STATUS_ICON*
Puntatore a un'icona che verrà visualizzata dalle credenziali dopo la chiamata a GetSerialization . Questo valore può essere NULL.
Valore restituito
Tipo: HRESULT
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Questo metodo è obbligatorio.
La CREDENTIAL_PROVIDER_USAGE_SCENARIO indica la risposta appropriata quando l'utente tenta di inviare le credenziali. La tabella seguente indica come rispondere in base allo scenario di utilizzo.
CPUS_CHANGE_PASSWORD | In questo scenario non si verifica alcuna serializzazione delle credenziali. In questo scenario il provider di credenziali deve aggiornare le informazioni private dell'utente e restituire CPGSR_NO_CREDENTIAL_FINISHED come pcpgsr. |
CPUS_CREDUI | Le informazioni sulle credenziali devono essere serializzate e recapitate all'applicazione chiamante. |
CPUS_LOGON, CPUS_UNLOCK_WORKSTATION | Le informazioni sulle credenziali devono essere raggruppate in un flusso binario e trasmesse a Winlogon e infine LSA. |
Procedure consigliate per il provider di credenziali
I provider di credenziali gestiscono segreti utente estremamente sensibili per completare l'accesso e sbloccare le richieste. Come procedura consigliata, le informazioni segrete, ad esempio password e PIN, devono essere gestite con la massima attenzione. Le tecniche appropriate per la gestione delle informazioni segrete all'interno di un provider di credenziali sono:- Eliminare sempre i segreti in modo sicuro. A tale scopo, chiamare SecureZeroMemory prima di liberare la memoria usata per contenere qualsiasi segreto.
- Eliminare in modo sicuro i segreti immediatamente dopo l'uso.
- Eliminare in modo sicuro i segreti se non vengono usati per lo scopo previsto entro un periodo di tempo previsto.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | credentialprovider.h |