diff --git a/PInvoke/Security/AdvApi32/WinNT.cs b/PInvoke/Security/AdvApi32/WinNT.cs
index 70eca830..a3c46392 100644
--- a/PInvoke/Security/AdvApi32/WinNT.cs
+++ b/PInvoke/Security/AdvApi32/WinNT.cs
@@ -302,6 +302,37 @@ namespace Vanara.PInvoke
SECURITY_CAPABILITY_REMOVABLE_STORAGE = 0x0000000A,
}
+ /// The MANDATORY_LEVEL enumeration lists the possible security levels.
+ /// These values have been adjusted to equal the RID values of the mandatory SID label.
+ ///
+ // https://docs.microsoft.com/en-us/windows/win32/api/winnt/ne-winnt-mandatory_level typedef enum _MANDATORY_LEVEL {
+ // MandatoryLevelUntrusted, MandatoryLevelLow, MandatoryLevelMedium, MandatoryLevelHigh, MandatoryLevelSystem,
+ // MandatoryLevelSecureProcess, MandatoryLevelCount } MANDATORY_LEVEL, *PMANDATORY_LEVEL;
+ [PInvokeData("winnt.h", MSDNShortId = "NE:winnt._MANDATORY_LEVEL")]
+ public enum MANDATORY_LEVEL : uint
+ {
+ /// Untrusted
+ MandatoryLevelUntrusted = 0,
+
+ /// Low
+ MandatoryLevelLow = 0x1000,
+
+ /// Medium
+ MandatoryLevelMedium = 0x2000,
+
+ /// Medium High
+ MandatoryLevelMediumHigh = MandatoryLevelMedium + 0x100,
+
+ /// High
+ MandatoryLevelHigh = 0x3000,
+
+ /// System
+ MandatoryLevelSystem = 0x4000,
+
+ /// Secure process
+ MandatoryLevelSecureProcess = 0x5000,
+ }
+
///
/// A set of bit flags that indicate whether the ObjectType and InheritedObjectType members are present in an object ACE.
///