开发者

Create folder and set ACL with web deploy

How do I create a folder using microsoft web deploy? Also, when I have created that folder how do I set the ACL on it?

Can I do so when publishing to file system using Visual Studio? Or do I have to publish to a server that has IIS Web Management Service (WMSvc) enabled to 开发者_高级运维be able to set the acl and create folders?


A file system publish from Visual Studio will not set ACLs, but you can do it with Web Deploy. To automate the process of setting ACLs when publishing from Visual Studio or using MSBuild to publish, see this blog post:

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


If you use the contentPath or dirPath providers, the directory that you specify in the source argument will be created on the destination computer if it does not already exist. If you choose the contentPath provider, you can use its includeAcls=true setting to copy the acls over. Here's example syntax:

msdeploy -verb:sync -source:contentPath=c:\inetpub\wwwroot,includeAcls=true -dest:contentPath=c:\inetpub\wwwroot,computerName=Server1

For the permissions to be set correctly, you must use domain accounts or have local accounts with matching SIDs on both the source and destination computers. For more details, see the contentPath article.

If you want to set permissions on the destination folder separately, you can use the setAcl provider. setAcl has settings like setAclUser and setAclAccess that allow for more granular control. See the article for more details, including the ins and outs of permissions.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜