You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
781 lines
27 KiB
781 lines
27 KiB
|
|
|
|
// (c) 1998-1999 Microsoft Corporation. All rights reserved.
|
|
|
|
#pragma autorecover
|
|
#pragma classflags("forceupdate")
|
|
|
|
Qualifier Description : ToSubClass Amended;
|
|
Qualifier Values : ToSubClass Amended;
|
|
Qualifier DisplayName : Amended;
|
|
Qualifier BitValues:ToSubClass Amended ;
|
|
|
|
Qualifier Aggregate : ToSubClass ;
|
|
Qualifier ValueMap : ToSubClass ;
|
|
Qualifier Aggregation : ToSubClass ;
|
|
Qualifier ArrayType : ToSubClass ;
|
|
Qualifier Association : ToInstance ToSubClass DisableOverride ;
|
|
Qualifier BitMap : ToSubClass ;
|
|
Qualifier CIM_Key : ToSubClass ;
|
|
Qualifier CIMTYPE : ToSubClass ;
|
|
Qualifier Deprecated : ToSubClass ;
|
|
Qualifier Enumeration : ToSubClass ;
|
|
Qualifier EnumPrivileges : ToSubClass ;
|
|
Qualifier ImplementationSource : ToSubClass ;
|
|
Qualifier Key : ToInstance ToSubClass DisableOverride ;
|
|
Qualifier Locale : ToInstance ;
|
|
Qualifier MappingStrings : ToSubClass ;
|
|
Qualifier Max : ToSubClass ;
|
|
Qualifier MaxLen : ToSubClass ;
|
|
Qualifier Min : ToSubClass ;
|
|
Qualifier ModelCorrespondence : ToSubClass ;
|
|
Qualifier Not_Null : ToSubClass ;
|
|
Qualifier Override : Restricted ;
|
|
Qualifier Privileges : ToSubClass ;
|
|
Qualifier Propagated : ToSubClass ;
|
|
Qualifier provider : ToInstance ;
|
|
Qualifier Range : ToSubClass ;
|
|
Qualifier Read : ToSubClass ;
|
|
Qualifier Schema : ToInstance ;
|
|
Qualifier Singleton : ToSubClass ToInstance ;
|
|
Qualifier SUBTYPE : ToSubClass ;
|
|
Qualifier Units : ToSubClass ;
|
|
Qualifier UUID : ToInstance ;
|
|
Qualifier Volatile : ToSubClass ;
|
|
Qualifier Weak : ToSubClass ;
|
|
Qualifier Write : ToSubClass ;
|
|
Qualifier WritePrivileges : ToSubClass ;
|
|
|
|
|
|
#pragma namespace ("\\\\.\\Root\\CIMV2")
|
|
|
|
instance of __Win32Provider as $NamedJO
|
|
{
|
|
Name = "NamedJobObjectProv";
|
|
ClsId = "{7FB1D98A-F895-4761-8DC2-774969C84D10}";
|
|
ImpersonationLevel = 1;
|
|
PerUserInitialization = "FALSE";
|
|
HostingModel = "NetworkServiceHost";
|
|
};
|
|
instance of __InstanceProviderRegistration
|
|
{
|
|
Provider = $NamedJO;
|
|
SupportsGet = "TRUE";
|
|
SupportsPut = "TRUE";
|
|
SupportsDelete = "TRUE";
|
|
SupportsEnumeration = "TRUE";
|
|
QuerySupportLevels = {"WQL:UnarySelect"};
|
|
};
|
|
|
|
instance of __Win32Provider as $JOActg
|
|
{
|
|
Name = "NamedJobObjectActgInfoProv";
|
|
ClsId = "{C0AA9D93-2EF5-47fb-960C-F90FC644B48E}";
|
|
ImpersonationLevel = 1;
|
|
PerUserInitialization = "FALSE";
|
|
HostingModel = "NetworkServiceHost";
|
|
};
|
|
instance of __InstanceProviderRegistration
|
|
{
|
|
Provider = $JOActg;
|
|
SupportsGet = "TRUE";
|
|
SupportsPut = "TRUE";
|
|
SupportsDelete = "TRUE";
|
|
SupportsEnumeration = "TRUE";
|
|
QuerySupportLevels = {"WQL:UnarySelect"};
|
|
};
|
|
|
|
instance of __Win32Provider as $JOLimit
|
|
{
|
|
Name = "NamedJobObjectLimitSettingProv";
|
|
ClsId = "{6515834D-6125-4878-A3A3-6B0A73B809A2}";
|
|
ImpersonationLevel = 1;
|
|
PerUserInitialization = "FALSE";
|
|
HostingModel = "NetworkServiceHost";
|
|
};
|
|
instance of __InstanceProviderRegistration
|
|
{
|
|
Provider = $JOLimit;
|
|
SupportsGet = "TRUE";
|
|
SupportsPut = "TRUE";
|
|
SupportsDelete = "TRUE";
|
|
SupportsEnumeration = "TRUE";
|
|
QuerySupportLevels = {"WQL:UnarySelect"};
|
|
};
|
|
|
|
instance of __Win32Provider as $JOSecLimit
|
|
{
|
|
Name = "NamedJobObjectSecLimitSettingProv";
|
|
ClsId = "{AB40A5C1-804B-40bd-9DFE-A640691C6956}";
|
|
ImpersonationLevel = 1;
|
|
PerUserInitialization = "FALSE";
|
|
HostingModel = "NetworkServiceHost";
|
|
};
|
|
instance of __InstanceProviderRegistration
|
|
{
|
|
Provider = $JOSecLimit;
|
|
SupportsGet = "TRUE";
|
|
SupportsPut = "TRUE";
|
|
SupportsDelete = "TRUE";
|
|
SupportsEnumeration = "TRUE";
|
|
QuerySupportLevels = {"WQL:UnarySelect"};
|
|
};
|
|
|
|
|
|
|
|
[Dynamic,
|
|
Provider ("NamedJobObjectProv") ,
|
|
Description ("The Win32_NamedJobObject class represents a kernel object "
|
|
"that is used to group processes for the sake of "
|
|
"controlling the life and resources of the "
|
|
"processes within the job object. Only the job objects that "
|
|
"have been named are instrumented."),
|
|
Locale (0x409),
|
|
UUID ("{7552EF7F-7CC8-4022-9049-3B5E1B4B3852}") ]
|
|
class Win32_NamedJobObject : CIM_CollectionOfMSEs {
|
|
|
|
[Read,
|
|
Key,
|
|
Override("CollectionId"),
|
|
Description("This property indicates a number that identifies "
|
|
"the job object. \n"
|
|
"As a Kernel object job object names are case sensitive. Because WMI "
|
|
"keys are case insensitive, the name of the named job object must be "
|
|
"decorated as follows: a capital letter should be preceded by a backslash. "
|
|
"As a consequence of this convention, 'A' and 'a' are lower case and '\\A' "
|
|
"and '\\a' are upper case.")]
|
|
string CollectionID;
|
|
|
|
[Read,
|
|
Description("The UIRestrictions property indicates "
|
|
"the restrictions on the job regarding the UI."),
|
|
Bitvalues { "Desktop",
|
|
"Display Settings",
|
|
"Exit Windows",
|
|
"Global Atoms",
|
|
"Handles",
|
|
"Read Clipboard",
|
|
"System Parameters",
|
|
"Write Clipboard"}]
|
|
uint32 BasicUIRestrictions;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
[Dynamic, SupportsCreate, CreateBy("PutInstance"),
|
|
Provider ("CIMWin32a") ,
|
|
Description ("The Win32_NamedJobObjectProcess association class relates "
|
|
"a job object and a process contained in the job object. A job can contain "
|
|
"multiple processes."),
|
|
Locale (0x409),
|
|
UUID ("{486F2A44-D0BF-46c1-9543-68EF5D37F1F9}") ]
|
|
class Win32_NamedJobObjectProcess : CIM_CollectedMSEs {
|
|
|
|
[Read,
|
|
Override("Collection"),
|
|
Key,
|
|
Description("This property is a reference to the instance of Win32_NamedJobObject "
|
|
"in which the processes are contained.")]
|
|
Win32_NamedJobObject REF Collection;
|
|
|
|
[Read,
|
|
Override("Member"),
|
|
Key,
|
|
Description("This property is a reference to the instance of Win32_Process "
|
|
"that is part of the job object.")]
|
|
Win32_Process REF Member;
|
|
|
|
};
|
|
|
|
|
|
|
|
[Dynamic,
|
|
Provider ("NamedJobObjectActgInfoProv") ,
|
|
Description ("This class represents the IO accounting "
|
|
"information for a job object."),
|
|
Locale (0x409),
|
|
UUID ("{486F2A44-D0BF-46c1-9543-68EF5D37F1F9}") ]
|
|
class Win32_NamedJobObjectActgInfo : CIM_StatisticalInformation {
|
|
|
|
[read, MaxLen (256) , Description (
|
|
"The Name property defines the label by which the statistic "
|
|
"or metric is known. When subclassed, the property can be "
|
|
"overridden to be a Key property. \n"
|
|
"As a Kernel object job object names are case sensitive. Because WMI "
|
|
"keys are case insensitive, the name of the named job object must be "
|
|
"decorated as follows: a capital letter should be preceded by a backslash. "
|
|
"As a consequence of this convention, 'A' and 'a' are lower case and '\\A' "
|
|
"and '\\a' are upper case."),
|
|
Key,
|
|
Override("Name") ]
|
|
string Name;
|
|
|
|
[Read,
|
|
Description("Specifies the total amount of user-mode execution "
|
|
"time, in 100 nanoseconds, for all active processes "
|
|
"associated with the job, as well as all terminated processes "
|
|
"no longer associated with the job."),
|
|
Units("100ns")]
|
|
uint64 TotalUserTime;
|
|
|
|
[Read,
|
|
Description("Specifies the total amount of kernel-mode "
|
|
"execution time, in 100 nanoseconds, for all active "
|
|
"processes associated with the job, as well as all terminated "
|
|
"processes no longer associated with the job."),
|
|
Units("100ns")]
|
|
uint64 TotalKernelTime;
|
|
|
|
[Read,
|
|
Description("Specifies the total amount of user-mode execution "
|
|
"time, in 100 nanoseconds, for all active processes associated with "
|
|
"the job (as well as all terminated processes no longer associated "
|
|
"with the job) since the last call that set a per-job user-mode "
|
|
"time limit. This property is set to 0 on creation of the job, "
|
|
"and each time a per-job user-mode time limit is established"),
|
|
Units("100ns")]
|
|
uint64 ThisPeriodTotalUserTime;
|
|
|
|
[Read,
|
|
Description("Specifies the total amount of kernel-mode "
|
|
"execution time, in 100 nanoseconds, for all active processes "
|
|
"associated with the job (as well as all terminated processes "
|
|
"no longer associated with the job) since the last call that "
|
|
"set a per-job kernel-mode time limit. This property is set to "
|
|
"0 on creation of the job, and each time a per-job kernel-mode "
|
|
"time limit is established. "),
|
|
Units("100ns")]
|
|
uint64 ThisPeriodTotalKernelTime;
|
|
|
|
[Read,
|
|
Description("Specifies the total number of page faults "
|
|
"encountered by all active processes associated with the job, "
|
|
"as well as all terminated processes no longer associated with "
|
|
"the job. ")]
|
|
uint32 TotalPageFaultCount;
|
|
|
|
[Read,
|
|
Description("Specifies the total number of processes "
|
|
"associated with the job during its lifetime, including those "
|
|
"that have terminated. For example, when a process is associated "
|
|
"with a job, but the association fails because of a limit "
|
|
"violation, this value is incremented. ")]
|
|
uint32 TotalProcesses;
|
|
|
|
[Read,
|
|
Description("Specifies the total number of processes "
|
|
"currently associated with the job. When a process is "
|
|
"associated with a job, but the association fails because of "
|
|
"a limit violation, this value is temporarily incremented. "
|
|
"When the terminated process exits and all references to the "
|
|
"process are released, this value is decremented. ")]
|
|
uint32 ActiveProcesses;
|
|
|
|
[Read,
|
|
Description("Specifies the total number of processes terminated "
|
|
"because of a limit violation. ")]
|
|
uint32 TotalTerminatedProcesses;
|
|
|
|
[Read,
|
|
Description("Specifies the number of read operations performed "
|
|
"by all processes that have ever been associated with the job, "
|
|
"in addition to all processes currently associated with the job. ")]
|
|
uint64 ReadOperationCount;
|
|
|
|
[Read,
|
|
Description("Specifies the number of write operations performed "
|
|
"by all processes that have ever been associated with the job, "
|
|
"in addition to all processes currently associated with the job.")]
|
|
uint64 WriteOperationCount;
|
|
|
|
[Read,
|
|
Description("Specifies the number of I/O operations performed, "
|
|
"other than read and write operations, by all processes that "
|
|
"have ever been associated with the job, in addition to all "
|
|
"processes currently associated with the job. ")]
|
|
uint64 OtherOperationCount;
|
|
|
|
[Read,
|
|
Description("Specifies the number of bytes read by all processes "
|
|
"that have ever been associated with the job, in addition to "
|
|
"all processes currently associated with the job.")]
|
|
uint64 ReadTransferCount;
|
|
|
|
[Read,
|
|
Description("Specifies the number of bytes written by all "
|
|
"processes that have ever been associated with the job, in "
|
|
"addition to all processes currently associated with the job.")]
|
|
uint64 WriteTransferCount;
|
|
|
|
[Read,
|
|
Description("Specifies the number of bytes transferred during "
|
|
"operations, other than read and write operations, by all processes "
|
|
"that have ever been associated with the job, in addition to all "
|
|
"processes currently associated with the job.")]
|
|
uint64 OtherTransferCount;
|
|
|
|
[Read,
|
|
Description("Specifies the most process memory in KB used by any "
|
|
"process ever associated with the job. "),
|
|
Units("KB")]
|
|
uint32 PeakProcessMemoryUsed;
|
|
|
|
[Read,
|
|
Description("Specifies the peak memory in KB usage of all processes "
|
|
"associated with the job. "),
|
|
Units("KB")]
|
|
uint32 PeakJobMemoryUsed;
|
|
|
|
};
|
|
|
|
|
|
|
|
//RuleBased("Select * From "
|
|
// "Win32_NamedJobObjectActgInfo As A "
|
|
// "Join "
|
|
// "Win32_NamedJobObject As B "
|
|
// "On A.Name = B.CollectionID"),
|
|
|
|
[Provider("CIMWin32a"),
|
|
Dynamic,
|
|
Description ("The Win32_NamedJobObjectStatistics association class "
|
|
"relates a job object instance and the I/O accounting information instance "
|
|
"containing accounting information for the job."),
|
|
Locale (0x409),
|
|
UUID ("{C741E1B8-2F7F-4f2b-9A0C-57FCFD89F5C8}") ]
|
|
class Win32_NamedJobObjectStatistics : Win32_CollectionStatistics {
|
|
|
|
[Read,
|
|
Key,
|
|
Description("This property is a reference to the instance that "
|
|
"contains statistical information about the job object.")]
|
|
Win32_NamedJobObjectActgInfo REF Stats;
|
|
|
|
[Read,
|
|
Key,
|
|
Description("This property is a reference to the instance of a "
|
|
"job object.")]
|
|
Win32_NamedJobObject REF Collection;
|
|
|
|
};
|
|
|
|
|
|
|
|
// RuleBased("Select * From "
|
|
// "Win32_NamedJobObjectLimitSetting As A "
|
|
// "Join "
|
|
// "Win32_NamedJobObject As B "
|
|
// "On A.SettingID = B.CollectionID"),
|
|
|
|
[Provider("CIMWin32a"),
|
|
Dynamic,
|
|
Description ("The Win32_NamedJobObjectLimit association class relates "
|
|
"a job object and the job object limit settings for that job."),
|
|
Locale (0x409),
|
|
UUID ("{08E31939-FAAB-4a3b-9B10-50151D1B9D24}") ]
|
|
class Win32_NamedJobObjectLimit : CIM_CollectionSetting {
|
|
|
|
[Read,
|
|
Key,
|
|
Description("This property is a reference to the instance that "
|
|
"contains limit settings for the job object.")]
|
|
Win32_NamedJobObjectLimitSetting REF Setting;
|
|
|
|
[Read,
|
|
Key,
|
|
Description("This property is a reference to the instance of a "
|
|
"job object.")]
|
|
Win32_NamedJobObject REF Collection;
|
|
|
|
};
|
|
|
|
[Dynamic,
|
|
Provider ("NamedJobObjectLimitSettingProv") ,
|
|
Description ("The Win32_NamedJobObjectLimitSetting class represents the "
|
|
"limit settings for a job object. The limit settings specify the resources "
|
|
"available to the job in accord with how the limit setting flags are set."),
|
|
Locale (0x409),
|
|
UUID ("{F2D96E32-2A34-475b-878D-B0AE7657519F}") ]
|
|
class Win32_NamedJobObjectLimitSetting : CIM_Setting {
|
|
|
|
[Read,
|
|
Key,
|
|
Description ("The identifier by which the job object limit setting "
|
|
"instance is known. \n"
|
|
"As a Kernel object job object names are case sensitive. Because WMI "
|
|
"keys are case insensitive, the name of the named job object must be "
|
|
"decorated as follows: a capital letter should be preceded by a backslash. "
|
|
"As a consequence of this convention, 'A' and 'a' are lower case and '\\A' "
|
|
"and '\\a' are upper case.") ]
|
|
string SettingID;
|
|
|
|
[Read,
|
|
Description(" Specifies the per-process memory limit in KB. It is "
|
|
"ignored unless the LimitFlags specifies the "
|
|
"Limit Process Memory."),
|
|
Units("KB")]
|
|
uint32 ProcessMemoryLimit;
|
|
|
|
[Read,
|
|
Description(" Specifies the per-job memory limit in KB. "
|
|
"It is ignored unless the LimitFlags specifies the "
|
|
"Limit Job Memory value.")]
|
|
uint32 JobMemoryLimit;
|
|
|
|
[Read,
|
|
Description(" Specifies the per-process user-mode execution time limit, in "
|
|
"100 nanoseconds. It is ignored unless LimitFlags specifies Limit Process Time."
|
|
"The system periodically checks to determine whether each process "
|
|
"associated with the job has accumulated more user-mode time than "
|
|
"the set limit. If it has, the process is terminated. "),
|
|
Units("100ns")]
|
|
uint64 PerProcessUserTimeLimit;
|
|
|
|
[Read,
|
|
Description("Specifies the per-job user-mode execution time limit, "
|
|
"in 100 nanoseconds. The system adds the current time of the processes "
|
|
"associated with the job to this limit. For example, if you set "
|
|
"this limit to 1 minute, and the job has a process that has "
|
|
"accumulated 5 minutes of user-mode time, the limit actually "
|
|
"enforced is 6 minutes."),
|
|
Units("100ns")]
|
|
uint64 PerJobUserTimeLimit;
|
|
|
|
[Read,
|
|
Description("The LimitFlags property indicates the limits that "
|
|
"are in effect. One or more of the following limits can be "
|
|
"in effect: \n"
|
|
"Limit Working Set - Causes all processes associated with the job "
|
|
"to use the same minimum and maximum working set sizes.\n"
|
|
"Limit Process Time - Establishes a user-mode execution time "
|
|
"limit for each currently active process and for all "
|
|
"future processes associated with the job.\n"
|
|
"Limit Job Time - Establishes a user-mode execution time "
|
|
"limit for the job. This flag cannot be used with "
|
|
"Limit Preserve Job Time. \n"
|
|
"Active Process Limit - Establishes a maximum number of simultaneously "
|
|
"active processes associated with the job.\n"
|
|
"Limit Affinity - Causes all processes associated with the "
|
|
"job to use the same processor affinity.\n"
|
|
"Limit Priority Class - Causes all processes associated with the "
|
|
"job to use the same priority class. \n"
|
|
"Limit Preserve Job Time - Preserves any job time limits you "
|
|
"previously set. As long as this flag is set, you can "
|
|
"establish a per-job time limit once, then alter other "
|
|
"limits in subsequent calls. This flag cannot be used "
|
|
"with Limit Job Time. \n"
|
|
"Limit Scheduling Class - Causes all processes in the job to "
|
|
"use the same scheduling class. \n"
|
|
"Limit Process Memory - Causes all processes associated with "
|
|
"the job to limit their committed memory. When a process "
|
|
"attempts to commit memory that would exceed the per-process"
|
|
" limit, it fails. If the job object is associated with a "
|
|
"completion port, a JOB_OBJECT_MSG_PROCESS_MEMORY_LIMIT "
|
|
"message is sent to the completion port. \n"
|
|
"Limit Job Memory - Causes all processes associated with the "
|
|
"job to limit the job-wide sum of their committed memory. "
|
|
"When a process attempts to commit memory that would exceed "
|
|
"the job-wide limit, it fails. If the job object is "
|
|
"associated with a completion port, a "
|
|
"JOB_OBJECT_MSG_JOB_MEMORY_LIMIT message is sent to "
|
|
"the completion port. \n"
|
|
"Limit Die On Unhandled Exception - Forces a call to the SetErrorMode "
|
|
"function with the SEM_NOGPFAULTERRORBOX flag for each process "
|
|
"associated with the job.\n"
|
|
"Limit Breakaway OK - If any process associated with the job "
|
|
"creates a child process using the CREATE_BREAKAWAY_FROM_JOB "
|
|
"flag while this limit is in effect, the child process is "
|
|
"not associated with the job.\n"
|
|
"Silent Breakaway OK - Allows any process associated with the job "
|
|
"to create child processes that are not associated with the job. "),
|
|
BitValues{"Limit Working Set",
|
|
"Limit Process Time",
|
|
"Limit Job Time",
|
|
"Active Process Limit",
|
|
"Limit Affinity",
|
|
"Limit Priority Class",
|
|
"Limit Preserve Job Time",
|
|
"Limit Scheduling Class",
|
|
"Limit Process Memory",
|
|
"Limit Job Memory",
|
|
"Limit Die On Unhandled Exception",
|
|
"Limit Breakaway OK",
|
|
"Silent Breakaway OK"}]
|
|
uint32 LimitFlags;
|
|
|
|
[Read,
|
|
Description("Specifies the minimum working set size for all "
|
|
"processes associated with the job. "
|
|
"Ignored unless LimitFlags specifies Limit Working Set")]
|
|
uint32 MinimumWorkingSetSize;
|
|
|
|
[Read,
|
|
Description("Specifies the maximum working set size for all "
|
|
"processes associated with the job. "
|
|
"Ignored unless LimitFlags specifies Limit Working Set")]
|
|
uint32 MaximumWorkingSetSize;
|
|
|
|
[Read,
|
|
Description("Specifies the active process limit for the job. If "
|
|
"you try to associate a process with a job, and this causes the "
|
|
"active process count to exceed this limit, the process is "
|
|
"terminated and the association fails. "
|
|
"Ignored unless LimitFlags specifies Active Process Limit.")]
|
|
uint32 ActiveProcessLimit;
|
|
|
|
[Read,
|
|
Description("Specifies the processor affinity for all processes "
|
|
"associated with the job. The affinity of each thread is set "
|
|
"to this value, but threads are free to subsequently set their "
|
|
"affinity, as long as it is a subset of the specified affinity "
|
|
"mask. Processes cannot set their own affinity mask. "
|
|
"Ignored unless LimitFlags specifies Limit Affinity.")]
|
|
uint32 Affinity;
|
|
|
|
[Read,
|
|
Description("Specifies the priority class for all processes "
|
|
"associated with the job. Processes and threads cannot modify "
|
|
"their priority class. Ignored unless LimitFlags specifies "
|
|
"Limit Priority.")]
|
|
uint32 PriorityClass;
|
|
|
|
[Read,
|
|
Description("Specifies the scheduling class for all processes "
|
|
"associated with the job. The valid values are 0 to 9. Use 0 for "
|
|
"the least favorable scheduling class relative to other threads, "
|
|
"and 9 for the most favorable scheduling class relative to other "
|
|
"threads. Ignored unless LimitFlags specifies Limit Scheduling Class.")]
|
|
uint32 SchedulingClass;
|
|
|
|
|
|
};
|
|
|
|
|
|
// RuleBased("Select * From "
|
|
// "Win32_NamedJobObjectSecLimitSetting As A "
|
|
// "Join "
|
|
// "Win32_NamedJobObject As B "
|
|
// "On A.SettingID = B.CollectionID"),
|
|
|
|
[Provider("CIMWin32a"),
|
|
Dynamic,
|
|
Description ("The Win32_NamedJobObjectSecLimit association class "
|
|
"relates a job object and the job object security limit settings."),
|
|
Locale (0x409),
|
|
UUID ("{08E31939-FAAB-4a3b-9B10-50151D1B9D24}") ]
|
|
class Win32_NamedJobObjectSecLimit : CIM_CollectionSetting {
|
|
|
|
[Read,
|
|
Key,
|
|
Description("This property is a reference to the instance that "
|
|
"contains security limit settings for the job object.")]
|
|
Win32_NamedJobObjectSecLimitSetting REF Setting;
|
|
|
|
[Read,
|
|
Key,
|
|
Description("This property is a reference to the instance of a "
|
|
"job object.")]
|
|
Win32_NamedJobObject REF Collection;
|
|
|
|
};
|
|
|
|
|
|
[Dynamic,
|
|
Provider ("NamedJobObjectSecLimitSettingProv") ,
|
|
Description ("The Win32_NamedJobObjectSecLimitSetting class "
|
|
"represents the security limit settings for a job object. For more "
|
|
"information about job object security limit settings, see the Job "
|
|
"Object Security and Access Rights topic in the Platform SDK Base "
|
|
"Services documentation."),
|
|
Locale (0x409),
|
|
UUID ("{F2D96E32-2A34-475b-878D-B0AE7657519F}") ]
|
|
class Win32_NamedJobObjectSecLimitSetting : CIM_Setting {
|
|
|
|
[Read,
|
|
Key,
|
|
Description ("The identifier by which the job object security limit setting "
|
|
"instance is known. \n"
|
|
"As a Kernel object job object names are case sensitive. Because WMI "
|
|
"keys are case insensitive, the name of the named job object must be "
|
|
"decorated as follows: a capital letter should be preceded by a backslash. "
|
|
"As a consequence of this convention, 'A' and 'a' are lower case and '\\A' "
|
|
"and '\\a' are upper case.") ]
|
|
string SettingID;
|
|
|
|
[Read,
|
|
Description("Specifies the security limitations for the job."
|
|
"A value of No Administrator prevents any process in the job "
|
|
"from using a token that specifies the local administrators group."
|
|
"A value of Rescricted Token prevents any process in the job "
|
|
"from using a token that was not created with the "
|
|
"CreateRestrictedToken function."
|
|
"A value of Specific Token forces processes in the job to run under."
|
|
"A value Filter Tokens of applies a filter to the token when a process "
|
|
"impersonates a client. Requires at least one of the following "
|
|
"properties to be set - SidsToDisable, PrivilegesToDelete, or "
|
|
"RestrictedSids."),
|
|
Values{"No Administrator",
|
|
"Restricted Token",
|
|
"Specific Token",
|
|
"Filter Tokens"}]
|
|
uint32 SecurityLimitFlags;
|
|
|
|
[Read,
|
|
Description("This property specifies the SIDs to disable for "
|
|
"access checking, if SecurityLimitFlagss is Filter Tokens."
|
|
"This property can be NULL if you do not want to disable any SIDs.")]
|
|
Win32_TokenGroups SIDsToDisable;
|
|
|
|
[Read,
|
|
Description("This property specifies the deny-only SIDs that "
|
|
"will be added to the access token, if SecurityLimitFlags is "
|
|
"Filter Tokens. This property can be NULL if you do not want "
|
|
"to specify any deny-only SIDs.")]
|
|
Win32_TokenGroups RestrictedSIDs;
|
|
|
|
[Read,
|
|
Description("This property specifies the privileges to delete "
|
|
"from the token, if SecurityLimitFlags is Filter Tokens. "
|
|
"This property can be NULL if you do not want to delete any "
|
|
"privileges. ")]
|
|
Win32_TokenPrivileges PrivilegesToDelete;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
[Abstract,
|
|
Description ("The Win32_TokenGroups abstract class contains "
|
|
"information about the group account security identifiers "
|
|
"(SIDs) associated with an access token. For more information "
|
|
"about token groups and the TOKEN_GROUPS structure, see the Access "
|
|
"Tokens topic in the Platform SDK Access Control documentation."),
|
|
Locale (0x409),
|
|
UUID ("{6CDD7B40-369D-4725-AB7F-EFE53EE2C455}") ]
|
|
class Win32_TokenGroups {
|
|
|
|
[Read,
|
|
Description("Specifies the number of groups in the access token.")]
|
|
uint32 GroupCount;
|
|
|
|
[Read,
|
|
Description("Specifies an array of SIDs and attributes.")]
|
|
Win32_SIDandAttributes Groups[];
|
|
|
|
};
|
|
|
|
|
|
[Abstract,
|
|
Description ("The Win32_TokenPrivileges abstract class contains "
|
|
"information about a set of privileges for an access token. Each "
|
|
"process or thread in the job object has an access token specifying "
|
|
"what resources and actions are available to it. For more information, "
|
|
"see the Access Tokens topic in the Platform SDK Access Control "
|
|
"documentation."),
|
|
Locale (0x409),
|
|
UUID ("{3559D159-47E8-4458-9B7E-5FD16D260B8D}") ]
|
|
class Win32_TokenPrivileges {
|
|
|
|
[Read,
|
|
Description("Specifies the number of entries in the "
|
|
"Privileges array.")]
|
|
uint32 PrivilegeCount;
|
|
|
|
[Read,
|
|
Description("Specifies an array of LUIDs and attributes.")]
|
|
Win32_LUIDandAttributes Privileges[];
|
|
|
|
};
|
|
|
|
|
|
[Abstract,
|
|
Description ("This class represents a security identifier "
|
|
"(SID) and its attributes."),
|
|
Locale (0x409),
|
|
UUID ("{DE1B36A6-4157-43ed-937F-D90606C09216}") ]
|
|
class Win32_SIDandAttributes {
|
|
|
|
[Read,
|
|
Description("Specifies a security identifier (SID).")]
|
|
Win32_SID SID;
|
|
|
|
[Read,
|
|
Description("Specifies attributes of the SID. This value "
|
|
"contains up to 32 one-bit flags. Its meaning depends on the "
|
|
"definition and use of the SID.")]
|
|
uint32 Attributes;
|
|
|
|
};
|
|
|
|
|
|
[Abstract,
|
|
Description ("The Win32_LUIDandAttributes abstract class represents a "
|
|
"locally unique identifier (LUID) of a privilege and a set of bit flags "
|
|
"that indicate the attributes of the privilege, such as whether the "
|
|
"privilege is enabled. Each LUID and attributes structure defines the "
|
|
"availability of a security privilege for the process. For more "
|
|
"information, see LUID_AND_ATTRIBUTES."),
|
|
Locale (0x409),
|
|
UUID ("{63021F4B-F377-4a88-ABD1-835D14142142}") ]
|
|
class Win32_LUIDandAttributes {
|
|
|
|
[Read,
|
|
Description("Specifies a LUID value.")]
|
|
Win32_LUID LUID;
|
|
|
|
[Read,
|
|
Description("Specifies attributes of the LUID. This value contains "
|
|
"two 32-bit flags. Its meaning is dependent on the definition and use "
|
|
"of the LUIDSpecifies attributes of the LUID.")]
|
|
uint32 Attributes;
|
|
|
|
};
|
|
|
|
|
|
|
|
[Abstract,
|
|
Description ("The Win32_LUID abstract class represents a locally "
|
|
"unique identifier (LUID), an identifier unique only on the local "
|
|
"computer. Instances of the Win32_LUID class identify a process or "
|
|
"thread so that they can be associated with security token privileges "
|
|
"represented by instances of the Win32_LUIDandAttributes class. For "
|
|
"more information about the role of LUIDs in security, see LUID."),
|
|
Locale (0x409),
|
|
UUID ("{0FF18C30-FA51-11d3-9C37-006008B088CE}") ]
|
|
class Win32_LUID{
|
|
|
|
[Read,
|
|
Description("Specifies the most significant bits of "
|
|
"the LUID.")]
|
|
uint32 HighPart;
|
|
|
|
[Read,
|
|
Description("Specifies the least significant bits of "
|
|
"the LUID.")]
|
|
uint32 LowPart;
|
|
|
|
};
|
|
|
|
|
|
|
|
[Description (
|
|
"The Win32_JobObjectStatus class reports error information obtained while attempting "
|
|
"any failed operation in the Job Object provider."): ToSubClass,
|
|
Locale (0x409), UUID ("{7E6475FE-CF3C-4e22-892E-0E58482158E3}") ]
|
|
class Win32_JobObjectStatus : __ExtendedStatus
|
|
{
|
|
[read : ToSubClass,
|
|
Description ("The Win32ErrorCode property contains the Win32 error code "
|
|
"most recently encountered that caused the operation to fail."): ToSubClass]
|
|
uint32 Win32ErrorCode;
|
|
|
|
[read : ToSubClass,
|
|
Description ("The AdditionalDescription property contains additional information "
|
|
"relating to the error."): ToSubClass]
|
|
string AdditionalDescription;
|
|
|
|
};
|
|
|