Metodo IAzApplication::InitializeClientContextFromStringSid (azroles.h)
Il metodo InitializeClientContextFromStringSid ottiene un puntatore a oggetti IAzClientContextdall'identificatore di sicurezza (SID) specificato in formato testo.
Sintassi
HRESULT InitializeClientContextFromStringSid(
[in] BSTR SidString,
[in] LONG lOptions,
[in, optional] VARIANT varReserved,
[out] IAzClientContext **ppClientContext
);
Parametri
[in] SidString
Stringa contenente il formato di testo del SID dell'entità di sicurezza. Deve trattarsi di un SID di stringa valido che può essere convertito dalla funzione ConvertStringSidToSid .
[in] lOptions
Opzioni per la creazione del contesto.
Se viene specificato AZ_CLIENT_CONTEXT_SKIP_GROUP, il SID specificato nel parametro SidString non è necessariamente un account utente valido. Il SID verrà usato per creare il contesto senza convalida. Il contesto creato verrà contrassegnato come creato da un SID, la stringa SID verrà archiviata nel campo del nome client e il campo del nome di dominio sarà vuoto. I gruppi di token non verranno usati nella creazione del contesto client. I gruppi di query LDAP (Lightweight Directory Access Protocol) non sono supportati quando viene specificato AZ_CLIENT_CONTEXT_SKIP_GROUP. Poiché l'account non viene convalidato in Active Directory, le proprietà delle informazioni utente del contesto client, ad esempio UserSamCompat, non saranno valide e, quando vi si accede, restituiranno ERROR_INVALID_HANDLE. La proprietà RoleForAccessCheck e il metodo AccessCheck di IAzClientContext possono comunque essere usati per specificare un ruolo per il controllo di accesso. Il metodo GetRoles di IAzClientContext può comunque essere usato per enumerare i ruoli assegnati al contesto all'interno di un ambito specifico.
Se non viene specificato AZ_CLIENT_CONTEXT_SKIP_GROUP, il SID deve rappresentare un account utente valido.
[in, optional] varReserved
Riservato per utilizzi futuri. Questo parametro può essere uno dei valori seguenti:
- varReserved.vt == VT_ERROR e varReserved.scode == DISP_E_PARAMNOTFOUND
- varReserved.vt == VT_EMPTY
- varReserved.vt == VT_NULL
- varReserved.vt == VT_I4 e varReserved.lVal == 0
- varReserved.vt == VT_I2 e varReserved.iVal == 0
[out] ppClientContext
Puntatore a un puntatore all'oggetto IAzClientContext restituito.
Valore restituito
Se la funzione ha esito positivo, la funzione restituisce S_OK.
Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.
Commenti
Se possibile, chiamare la funzione InitializeClientContextFromToken anziché InitializeClientContextFromStringSid. InitializeClientContextFromStringSid tenta di recuperare le informazioni disponibili in un token di accesso in cui il client ha effettivamente eseguito l'accesso. Un token di accesso effettivo fornisce altre informazioni, ad esempio il tipo di accesso e le proprietà di accesso, e riflette il comportamento del pacchetto di autenticazione usato per l'accesso. Il contesto client creato da InitializeClientContextFromToken usa un token di accesso e il contesto client risultante è più completo e accurato di un contesto client creato da InitializeClientContextFromStringSid.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | azroles.h |
Libreria | Azroles.lib |
DLL | Azroles.dll |
Componente ridistribuibile | Windows Server 2003 Administration Tools Pack in Windows XP |