Structures/CLAIM_SECURITY_ATTRIBUTE_V1.ps1
<#
.SYNOPSIS The CLAIM_SECURITY_ATTRIBUTE_V1 structure defines a security attribute that can be associated with a token or authorization context. .PARAMETER Name A pointer to a string of Unicode characters that contains the name of the security attribute. This string must be at least 4 bytes in length. .PARAMETER ValueType A union tag value that indicates the type of information contained in the Values member. .PARAMETER Reserved This member is reserved and must be set to zero when sent and must be ignored when received. .PARAMETER Flags The attribute flags that are a 32-bitmask. Bits 16 through 31 may be set to any value. Bits 0 through 15 must be zero or a combination of one or more of the following mask values. .PARAMETER ValueCount The number of values specified in the Values member. .PARAMETER Values An array of security attribute values of the type specified in the ValueType member. .PARAMETER pInt64 Pointer to an array of ValueCount members where each member is a LONG64 of type CLAIM_SECURITY_ATTRIBUTE_TYPE_INT64. .PARAMETER pUint64 Pointer to an array of ValueCount members where each member is a ULONG64 of type CLAIM_SECURITY_ATTRIBUTE_TYPE_UINT64. .PARAMETER ppString Pointer to an array of ValueCount members where each member is a PWSTR of type CLAIM_SECURITY_ATTRIBUTE_TYPE_STRING. .PARAMETER pFqbn Pointer to an array of ValueCount members where each member is a fully qualified binary name value of type CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE. .PARAMETER pOctetString Pointer to an array of ValueCount members where each member is an octet string of type CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE. .NOTES Author: Jared Atkinson (@jaredcatkinson) License: BSD 3-Clause Required Dependencies: PSReflect, CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE (Structure), CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE (Structure) Optional Dependencies: None typedef struct _CLAIM_SECURITY_ATTRIBUTE_V1 { PWSTR Name; WORD ValueType; WORD Reserved; DWORD Flags; DWORD ValueCount; union { PLONG64 pInt64; PDWORD64 pUint64; PWSTR *ppString; PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE pFqbn; PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE pOctetString; } Values; } CLAIM_SECURITY_ATTRIBUTE_V1, *PCLAIM_SECURITY_ATTRIBUTE_V1; .LINK https://msdn.microsoft.com/en-us/library/windows/desktop/hh448489(v=vs.85).aspx #> $CLAIM_SECURITY_ATTRIBUTE_V1 = struct $Module CLAIM_SECURITY_ATTRIBUTE_V1 @{ Name = field 0 IntPtr ValueType = field 1 UInt16 Reserved = field 2 UInt16 Flags = field 3 UInt32 ValueCount = field 4 UInt32 pInt64 = field 5 IntPtr pUint64 = field 6 IntPtr ppString = field 7 IntPtr pFqbn = field 8 $CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE pOctetString = field 9 $CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE } |