Funzione WlxLoggedOutSAS (winwlx.h)
[La funzione WlxLoggedOutSAS non è più disponibile per l'uso a partire da Windows Server 2008 e Windows Vista.]
La funzione WlxLoggedOutSAS deve essere implementata da una DLL GINA sostitutiva. Winlogon chiama questa funzione quando riceve un evento sas ( Secure Attention Sequence ) mentre nessun utente è connesso.
Sintassi
int WlxLoggedOutSAS(
[in] PVOID pWlxContext,
[in] DWORD dwSasType,
[out] PLUID pAuthenticationId,
[in, out] PSID pLogonSid,
[out] PDWORD pdwOptions,
[out] PHANDLE phToken,
[out] PWLX_MPR_NOTIFY_INFO pNprNotifyInfo,
[out] PVOID *pProfile
);
Parametri
[in] pWlxContext
Puntatore al contesto GINA associato a questa stazione finestra. L'GINA restituisce questo valore di contesto quando Winlogon chiama WlxInitialize per questa stazione.
[in] dwSasType
Specifica il tipo di firma di accesso condiviso che si è verificato. I valori da zero a WLX_SAS_TYPE_MAX_MSFT_VALUE sono riservati per definire tipi di firma di accesso condiviso Microsoft standard. Gli sviluppatori di GINA possono definire tipi di firma di accesso condiviso aggiuntivi usando valori maggiori di WLX_SAS_TYPE_MAX_MSFT_VALUE.
I tipi di firma di accesso condiviso seguenti sono predefiniti.
Valore | Significato |
---|---|
|
Indica che un utente ha digitato lo standard CTRL+ALT+DEL SAS. |
|
Indica che una smart card è stata inserita in un dispositivo compatibile. |
|
Indica che una smart card è stata rimossa da un dispositivo compatibile. |
|
Indica che non è stato ricevuto alcun input utente entro il periodo di timeout specificato. |
[out] pAuthenticationId
Specifica l'identificatore di autenticazione associato alla sessione di accesso corrente. È possibile ottenere questo valore chiamando GetTokenInformation per ottenere una struttura TOKEN_STATISTICS per il token restituito dalla funzione LogonUser .
[in, out] pLogonSid
In input, questo parametro punta a un identificatore di sicurezza (SID) univoco alla sessione di accesso corrente. Winlogon usa questo SID per modificare la protezione nella stazione finestra e nel desktop dell'applicazione in modo che il nuovo utente connesso possa accedervi.
In output, Winlogon fornisce un SID. È anche possibile ottenere il SID usando la funzione GetTokenInformation per recuperare una struttura TOKEN_GROUPS per il token restituito dalla funzione LogonUser . A tale scopo, cercare la matrice restituita nella struttura TOKEN_GROUPS per il gruppo con l'attributo SE_GROUP_LOGON_ID.
[out] pdwOptions
Puntatore a un DWORD che contiene il set di opzioni di accesso. L'opzione seguente è definita.
Valore | Significato |
---|---|
|
Indica che Winlogon non deve caricare un profilo per l'utente connesso. La DLL GINA si occupa di questa attività o l'utente non ha bisogno di un profilo. |
[out] phToken
Puntatore a una variabile handle. Quando l'operazione di accesso ha esito positivo, impostare questo handle su un token che rappresenta l'utente connesso. Usare la funzione LogonUser per ottenere questo token, quindi, quando l'utente si disconnette, Winlogon chiude questo handle e chiama la funzione WlxLogoff .
Se è necessario questo handle dopo aver chiamato la funzione WlxLogoff , creare un duplicato dell'handle prima di restituirlo a Winlogon.
[out] pNprNotifyInfo
Puntatore a una struttura WLX_MPR_NOTIFY_INFO contenente informazioni su dominio, nome utente e password per l'utente. Winlogon userà queste informazioni per fornire informazioni di identificazione e autenticazione ai provider di rete.
L'GINA non è necessaria per restituire le informazioni sulla password. Tutti i campi NULL all'interno della struttura verranno ignorati da Winlogon. Usare LocalAlloc per allocare ogni stringa; Winlogon li libera quando non sono più necessari.
L'GINA deve fornire valori di dominio, utente e password per la funzionalità completa della directory sessione. Se la password non è specificata, La directory sessione richiederà all'utente di immettere la password due volte prima che l'utente sia connesso al server.
Per informazioni sulla protezione delle password, vedere Gestione delle password.
[out] pProfile
In caso di restituzione da un'autenticazione riuscita, il parametro pProfile punta a una WLX_PROFILE_V1_0 o a una struttura WLX_PROFILE_V2_0 . Il primo DWORD nella struttura indica quale struttura è. Winlogon usa questa struttura per caricare il profilo dell'utente connesso e libera la memoria associata alla struttura quando non ne ha più bisogno.
Valore restituito
Se la funzione ha esito negativo, la funzione restituisce zero.
Se la funzione ha esito positivo, restituisce uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Indica che un utente ha eseguito l'accesso. |
|
Indica che il tentativo registrato non è riuscito o annullato. |
|
Indica che l'utente ha richiesto che il sistema venga arrestato. |
Commenti
Prima di chiamare WlxLoggedOutSAS, Winlogon imposta lo stato desktop in modo che il desktop corrente sia il desktop Winlogon e imposta lo stato della workstation in modo che il desktop sia bloccato.
Non attivare il programma della shell utente in WlxLoggedOutSAS. Il programma della shell utente deve essere sempre attivato in WlxActivateUserShell.
Requisiti
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winwlx.h |