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.

157 lines
5.3 KiB

  1. /*++
  2. Copyright (c) 1991 Microsoft Corporation
  3. Module Name:
  4. SsSec.h
  5. Abstract:
  6. Manifests for API security in the server service.
  7. Author:
  8. David Treadwell (davidtr) 28-Aug-1991
  9. Revision History:
  10. --*/
  11. #ifndef _SSSEC_
  12. #define _SSSEC_
  13. //
  14. // Structure that holds all security information for a single server
  15. // service security object.
  16. //
  17. typedef struct _SRVSVC_SECURITY_OBJECT {
  18. LPTSTR ObjectName;
  19. PGENERIC_MAPPING Mapping;
  20. PSECURITY_DESCRIPTOR SecurityDescriptor;
  21. } SRVSVC_SECURITY_OBJECT, *PSRVSVC_SECURITY_OBJECT;
  22. //
  23. // Security objects used by the server service.
  24. //
  25. extern SRVSVC_SECURITY_OBJECT SsConfigInfoSecurityObject;
  26. extern SRVSVC_SECURITY_OBJECT SsTransportEnumSecurityObject;
  27. extern SRVSVC_SECURITY_OBJECT SsConnectionSecurityObject;
  28. extern SRVSVC_SECURITY_OBJECT SsDiskSecurityObject;
  29. extern SRVSVC_SECURITY_OBJECT SsFileSecurityObject;
  30. extern SRVSVC_SECURITY_OBJECT SsSessionSecurityObject;
  31. extern SRVSVC_SECURITY_OBJECT SsShareFileSecurityObject;
  32. extern SRVSVC_SECURITY_OBJECT SsSharePrintSecurityObject;
  33. extern SRVSVC_SECURITY_OBJECT SsShareAdminSecurityObject;
  34. extern SRVSVC_SECURITY_OBJECT SsShareConnectSecurityObject;
  35. extern SRVSVC_SECURITY_OBJECT SsShareAdmConnectSecurityObject;
  36. extern SRVSVC_SECURITY_OBJECT SsStatisticsSecurityObject;
  37. extern SRVSVC_SECURITY_OBJECT SsDefaultShareSecurityObject;
  38. //
  39. // Object type names for audit alarm tracking.
  40. //
  41. #define SRVSVC_CONFIG_INFO_OBJECT TEXT( "SrvsvcConfigInfo" )
  42. #define SRVSVC_TRANSPORT_INFO_OBJECT TEXT( "SrvsvcTransportEnum" )
  43. #define SRVSVC_CONNECTION_OBJECT TEXT( "SrvsvcConnection" )
  44. #define SRVSVC_DISK_OBJECT TEXT( "SrvsvcServerDiskEnum" )
  45. #define SRVSVC_FILE_OBJECT TEXT( "SrvsvcFile" )
  46. #define SRVSVC_SESSION_OBJECT TEXT( "SrvsvcSessionInfo" )
  47. #define SRVSVC_SHARE_FILE_OBJECT TEXT( "SrvsvcShareFileInfo" )
  48. #define SRVSVC_SHARE_PRINT_OBJECT TEXT( "SrvsvcSharePrintInfo" )
  49. #define SRVSVC_SHARE_ADMIN_OBJECT TEXT( "SrvsvcShareAdminInfo" )
  50. #define SRVSVC_SHARE_CONNECT_OBJECT TEXT( "SrvsvcShareConnect" )
  51. #define SRVSVC_SHARE_ADM_CONNECT_OBJECT TEXT( "SrvsvcShareAdminConnect" )
  52. #define SRVSVC_STATISTICS_OBJECT TEXT( "SrvsvcStatisticsInfo" )
  53. #define SRVSVC_DEFAULT_SHARE_OBJECT TEXT( "SrvsvcDefaultShareInfo" )
  54. //
  55. // Access masks for configuration information (NetServer{Get,Set}Info).
  56. //
  57. #define SRVSVC_CONFIG_USER_INFO_GET 0x0001
  58. #define SRVSVC_CONFIG_POWER_INFO_GET 0x0002
  59. #define SRVSVC_CONFIG_ADMIN_INFO_GET 0x0004
  60. #define SRVSVC_CONFIG_INFO_SET 0x0010
  61. #define SRVSVC_CONFIG_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  62. SRVSVC_CONFIG_USER_INFO_GET | \
  63. SRVSVC_CONFIG_POWER_INFO_GET | \
  64. SRVSVC_CONFIG_ADMIN_INFO_GET | \
  65. SRVSVC_CONFIG_INFO_SET )
  66. //
  67. // Access masks for connection information (NetConnectionEnum).
  68. //
  69. #define SRVSVC_CONNECTION_INFO_GET 0x0001
  70. #define SRVSVC_CONNECTION_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  71. SRVSVC_CONNECTION_INFO_GET )
  72. //
  73. // Access masks for disk information (NetServerDiskEnum).
  74. //
  75. #define SRVSVC_DISK_ENUM 0x0001
  76. #define SRVSVC_DISK_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  77. SRVSVC_DISK_ENUM )
  78. //
  79. // Access masks for file information (NetFileEnum, NetFileGetInfo,
  80. // NetFileClose).
  81. //
  82. #define SRVSVC_FILE_INFO_GET 0x0001
  83. #define SRVSVC_FILE_CLOSE 0x0010
  84. #define SRVSVC_FILE_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  85. SRVSVC_FILE_INFO_GET | \
  86. SRVSVC_FILE_CLOSE )
  87. //
  88. // Access masks for session information (NetSessionEnum,
  89. // NetSessionGetInfo, NetSessionDel).
  90. //
  91. #define SRVSVC_SESSION_USER_INFO_GET 0x0001
  92. #define SRVSVC_SESSION_ADMIN_INFO_GET 0x0002
  93. #define SRVSVC_SESSION_DELETE 0x0010
  94. #define SRVSVC_SESSION_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  95. SRVSVC_SESSION_USER_INFO_GET | \
  96. SRVSVC_SESSION_ADMIN_INFO_GET | \
  97. SRVSVC_SESSION_DELETE )
  98. //
  99. // Access masks for share information (NetShareAdd, NetShareDel,
  100. // NetShareEnum, NetShareGetInfo, NetShareCheck, NetShareSetInfo).
  101. //
  102. // Access masks for connecting to shares are defined in srvfsctl.h,
  103. // since they must be shared between the server and server service.
  104. //
  105. #define SRVSVC_SHARE_USER_INFO_GET 0x0001
  106. #define SRVSVC_SHARE_ADMIN_INFO_GET 0x0002
  107. #define SRVSVC_SHARE_INFO_SET 0x0010
  108. #define SRVSVC_SHARE_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  109. SRVSVC_SHARE_USER_INFO_GET | \
  110. SRVSVC_SHARE_ADMIN_INFO_GET | \
  111. SRVSVC_SHARE_INFO_SET )
  112. //
  113. // Access masks for statistics information (NetStatisticsGet,
  114. // NetStatisticsClear).
  115. //
  116. #define SRVSVC_STATISTICS_GET 0x0001
  117. #define SRVSVC_STATISTICS_ALL_ACCESS ( STANDARD_RIGHTS_REQUIRED | \
  118. SRVSVC_STATISTICS_GET )
  119. #endif // _SSSEC_