Да, в Windows 7 есть способ сделать это, хотя может потребоваться перенастроить службу, что создает (возможно, довольно небольшой) риск возникновения проблемы совместимости.
На идентификатор безопасности, связанный со службой, можно ссылаться как
NT SERVICE\SERVICENAME
где servicename
заменяется фактическим именем службы (отображается как "Имя службы" в инструменте администрирования служб и отличается от отображаемого имени, отображаемого в основном списке служб). Если вы используете графический интерфейс для изменения настроек безопасности, и компьютер подключен к домену, вам нужно изменить область поиска на локальный компьютер. Также обратите внимание, что это работает только для служб, которые в настоящее время установлены.
Вы можете определить SID, связанный с конкретным именем службы, независимо от того, установлена ли такая служба или нет, с помощью команды sc showsid
:
C:\working>sc showsid wjkjk
NAME: wjkjk
SERVICE SID: S-1-5-80-492907775-8774055-3223757035-3566066944-1037782649
Если вы устанавливаете безопасность для файла или папки с помощью команды icacls
вы можете указать SID, поставив перед ним префикс *
, например, *S-1-5-80-492907775-8774055-3223757035-3566066944-1037782649
.
Чтобы служба могла обращаться к файлам с использованием этого идентификатора безопасности, она должна быть настроена с типом SID службы "неограниченный" или "ограниченный". Если он настроен с типом SID службы "none", SID службы не будет работать. Вы можете проверить тип SID службы установленной службы с помощью команды sc qsidtype
:
C:\working>sc qsidtype wuauserv
[SC] QueryServiceConfig2 SUCCESS
SERVICE_NAME: wuauserv
SERVICE_SID_TYPE: UNRESTRICTED
Если тип сервиса "none", вы можете изменить его на "неограниченный", используя команду sc sidtype
:
C:\working>sc qsidtype psexesvc
[SC] QueryServiceConfig2 SUCCESS
SERVICE_NAME: psexesvc
SERVICE_SID_TYPE: NONE
C:\working>sc sidtype psexesvc unrestricted
[SC] ChangeServiceConfig2 SUCCESS
C:\working>sc qsidtype psexesvc
[SC] QueryServiceConfig2 SUCCESS
SERVICE_NAME: psexesvc
SERVICE_SID_TYPE: UNRESTRICTED
Это не вступит в силу, пока служба не будет перезапущена.
Примечание: вам не следует менять тип SID службы с "нет" на "ограниченный". Это почти наверняка приведет к неисправности службы. Изменение типа с "нет" на "неограниченный" с меньшей вероятностью вызовет какие-либо проблемы. Если тип SID службы уже "ограничен" или "неограничен", его не следует менять.