Кажется, у меня странная проблема с безопасностью:
У меня есть веб-сайт со следующими папками:
- Inetpub \ Wwwroot
- Inetpub \ Wwwroot \ readyfordownload
Пользователь IIS APPPOOL \ Classic имеет полный доступ к этой папке 'readyfordownload'.
Теперь у меня есть консольное приложение, которое создает zip-файл в папке readyfordownload. Это сделано из библиотеки классов #. Как ни странно, IIS APPOOL не может получить доступ к этому файлу, хотя он имеет полный контроль над папкой. Кроме того, classlib сначала создает файл xlsx, который позже добавляется в zip. Пользователь APPPOOL имеет доступ к файлу xlsx.
Если я запускаю ту же функцию в библиотеке классов C # из кода, размещенного на веб-сайте, создается тот же zip-файл, и пользователь IIS APPPOOL МОЖЕТ получить доступ к файлу ....
Есть идеи?
zip создается так (не фактический код, но тот же)
http://dotnetzip.codeplex.com/
using (ZipFile zip = new ZipFile())
{
// add this map file into the "images" directory in the zip archive
zip.AddFile("test.xlsx");
zip.Save("MyZipFile.zip");
}
ОС - веб-сервер Windows 2008 R2
Библиотека ZIP является Dotnetzip (Ionic)
Обновление: меня больше всего интересует, почему ZIP-файл не получает прав, а файл xlsx - ....