Funzione SspiPromptForCredentialsA (sspi.h)

Consente a un'applicazione SSPI ( Security Support Provider Interface ) di richiedere a un utente di immettere le credenziali.

Sintassi

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

Parametri

[in] pszTargetName

Nome della destinazione da usare.

[in] pUiInfo

Puntatore a una struttura CREDUI_INFO che contiene informazioni per personalizzare l'aspetto della finestra di dialogo visualizzata da questa funzione.

Se il membro hwndParent della struttura CREDUI_INFO non è NULL, questa funzione visualizza una finestra di dialogo modale centrata sulla finestra padre.

Se il membro hwndParent della struttura CREDUI_INFO è NULL, la funzione visualizza una finestra di dialogo centrata sullo schermo.

Questa funzione ignora il membro hbmBanner della struttura CREDUI_INFO .

[in] dwAuthError

Codice di errore di Windows definito in Winerror.h, visualizzato nella finestra di dialogo. Se le credenziali raccolte in precedenza non sono state valide, il chiamante usa questo parametro per passare il messaggio di errore dall'API che ha raccolto le credenziali (ad esempio, Winlogon) a questa funzione. Il messaggio di errore corrispondente viene formattato e visualizzato nella finestra di dialogo. Impostare il valore di questo parametro su zero per visualizzare nessun messaggio di errore.

[in] pszPackage

Nome del pacchetto di sicurezza da usare.

[in] pInputAuthIdentity

Struttura di identità usata per popolare i campi delle credenziali nella finestra di dialogo. Per lasciare vuoti i campi delle credenziali, impostare il valore di questo parametro su NULL.

[out] ppAuthIdentity

Struttura di identità che rappresenta le credenziali raccolte da questa funzione.

Al termine dell'uso di questa struttura, liberarlo chiamando la funzione SspiFreeAuthIdentity .

[in, out, optional] pfSave

Puntatore a un valore booleano che, in input, specifica se la casella di controllo Salva è selezionata nella finestra di dialogo visualizzata da questa funzione. Nell'output il valore di questo parametro specifica se la casella di controllo Salva è stata selezionata quando l'utente ha fatto clic sul pulsante Invia nella finestra di dialogo. Impostare questo parametro su NULL per ignorare la casella di controllo Salva .

Questo parametro viene ignorato se il flag di CREDUIWIN_CHECKBOX non è impostato nel parametro dwFlags .

[in] dwFlags

Flag che determinano il comportamento di questa funzione. Il flag seguente è attualmente definito.

Valore Significato
SSPIPFC_CREDPROV_DO_NOT_SAVE
0x00000001
Il valore del parametro pfSave viene ignorato e le credenziali raccolte da questa funzione non vengono salvate.

Windows 7 e Windows Server 2008 R2: Il valore del parametro pfSave viene ignorato e le credenziali raccolte da questa funzione non vengono salvate. Solo il nome di questo valore possibile è SSPIPFC_SAVE_CRED_BY_CALLER.

SSPIPFC_NO_CHECKBOX
0x00000002
Il valore indica che i provider di credenziali password e smart card non visualizzeranno la casella di controllo "Ricorda le credenziali" all'utente. La funzione SspiPromptForCredentials passa questo valore di flag, SSPIPFC_NO_CHECKBOX, nel parametro pvInAuthBuffer della funzione CredUIPromptForWindowsCredentials .

Valore restituito

Se la funzione ha esito positivo, restituisce SEC_E_OK.

Se la funzione ha esito negativo, restituisce un codice di errore diverso da zero.

Commenti

Nota

L'intestazione sspi.h definisce SspiPromptForCredentials come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione sspi.h
Libreria Credui.lib
DLL Credui.dll