ASP.NET не авторизован для доступа к запрошенному ресурсу при доступе к папке temp

мое приложение, которое я создал с помощью ASP.NET и C# использует временный путь для хранения документа во время его чтения, а затем удаляет его после:

string path = string.Concat((Server.MapPath("~/temp/" + FileUpload1.FileName)));

Array.ForEach(Directory.GetFiles((Server.MapPath("~/temp/"))), File.Delete);

Спасибо за любую помощь. Документ StockControl является примером и может быть импортирован с нескольких компьютеров в сети. на основе сообщения об ошибке похоже, что мой файл не загружается и сохраняется в папке Temp...

локальный путь при отладке (работ):

C:UsersUSERDocumentsVisual Studio 2013ProjectsWebApplication5WebApplication5temp

в приложение успешно развернуто, однако, когда я прикрепляю файл и нажимаю "импорт" , появляется сообщение об ошибке: Доступ к тропе C:inetpubwwwrootStockControltempBook1 - ... xls отрицается.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Сведения Об Исключении: System.UnauthorizedAccessException: доступ к путь 'C:inetpubwwwrootStockControltempBook1.xls отрицается.

ASP.NET не имеет права доступа к запрашиваемому ресурсу. Считать предоставление прав доступа к ресурс для ASP.NET запрос тождественность. ASP.NET имеет идентификатор базового процесса (обычно {MACHINE}ASPNET на IIS 5 или сетевая служба на IIS 6 и IIS 7, и настроенный удостоверения пула приложений в IIS 7.5), который используется при приложение не олицетворяет. Если приложение через подражание , идентификация будет анонимный пользователь (обычно IUSR_MACHINENAME) или прошедший проверку подлинности запрос пользователя.

предоставить ASP.NET доступ к файлу, щелкните правой кнопкой мыши файл в файл Проводник, выберите "Свойства" и выберите вкладку Безопасность. нажать кнопку add" добавление соответствующего пользователя или группы. Выделите учетную запись ASP.NET , и отметьте флажками нужный доступ.

Ошибка Источник:

необработанное исключение во время выполнения текущего веб-запроса. Информация о происхождении и местонахождении исключение можно определить с помощью трассировки стека исключений ниже.

2 ответов


очень простое исправление для решения моей проблемы, в IIS мне пришлось щелкнуть правой кнопкой мыши по пулам приложений и установить .NET Framework V4 на интегрированный, а не классический/

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


У меня такая же проблема.

внесены следующие изменения, чтобы устранить проблему.

(1) я пошел в папку wwwroot. Щелкните правой кнопкой мыши и вкладка "Безопасность". Предоставлено IISUSER для установки разрешения на чтение и запись в папку wwwroot.

(2) Измените пул приложений на отдельный пул и установите identity в Identity пула приложений.