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