重写它时,有没有办法保持文件夹的权限?

我有一个Windows Server 2008 R2,它承载了一个具有以下文件夹结构的网站:

 C:\
    的Inetpub
         wwwroot文件
             MyApp的
                 JS
                样式

应用程序池标识应该对JS和Styles文件夹具有写入权限,因为我们在运行中生成这些文件。 到目前为止没有问题。

但是,部署新版本的应用程序时,这些文件夹将被replace,权限将消失。 有没有办法保持这些特定文件夹的权限,以确保他们在更换时不会失去他们的权限?

谢谢

当一个新的文件夹被创build时,它将inheritance它的父级权限。 因此,如果删除文件夹JSStyles并重新创build它们,默认情况下它们将具有与MyApp文件夹中设置的相同(inheritance)的保留。

将您的部署解决scheme更改为保留这些文件夹并仅更改其内容,或者让部署解决scheme重新创build它们并明确重新设置权限。 一旦这些文件夹被删除,没有什么神奇的方法来获得相同的权限。

这也是个问题,如果这是一个好主意,dynamic生成JS和CSS,并将其写入磁盘。 如果您正在进行缩小,您应该简单地将结果caching在不需要磁盘写入权限的内存中。

您可以使用win7和windows 2008附带的icacls.exe来loggingACL和安全设置。这会将权限logging到纯文本文件中。 然后,您可以再次使用icacls.exe重新导入文本文件,并将安全性重置为原来的状态。

语法有点复杂,但确实有效。

 ICACLS name /save aclfile [/T] [/C] [/L] [/Q] stores the DACLs for the files and folders that match the name into aclfile for later use with /restore. Note that SACLs, owner, or integrity labels are not saved.