5

Я использую VS 2010 для создания пакета развертывания для веб-приложения. Я вручную развертываю его на сервере IIS 6.0 с помощью сценария командной строки развертывания, который он создает. Все материалы скопированы в соответствии с веб-сайтом по умолчанию Inetpub. Единственная проблема, с которой я сталкиваюсь, заключается в том, что разрешения на доступ к папке продолжают сбрасываться после развертывания.Разрешения на развертывание в Интернете и папки

Скажите, что мой сайт находится под папкой «Mywebsite». Я предоставляю определенному пользователю XYS полный контроль над этой папкой. Все хорошо. В следующий раз, когда я развернусь, пользователь XYZ больше не имеет полного контроля и разрешения сбрасываются.

+0

Разве это не вопрос для Superuser.com? –

+0

Не можете ли вы установить это конкретное разрешение в своем развертывании? http://sedodream.com/2011/11/08/SettingFolderPermissionsOnWebPublish.aspx – bob

ответ

8

Если вы хотите пропустить операции ACL, вам необходимо установить свойство в своей сборке. Вы можете сделать это двумя способами

  1. Редактировать ваш файл проекта
  2. Создать .wpp.targets файл

Я бы рекомендовал # 2. В этом случае создайте новый файл в том же каталоге, что и файл проекта, с именем {ProjectName} .wpp.targets, где {ProjectName} - это имя вашего проекта. Затем внутри этого файла вы должны поместить следующее содержимое.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" 
     ToolsVersion="4.0"> 

    <PropertyGroup> 
    <IncludeSetAclProviderOnDestination>False</IncludeSetAclProviderOnDestination> 
    </PropertyGroup> 
</Project> 

Здесь вы устанавливаете свойство IncludeSetAclProviderOnDestination, который будет сигнализировать Publishing Pipeline Web, чтобы не включать поставщиков ACL в манифесте, который создается для пакета/опубликовать.

Если вы хотите принять подход №1, просто бросьте все под элите.

Смежные вопросы