Поделиться через


структура SERVICE_SID_INFO (winsvc.h)

Представляет идентификатор безопасности службы (SID).

Синтаксис

typedef struct _SERVICE_SID_INFO {
  DWORD dwServiceSidType;
} SERVICE_SID_INFO, *LPSERVICE_SID_INFO;

Члены

dwServiceSidType

Тип идентификатора безопасности службы.

Значение Значение
SERVICE_SID_TYPE_NONE
0x00000000
Используйте этот тип для уменьшения проблем совместимости приложений.
SERVICE_SID_TYPE_RESTRICTED
0x00000003
Этот тип включает SERVICE_SID_TYPE_UNRESTRICTED. Идентификатор безопасности службы также добавляется в список ограниченных идентификаторов безопасности маркера процесса. В список ограниченных идентификаторов безопасности также добавляются три дополнительных идентификатора безопасности:
  • World SID S-1-1-0
  • Идентификатор безопасности для входа в службу
  • Sid S-1-5-33 с ограниченным доступом на запись
Один элемент управления доступом, обеспечивающий GENERIC_ALL доступ к идентификатору безопасности входа в службу, также добавляется в объект токена процесса службы.

Если в одном процессе размещено несколько служб и одна служба имеет SERVICE_SID_TYPE_RESTRICTED, все службы должны иметь SERVICE_SID_TYPE_RESTRICTED.

SERVICE_SID_TYPE_UNRESTRICTED
0x00000001
При создании процесса службы идентификатор безопасности службы добавляется в маркер процесса службы со следующими атрибутами: SE_GROUP_ENABLED_BY_DEFAULT | SE_GROUP_OWNER.

Комментарии

Изменение вступает в силу при следующем запуске системы.

SCM добавляет указанные идентификаторы БЕЗОПАСНОСТИ службы к маркеру процесса, а также следующие дополнительные идентификаторы БЕЗОПАСНОСТИ.

SID Атрибуты
Идентификатор безопасности входа SE_GROUP_ENABLED | SE_GROUP_ENABLED_BY_DEFAULT | SE_GROUP_LOGON_ID | SE_GROUP_MANDATORY
Локальный идентификатор безопасности SE_GROUP_MANDATORY | SE_GROUP_ENABLED | SE_GROUP_ENABLED_BY_DEFAULT
 

Это позволяет разработчикам управлять доступом к объектам, используемым службой, а не полагаться на использование учетной записи LocalSystem для получения доступа.

Используйте функции LookupAccountName и LookupAccountSid для преобразования между именем службы и идентификатором безопасности службы. Имя учетной записи имеет следующую форму:

NT SERVICE\SvcName

Обратите внимание, что NT SERVICE — это доменное имя.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Верхняя часть winsvc.h (включая Windows.h)

См. также раздел

ChangeServiceConfig2

QueryServiceConfig2