enumerazione TOKEN_INFORMATION_CLASS (winnt.h)
L'enumerazione TOKEN_INFORMATION_CLASS contiene valori che specificano il tipo di informazioni assegnate o recuperate da un token di accesso.
La funzione GetTokenInformation usa questi valori per indicare il tipo di informazioni sul token da recuperare.
La funzione SetTokenInformation usa questi valori per impostare le informazioni sul token.
Sintassi
typedef enum _TOKEN_INFORMATION_CLASS {
TokenUser = 1,
TokenGroups,
TokenPrivileges,
TokenOwner,
TokenPrimaryGroup,
TokenDefaultDacl,
TokenSource,
TokenType,
TokenImpersonationLevel,
TokenStatistics,
TokenRestrictedSids,
TokenSessionId,
TokenGroupsAndPrivileges,
TokenSessionReference,
TokenSandBoxInert,
TokenAuditPolicy,
TokenOrigin,
TokenElevationType,
TokenLinkedToken,
TokenElevation,
TokenHasRestrictions,
TokenAccessInformation,
TokenVirtualizationAllowed,
TokenVirtualizationEnabled,
TokenIntegrityLevel,
TokenUIAccess,
TokenMandatoryPolicy,
TokenLogonSid,
TokenIsAppContainer,
TokenCapabilities,
TokenAppContainerSid,
TokenAppContainerNumber,
TokenUserClaimAttributes,
TokenDeviceClaimAttributes,
TokenRestrictedUserClaimAttributes,
TokenRestrictedDeviceClaimAttributes,
TokenDeviceGroups,
TokenRestrictedDeviceGroups,
TokenSecurityAttributes,
TokenIsRestricted,
TokenProcessTrustLevel,
TokenPrivateNameSpace,
TokenSingletonAttributes,
TokenBnoIsolation,
TokenChildProcessFlags,
TokenIsLessPrivilegedAppContainer,
TokenIsSandboxed,
TokenIsAppSilo,
TokenLoggingInformation,
MaxTokenInfoClass
} TOKEN_INFORMATION_CLASS, *PTOKEN_INFORMATION_CLASS;
Costanti
TokenUser Valore: 1 Il buffer riceve un TOKEN_USER struttura che contiene l'account utente del token. |
TokenGroups Il buffer riceve un TOKEN_GROUPS struttura che contiene gli account di gruppo associati al token. |
TokenPrivileges Il buffer riceve un TOKEN_PRIVILEGES struttura che contiene i privilegi del token. |
TokenOwner Il buffer riceve un TOKEN_OWNER struttura che contiene l'identificatore di sicurezza del proprietario predefinito (SID) per gli oggetti appena creati. |
TokenPrimaryGroup Il buffer riceve un TOKEN_PRIMARY_GROUP struttura che contiene il SID del gruppo primario predefinito per gli oggetti appena creati. |
TokenDefaultDacl Il buffer riceve un TOKEN_DEFAULT_DACL struttura che contiene l'elenco DACL predefinito per gli oggetti appena creati. |
TokenSource Il buffer riceve un TOKEN_SOURCE struttura che contiene l'origine del token. TOKEN_QUERY_SOURCE l'accesso è necessario per recuperare queste informazioni. |
TokenType Il buffer riceve un TOKEN_TYPE valore che indica se il token è un token primario o di rappresentazione. |
TokenImpersonationLevel Il buffer riceve un SECURITY_IMPERSONATION_LEVEL valore che indica il livello di rappresentazione del token. Se il token di accesso non è un token di rappresentazione, la funzione ha esito negativo. |
TokenStatistics Il buffer riceve un TOKEN_STATISTICS struttura che contiene varie statistiche di token. |
TokenRestrictedSids Il buffer riceve un TOKEN_GROUPS struttura che contiene l'elenco di SID limitati in un token con restrizioni. |
TokenSessionId Il buffer riceve un valore DWORD che indica l'identificatore di sessione di Servizi terminal associato al token. Se il token è associato alla sessione client del server terminal, l'identificatore di sessione è diverso da zero. Windows Server 2003 e Windows XP: Se il token è associato alla sessione della console del server terminal, l'identificatore della sessione è zero. In un ambiente non Terminal Services l'identificatore di sessione è zero. Se TokenSessionId è impostato con SetTokenInformation, l'applicazione deve avere il privilegio Act As Part of the Operating System e l'applicazione deve essere abilitata per impostare l'ID sessione in un token. |
TokenGroupsAndPrivileges Il buffer riceve una struttura TOKEN_GROUPS_AND_PRIVILEGES che contiene il SID utente, gli account di gruppo, i SID con restrizioni e l'ID di autenticazione associato al token. |
TokenSessionReference Riservato. |
TokenSandBoxInert Il buffer riceve un valore DWORD diverso da zero se il token include il flag SANDBOX_INERT . |
TokenAuditPolicy Riservato. |
TokenOrigin Il buffer riceve un valore TOKEN_ORIGIN . Se il token è stato generato da un accesso che usa credenziali esplicite, ad esempio passando un nome, un dominio e una password alla funzione LogonUser , la struttura TOKEN_ORIGIN conterrà l'ID della sessione di accesso che l'ha creata. Se il token deriva dall'autenticazione di rete, ad esempio una chiamata a AcceptSecurityContext o una chiamata a LogonUser con dwLogonType impostato su LOGON32_LOGON_NETWORK o LOGON32_LOGON_NETWORK_CLEARTEXT, questo valore sarà zero. |
TokenElevationType Il buffer riceve un valore TOKEN_ELEVATION_TYPE che specifica il livello di elevazione del token. |
TokenLinkedToken Il buffer riceve una struttura TOKEN_LINKED_TOKEN che contiene un handle a un altro token collegato a questo token. |
TokenElevation Il buffer riceve una struttura TOKEN_ELEVATION che specifica se il token è elevato. |
TokenHasRestrictions Il buffer riceve un valore DWORD diverso da zero se il token è stato filtrato. |
TokenAccessInformation Il buffer riceve una struttura TOKEN_ACCESS_INFORMATION che specifica le informazioni di sicurezza contenute nel token. |
TokenVirtualizationAllowed Il buffer riceve un valore DWORD diverso da zero se la virtualizzazione è consentita per il token. |
TokenVirtualizationEnabled Il buffer riceve un valore DWORD diverso da zero se la virtualizzazione è abilitata per il token. |
TokenIntegrityLevel Il buffer riceve una struttura TOKEN_MANDATORY_LABEL che specifica il livello di integrità del token. |
TokenUIAccess Il buffer riceve un valore DWORD diverso da zero se il token ha il flag UIAccess impostato. |
TokenMandatoryPolicy Il buffer riceve una struttura TOKEN_MANDATORY_POLICY che specifica i criteri di integrità obbligatori del token. |
TokenLogonSid Il buffer riceve una struttura TOKEN_GROUPS che specifica il SID di accesso del token. |
TokenIsAppContainer Il buffer riceve un valore DWORD diverso da zero se il token è un token del contenitore dell'app. Tutti i chiamanti che controllano TokenIsAppContainer e hanno restituito 0 devono anche verificare che il token del chiamante non sia un token di rappresentazione a livello di identificazione. Se il token corrente non è un contenitore di app ma è un token a livello di identità, è necessario restituire AccessDenied. |
TokenCapabilities Il buffer riceve una struttura TOKEN_GROUPS che contiene le funzionalità associate al token. |
TokenAppContainerSid Il buffer riceve una struttura TOKEN_APPCONTAINER_INFORMATION che contiene l'oggetto AppContainerSid associato al token. Se il token non è associato a un contenitore di app, il membro TokenAppContainer della struttura TOKEN_APPCONTAINER_INFORMATION punta a NULL. |
TokenAppContainerNumber Il buffer riceve un valore DWORD che include il numero del contenitore dell'app per il token. Per i token che non sono token del contenitore di app, questo valore è zero. |
TokenUserClaimAttributes Il buffer riceve una struttura CLAIM_SECURITY_ATTRIBUTES_INFORMATION che contiene le attestazioni utente associate al token. |
TokenDeviceClaimAttributes Il buffer riceve una struttura CLAIM_SECURITY_ATTRIBUTES_INFORMATION che contiene le attestazioni del dispositivo associate al token. |
TokenRestrictedUserClaimAttributes Questo valore è riservato. |
TokenRestrictedDeviceClaimAttributes Questo valore è riservato. |
TokenDeviceGroups Il buffer riceve una struttura TOKEN_GROUPS che contiene i gruppi di dispositivi associati al token. |
TokenRestrictedDeviceGroups Il buffer riceve una struttura TOKEN_GROUPS che contiene i gruppi di dispositivi con restrizioni associati al token. |
TokenSecurityAttributes Questo valore è riservato. |
TokenIsRestricted Questo valore è riservato. |
TokenProcessTrustLevel |
TokenPrivateNameSpace |
TokenSingletonAttributes |
TokenBnoIsolation |
TokenChildProcessFlags |
TokenIsLessPrivilegedAppContainer Fa riferimento a un'appcontainer con privilegi minimi (LPAC). Un LPAC è in effetti un AppContainer ignorato dal SID ALL_APPLICATION_PACKAGES . Per informazioni su appContainer, vedi AppContainer per le app legacy. Molte risorse in Windows sono ACL con ALL_APPLICATION_PACKAGES, come descritto in DoNotAddAllApplicationPackagesToRestrictions. Negli scenari in cui si vuole eseguire un processo senza diritti per alcuna risorsa, ad eccezione di ciò che si concede esplicitamente (ad esempio, un web browser che esegue un processo di lavoro figlio), un appContaoiner ha troppo accesso al sistema a causa di ALL_APPLICATION_PACKAGES. È qui che entra in gioco un LPAC. È possibile creare un LPAC solo in modo imperativo tramite LE API; non dichiarativo tramite appxmanifest.xml . |
MaxTokenInfoClass Valore massimo dell'enumerazione. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | winnt.h (include Windows.h) |