Leaked source code of windows server 2003
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.

146 lines
4.3 KiB

  1. // Copyright (c) 2000-2004 Microsoft Corporation
  2. // WMI Class Definitions for RSOP security settings extension
  3. // Version 1.0
  4. #pragma autorecover
  5. #pragma classflags("forceupdate")
  6. #pragma namespace("\\\\.\\root")
  7. instance of __Namespace
  8. {
  9. Name = "RSOP";
  10. };
  11. #pragma namespace("\\\\.\\root\\RSOP")
  12. instance of __Namespace
  13. {
  14. Name = "Computer";
  15. };
  16. #pragma namespace("\\\\.\\root\\RSOP\\Computer")
  17. class RSOP_SecuritySettings : RSOP_PolicySetting
  18. {
  19. uint32 Status;
  20. uint32 ErrorCode;
  21. };
  22. //******************** password, lockout, kerberos, and other policies *****************
  23. class RSOP_SecuritySettingNumeric : RSOP_SecuritySettings
  24. {
  25. [key] uint32 precedence = 0;
  26. [key] string KeyName = NULL;
  27. uint32 Setting;
  28. };
  29. class RSOP_SecuritySettingBoolean : RSOP_SecuritySettings
  30. {
  31. [key] uint32 precedence = 0;
  32. [key] string KeyName = NULL;
  33. boolean Setting;
  34. };
  35. class RSOP_SecuritySettingString : RSOP_SecuritySettings
  36. {
  37. [key] uint32 precedence = 0;
  38. [key] string KeyName = NULL;
  39. string Setting;
  40. };
  41. //******************** RSOP_AuditPolicy ************************************
  42. class RSOP_AuditPolicy : RSOP_SecuritySettings
  43. {
  44. [key] uint32 precedence = 0;
  45. [key] string Category = NULL;
  46. [NotNull] boolean Success;
  47. [NotNull] boolean Failure;
  48. };
  49. //******************** Esc_EventLog ***************************************
  50. class RSOP_SecurityEventLogSettingNumeric : RSOP_SecuritySettings
  51. {
  52. [key] uint32 precedence = 0;
  53. [key] string KeyName = NULL;
  54. [key] string Type = NULL;
  55. uint32 Setting;
  56. };
  57. class RSOP_SecurityEventLogSettingBoolean : RSOP_SecuritySettings
  58. {
  59. [key] uint32 precedence = 0;
  60. [key] string KeyName = NULL;
  61. [key] string Type = NULL;
  62. boolean Setting;
  63. };
  64. //******************** rsop_RegistryValue ***************************************
  65. class RSOP_RegistryValue : RSOP_SecuritySettings
  66. {
  67. [key] uint32 precedence = 0;
  68. [key] string Path = NULL;
  69. [ValueMap {"1","2","3","4","7"}, Values {"REG_SZ", "REG_EXPAND_SZ", "REG_BINARY", "REG_DWORD", "REG_MULTI_SZ"}, NotNull]
  70. uint32 Type;
  71. [NotNull] string Data;
  72. };
  73. //******************** RSOP_UserPrivilegeRight **********************************
  74. class RSOP_UserPrivilegeRight : RSOP_SecuritySettings
  75. {
  76. [key] uint32 precedence = 0;
  77. [key] string UserRight;
  78. string AccountList[];
  79. };
  80. //******************** RSOP_RestrictedGroup **********************************
  81. class RSOP_RestrictedGroup : RSOP_SecuritySettings
  82. {
  83. [key] uint32 precedence = 0;
  84. [key] string GroupName = NULL;
  85. string Members[];
  86. };
  87. //******************** RSOP_SystemService *************************************
  88. class RSOP_SystemService : RSOP_SecuritySettings
  89. {
  90. [key] uint32 precedence = 0;
  91. [key] string Service = NULL;
  92. [ValueMap {"2", "3", "4"}, Values {"Automatic", "Manual", "Disabled"}]
  93. uint32 StartupMode;
  94. string SDDLString;
  95. };
  96. //******************** RSOP_Object *************************************
  97. class RSOP_File : RSOP_SecuritySettings
  98. {
  99. [key] uint32 precedence = 0;
  100. [key] string Path = NULL;
  101. string OriginalPath;
  102. [Values {"Inherit", "Ignore", "Overwrite"}]
  103. uint32 Mode;
  104. string SDDLString;
  105. };
  106. class RSOP_RegistryKey : RSOP_SecuritySettings
  107. {
  108. [key] uint32 precedence = 0;
  109. [key] string Path;
  110. [Values {"Inherit", "Ignore", "Overwrite"}]
  111. uint32 Mode;
  112. string SDDLString;
  113. };