Какая учетная запись выбрасывает систему.Исключение UnauthorizedAccessException?

#asp.net #exception #iis-7

#asp.net #исключение #iis-7

Вопрос:

Есть ли простой способ узнать, какой пользователь вызывает систему.Должно быть вызвано исключение UnauthorizedAccessException?

У меня есть веб-приложение в домене A, которое запускается с использованием определенной учетной записи пользователя из домена B (анонимная аутентификация IIS 7.5). Ему необходимо выполнить запись в общую папку в домене B.

Я предоставил учетной записи пользователя полный доступ к папке в домене B, но я все еще получаю систему.Исключение UnauthorizedAccessException, которое заставляет меня предположить, что оно фактически не выполняется под этой учетной записью.

Есть ли простой способ узнать, в каком контексте безопасности запущено приложение? Я могу выводить любые сообщения об ошибках, в которых перехватывается исключение.

Ответ №1:

Я думаю, вам, вероятно, потребуется NETWORK SERVICE предоставить пользователю дополнительные разрешения. Изменение разрешений в папке должно сработать.

Я нашел эту статью о настройке разрешений ASPNET (сетевой службы), которая может помочь вам в деталях.

Надеюсь, это поможет

Постскриптум

Если это касается Application Pool Identity , вы могли бы посмотреть это о настройке идентификатора пула приложений в IIS 6.0 (IIS 6.0)

Комментарии:

1. похоже, что приложение использовало идентификатор пула приложений, а не пользователя, установленного для анонимной аутентификации. Если я настрою пул приложений на использование учетной записи пользователя, он может записывать в папку без проблем. Вы знаете, можно ли запретить приложению использовать идентификатор пула приложений?