2014-10-17 4 views
0

Я создал приложение-службы Windows, с помощью VS2013 и установите свойство ServiceProcessInstaller.Account в System.ServiceProcess.ServiceAccount.LocalSystem и служба не работает, пока я не дал разрешения на SYSTEM счетов.Как называется учетная запись «System.ServiceProcess.ServiceAccount.LocalSystem» в Windows 8.1?

Но я сомневаясь, если это SYSTEM счет тот же счет реферируемых here или называют этим значением перечисления: System.ServiceProcess.ServiceAccount.LocalSystem.

+1

«Локальная система» и SYSTEM действительно являются двумя именами для одного и того же объекта. –

+0

@HarryJohnston Спасибо за ваш ответ, можете ли вы дать мне несколько ссылок, где читать? Если вы напишете ответ, я выберу ваш ответ. Еще раз спасибо. –

ответ

1

От MSDN article "LocalSystem Account":

Счет LocalSystem является предопределенным локальная учетная запись используется диспетчером управления службами. [...] Он имеет обширные привилегии на локальном компьютере и действует как компьютер в сети. Его токен включает в себя идентификаторы NT AUTHORITY \ SYSTEM и BUILTIN \ Administrators; эти учетные записи имеют доступ к большинству системных объектов.

Это тонкое различие; LocalSystem - это имя учетной записи (как определено диспетчером управления службами, на самом деле это не учетная запись с точки зрения ядра), тогда как SYSTEM является именем идентификатора безопасности, связанного с этой учетной записью.

В результате вы должны использовать LocalSystem как имя учетной записи при создании или изменении служб, но при назначении разрешений использовать SYSTEM. (В качестве альтернативы вы можете предоставить разрешение группе «Администраторы».)

+0

Отличный ответ Гарри, очень разъясняющий. Спасибо вам! –