.Net веб-сайт Создать каталог на удаленный доступ к серверу запрещен

StackOverflow https://stackoverflow.com/questions/2694871

Вопрос

У меня есть веб-приложение, которое создает каталоги. Приложение работает нормально при создании каталога на веб-сервере, однако он не работает, когда он пытается создать каталог на нашем удаленном файловом файле.

Файловыйсервер и веб-сервер находятся в том же домене. Я создал локальный пользователь в нашем домене, «Домен aspnet». Локальный пользователь на обоих серверах.

Я использую свой пул приложения .NET под пользователем домена. Я также пытался использовать Windows Femsonate в Web.config для запуска под пользователем домена.

Я проверил, что пользователь домена имеет полный элемент управления в удаленный каталог. В попытке отладить это, я также дал полный контроль «каждый» в удаленный каталог.

В попытке отладить это, я также добавил пользователя домена в группу администраторов.

У меня есть простая тестовая страница .NET на веб-сервере, чтобы проверить это. Через страницу теста я могу прочитать каталог на файловом сервере и получить список всего в нем.

Я не могу загружать файлы или создавать каталоги на файловом сервере.

Вот код, который работает:

var path = @"\\fileserver\images\";
 var di = new DirectoryInfo(path);
            foreach (var d in di.GetDirectories())
            {
                Response.Write(d.Name);
            }

Вот код, который не работает:

 path = Path.Combine(path, "NewDirectory");
 Directory.CreateDirectory(path);

Вот ошибка, которую я получаю: доступ к пути « Fileserver Images newDirectory» отказано.

Я довольно застрял на этом. Есть идеи?

Это было полезно?

Решение 2

Проблема оказалась проблемой путем.

Fileserver Images было отображено на h: files http Images

У службы были разрешения на диск H, но не доля.

Другие советы

Проверьте уровень доверия сервера / сайта. Если вы работаете менее чем на полном доверии, вам может потребоваться изменить FileIOPermission параметр:

<IPermission 
   class="FileIOPermission" 
   version="1" 
   Read="$AppDir$" 
   Write="$AppDir$" 
   Append="$AppDir$" 
   PathDiscovery="$AppDir$"/>

То $AppDir$ Макросчетное значение расширяется до папки. Ваш веб-сайт находится. Вы можете добавить дополнительные пути, разделяя их с полуобывающимисями.

Файл, который вам нужен для редактирования, будет указан на <trust level=.../> Установка в мастере web.config вспомогательный C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG, предполагаю, что вы работаете .NET 2.0.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top