使用Web部署创建文件夹并设置ACL

Tom*_*son 4 .net webdeploy microsoft-web-deploy

如何使用microsoft web deploy创建文件夹?此外,当我创建该文件夹时,如何在其上设置ACL?

使用Visual Studio发布到文件系统时可以这样做吗?或者我是否必须发布到启用了IIS Web管理服务(WMSvc)的服务器才能设置acl并创建文件夹?

tdy*_*tra 7

从Visual Studio发布的文件系统不会设置ACL,但您可以使用Web Deploy执行此操作.要在从Visual Studio发布或使用MSBuild发布时自动设置ACL的过程,请参阅此博客文章:

http://sedodream.com/2011/11/08/SettingFolderPermissionsOnWebPublish.aspx


tim*_*amm 4

如果使用contentPathdirPath提供程序,则将在目标计算机上创建您在源参数中指定的目录(如果该目录尚不存在)。如果您选择 contentPath 提供程序,则可以使用其includeAcls=true设置来复制 acl。这是示例语法:

msdeploy -verb:sync -source:contentPath=c:\inetpub\wwwroot,includeAcls=true -dest:contentPath=c:\inetpub\wwwroot,computerName=Server1
Run Code Online (Sandbox Code Playgroud)

为了正确设置权限,您必须使用域帐户或在源计算机和目标计算机上都拥有具有匹配 SID 的本地帐户。有关更多详细信息,请参阅contentPath文章。

如果您想单独设置目标文件夹的权限,可以使用setAcl提供程序。setAcl 具有 setAclUser 和 setAclAccess 等设置,可以进行更精细的控制。请参阅该文章了解更多详细信息,包括权限的详细信息。