Как получить доступ к общему ресурсу с помощью службы Windows, используя пользователя локальной системы? - PullRequest
3 голосов
/ 28 марта 2012

Мне нужен доступ к общему ресурсу с помощью службы Windows, используя пользователя локальной системы. У меня есть попытка с классом UserImpersonation , но он работает только при отладке. Когда я устанавливаю свой сервис, я не могу получить доступ к общей папке.

Я читал об этой теме, и я хотел бы знать, если единственный способ - это создать пользователя с сетевыми учетными данными и запустить службу с этим пользователем.

Ответы [ 2 ]

2 голосов
/ 28 марта 2012

Вы можете запустить службу под учетной записью (не обязательно NetworkService, как на скриншоте), для которой вы обеспечили доступ к сети.Для этого перейдите к своему диспетчеру служб и щелкните правой кнопкой мыши свойства:

enter image description here

Существует два типа разрешений, которые необходимо учитывать при доступе к общему сетевому ресурсу, которые необходимоубедитесь, что используемая учетная запись имеет: Разрешения на общий доступ и NTFS

1 голос
/ 28 марта 2012

Ваш последний абзац вашего вопроса содержит ответ. Служба работает в контексте определенного пользователя. Вы должны убедиться, что этот пользователь может получить доступ к рассматриваемому ресурсу. Именно по этой причине нередко создаются выделенные пользователи только для определенной услуги.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...