Разрешения файла WCF? - PullRequest
0 голосов
/ 03 июня 2009

У меня есть веб-сервис WCF, который я размещаю в IIS (на самом деле он работает на веб-хосте Visual Studio, т.е. Cassini).

У меня есть файл, к которому у меня есть доступ к корню веб-каталога из службы, и у меня возникают проблемы с определением идентификатора пользователя, с которым служба обращается к каталогу. Я дал разрешение ASPNET, NETWORK SERVICE и IUSR, но ни один из них, похоже, не работает.

Кто-нибудь знает, что за пользователь запускает службу WCF, когда она размещается в IIS?

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:

Действительно, служба WCF работает как я (моя учетная запись Windows), но по какой-либо причине она по-прежнему не может открыть файл в своем корневом каталоге. Файл не удалось с «Доступ запрещен». Я дал «Все» полный контроль над папкой, и это не имеет значения.

Ответы [ 2 ]

0 голосов
/ 05 июня 2009

Хорошо ... разобрался в проблеме. Оказывается, файл, который я пытался открыть, был помечен как доступный только для чтения, поэтому .NET не смог открыть его для записи. Передал FileAccess.Read в метод File.Open (), и теперь он открывается нормально.

Не имеет отношения к самому WCF.

0 голосов
/ 03 июня 2009

Если вы работаете с сервером Cassini, то это будет пользователь, вошедший в систему на этом компьютере. Так что, вероятно, ваше имя пользователя, которое вы использовали для входа на эту машину. Дайте этому пользователю разрешение прочитать файл и попробовать его.

В IIS это зависит от конфигурации вашего приложения. Вы можете создать пул приложений под любой учетной записью пользователя и запустить приложение, использующее этот пул. Пользователь по умолчанию в IIS - NETWORK SERVICES.

...