Коробка Windows (2k3). У меня есть веб-сайт, которому требуется доступ к файлам через общий сетевой ресурс на локальном компьютере. Пожалуйста, не зацикливайтесь на этом факте. Это длинная история, в которую я не буду вдаваться.
Рабочий процесс работает под местная машина\ СЕТЕВОЙ СЕРВИС. Он был добавлен в группу (назовем ее HURFDURFGROUP), которой был предоставлен доступ как к диску, так и к общему сетевому ресурсу.
Другими словами, если бы я был членом HURFDURFGROUP, я мог бы войти в общий ресурс и открывать содержащиеся там файлы.
Однако, несмотря на то, что NETWORK SERVICE был членом этой группы, NETWORK SERVICE не смог получить доступ к общему сетевому ресурсу. Попытки прочитать файлы приведут к FileNotFound, а попытки изменить безопасность файлов на общем ресурсе - к UnauthorizedAccess.
Странно то, что как только я специально установил разрешения NETWORK SERVICE для диска и общего ресурса, все заработало.
Это заставляет меня поверить вы не можете использовать группы для назначения или отказа в правах СЕТЕВОЙ СЕРВИСЕ.
Это верно? Может кто-нибудь объяснить это?
В домене сетевая служба распознается как domain \ machinename $. Вы можете использовать это в группах и т.д. или для разрешений.
Итак, учетная запись службы локальной сети на машине «BobsBox» в домене «MyCompany» - «MyCompany \ BobsBox $». Я успешно использовал это несколько раз.
Я не могу сказать, что касается не домена или рабочей группы, извините
Я пытался найти то, что я помню как сообщение в блоге MS об учетной записи "сетевой службы", однако мне не удалось найти его при быстром поиске по моим закладкам. Во всяком случае, что я припоминаю, так это то, что эта учетная запись действительно считается специальной учетной записью пользователя, которая, несмотря на наличие дополнительных авторизаций безопасности, обычно не назначаемых базовой учетной записи пользователя, также имеет другие ограничения. Насколько я помню, возможность подключения учетных записей к сетевым ресурсам является одним из таких ограничений.
Тем не менее, я могу также сказать вам, что я был в похожей ситуации, и есть способы заставить все работать. Я могу сказать вам, что в тех случаях, когда у меня есть веб-службы, которым требуется доступ к сетевым ресурсам в качестве части их функций в качестве идентификатора пула приложений, мы указываем учетную запись на основе домена, которая будет членом вашей группы HURFDURFGROUP для ее общего доступа. Затем, чтобы сделать его функциональной учетной записью для пулов приложений IIS, убедитесь, что он является членом локальной группы IIS_WPG, а также запускает aspnet_regiis с параметром -ga domain \ username из используемой вами версии платформы asp.net. По сути, это предоставит этой учетной записи все разрешения, необходимые для работы в качестве удостоверения пула приложений для этой локальной системы.
Не совсем прямой ответ на ваш вопрос, но, возможно, все равно будет полезен.