estructura LSA_TOKEN_INFORMATION_V3 (ntsecpkg.h)
La estructura de LSA_TOKEN_INFORMATION_V3 agrega compatibilidad con notificaciones al token de LSA y contiene información que un paquete de autenticación puede colocar en un objeto de token de Windows de la versión 3 y se ha supercedido LSA_TOKEN_INFORMATION_V1.
Un objeto de token de Windows de la versión 3 almacena toda la información necesaria para compilar un token desde el paquete de autenticación a la autoridad de seguridad local (LSA). El LSA pasa esta información al kernel para crear un objeto de token y devolver un identificador a ese objeto de token al autor de la llamada de LsaLogonUser. LSA supone que el primer miembro de esta estructura es idéntico a los de la estructura LSA_TOKEN_INFORMATION_V1 .
Sintaxis
typedef struct _LSA_TOKEN_INFORMATION_V3 {
LARGE_INTEGER ExpirationTime;
TOKEN_USER User;
PTOKEN_GROUPS Groups;
TOKEN_PRIMARY_GROUP PrimaryGroup;
PTOKEN_PRIVILEGES Privileges;
TOKEN_OWNER Owner;
TOKEN_DEFAULT_DACL DefaultDacl;
TOKEN_USER_CLAIMS UserClaims;
TOKEN_DEVICE_CLAIMS DeviceClaims;
PTOKEN_GROUPS DeviceGroups;
} LSA_TOKEN_INFORMATION_V3, *PLSA_TOKEN_INFORMATION_V3;
Members
ExpirationTime
Hora en la que el contexto de seguridad no es válido. Use un valor en el futuro lejano si el contexto nunca expira. La versión actual del kernel del sistema operativo no aplica esta hora de expiración.
User
TOKEN_USER estructura que contiene el SID del usuario que inicia sesión. El valor del SID del identificador de seguridad se encuentra en un bloque de memoria asignado por separado.
Groups
TOKEN_GROUPS estructura que contiene los SID de los grupos de los que es miembro el usuario. Esto no debe incluir WORLD u otros SID definidos por el sistema y asignados por el sistema. El LSA los agregará automáticamente.
Se espera que cada SID esté en un bloque de memoria asignado por separado. También se espera que la estructura de TOKEN_GROUPS esté en un bloque de memoria asignado por separado. Todos estos bloques de memoria deben asignarse mediante una llamada a la función AllocatePrivateHeap .
PrimaryGroup
TOKEN_PRIMARY_GROUP estructura que se usa para establecer el grupo principal del usuario. Este valor no tiene que corresponder a uno de los SID asignados al usuario.
Se espera que el SID señalado por esta estructura esté en un bloque de memoria asignado por separado.
Este miembro es obligatorio y debe rellenarse.
Privileges
TOKEN_PRIVILEGES estructura que contiene los privilegios asignados al usuario. Cualquier directiva de seguridad local asignada aumentará o invalidará esta lista de privilegios.
Se espera que cada privilegio esté en un bloque de memoria asignado por separado. También se espera que la estructura TOKEN_PRIVILEGES esté en un bloque de memoria asignado por separado.
Si no hay privilegios para asignar al usuario, este miembro puede establecerse en NULL.
Owner
TOKEN_OWNER estructura. Este miembro se puede usar para establecer un propietario predeterminado explícito. Normalmente, el identificador de usuario se usa como propietario predeterminado. Si se desea otro valor, debe especificarse aquí.
El miembro Owner.Sid puede establecerse en NULL para indicar que no hay ningún valor de propietario predeterminado alternativo.
DefaultDacl
TOKEN_DEFAULT_DACL estructura. Este miembro se puede usar para establecer una protección predeterminada para el usuario. Si no se proporciona ningún valor, se establecerá una protección predeterminada que conceda a todos los usuarios todo el acceso.
El miembro DefaultDacl.DefaultDacl se puede establecer en NULL para indicar que no hay ninguna protección predeterminada.
UserClaims
TOKEN_USER_CLAIMS estructura. Este miembro almacena el BLOB de notificaciones de usuario opaco para el token. El miembro UserClaims se puede establecer en NULL para indicar que no hay notificaciones de usuario adicionales en el token. Las notificaciones son entidades de solo permiso, por lo que la omisión de notificaciones puede restringir el acceso.
DeviceClaims
TOKEN_DEVICE_CLAIMS estructura. Este miembro almacena el BLOB de notificaciones del dispositivo opaco para el token. El miembro DeviceClaims puede establecerse en NULL para indicar que no hay ninguna notificación de dispositivo adicional en el token. Las notificaciones son entidades de solo permiso, por lo que la omisión de notificaciones puede restringir el acceso.
DeviceGroups
TOKEN_GROUPS estructura que contiene los SID de los grupos para el miembro del dispositivo de autenticación. Al igual que con los grupos de usuarios, esto no debe incluir WORLD u otros SID definidos o asignados por el sistema. El miembro DeviceGroups se puede establecer en NULL para indicar que no se debe producir ningún compuesto. Si DeviceGroups está presente, LSA agregará WORLD y otros SID asignados.
A diferencia de los grupos de usuarios, no hay ninguna noción de un grupo de dispositivos principal.
Se espera que cada SID esté en un bloque de memoria asignado por separado. También se espera que la estructura de TOKEN_GROUPS esté en un bloque de memoria asignado por separado.
Requisitos
Cliente mínimo compatible | Windows 8 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2012 [solo aplicaciones de escritorio] |
Encabezado | ntsecpkg.h |