LUID_AND_ATTRIBUTES structure (wdm.h)

LUID_AND_ATTRIBUTES represents a locally unique identifier (LUID) and its attributes.

Syntax

typedef struct _LUID_AND_ATTRIBUTES {
  LUID  Luid;
  ULONG Attributes;
} LUID_AND_ATTRIBUTES, *PLUID_AND_ATTRIBUTES;

Members

Luid

An LUID value.

Attributes

Specifies attributes of the LUID. This value contains up to 32 one-bit flags. Its meaning depends on the definition and use of the LUID.

The following attributes are defined for privileges:

Attribute Description
SE_PRIVILEGE_ENABLED The privilege is enabled.
SE_PRIVILEGE_ENABLED_BY_DEFAULT The privilege is enabled by default.
SE_PRIVILEGE_USED_FOR_ACCESS The privilege was used to gain access to an object or service. This flag is used to identify the relevant privileges in a set passed by a client application that may contain unnecessary privileges.

Remarks

An LUID_AND_ATTRIBUTES structure can represent an LUID whose attributes change frequently, such as when it is used to represent privileges in the PRIVILEGE_SET structure. Privileges are represented by LUIDs and have attributes indicating whether they are currently enabled or disabled.

Be aware of the following derived types:

typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY];
typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY;

Requirements

Requirement Value
Header wdm.h (include Ntddk.h, Ntifs.h, Fltkernel.h)

See also

LUID

PRIVILEGE_SET

SeFilterToken

SePrivilegeCheck