如何使用microsoft web deploy创建文件夹?另外,当我创建该文件夹时,如何在其上设置ACL?
使用Visual Studio发布到文件系统时是否可以这样做?或者我是否必须发布到启用了IIS Web管理服务(WMSvc)的服务器才能设置acl并创建文件夹?
答案 0 :(得分:7)
从Visual Studio发布的文件系统不会设置ACL,但您可以使用Web Deploy执行此操作。要在从Visual Studio发布或使用MSBuild发布时自动设置ACL的过程,请参阅此博客文章:
http://sedodream.com/2011/11/08/SettingFolderPermissionsOnWebPublish.aspx
答案 1 :(得分:4)
如果使用contentPath或dirPath提供程序,则将在目标计算机上创建您在source参数中指定的目录(如果该目录尚不存在)。如果选择contentPath提供程序,则可以使用其includeAcls=true
设置复制acls。
这是示例语法:
msdeploy -verb:sync -source:contentPath=c:\inetpub\wwwroot,includeAcls=true -dest:contentPath=c:\inetpub\wwwroot,computerName=Server1
要正确设置权限,您必须在源计算机和目标计算机上使用域帐户或具有匹配SID的本地帐户。有关详细信息,请参阅contentPath文章。
如果要单独设置目标文件夹的权限,可以使用setAcl提供程序。 setAcl具有setAclUser和setAclAccess等设置,可以进行更精细的控制。有关详细信息,请参阅文章,包括权限的细节。