如何为文件结构提供只读权限并允许在某些文件夹上写入?

时间:2016-01-14 20:38:43

标签: windows file-permissions icacls

因此,我尝试使用 icacls 仅让用户使用特定关键字添加和访问文件夹内的文档。

然而,我无法得到我想要的东西。有人有任何提示吗?我不熟悉Windows'权限。谢谢!

这是我到目前为止提出的代码:

(我正在修改权限的帐户名为 test

echo >pdfFolderList.txt
:: Remove any permissions
icacls %~dp0* /remove test /T

:: Deny all access to everything
icacls %~dp0* /deny test:f /T

:: grant read access to everything
icacls %~dp0* /grant test:r /T

:: grant write access to folders with keywords
FOR /d /r %%a in ("*PDF Current Docs*", "*Shipping", "*QA Docs", "*Photos", "*Misc") DO (
    echo %%a>>pdfFolderList.txt
    icacls "%%a" /grant:r test:f /T
    )

示例文件结构将是:

├───Server_Files_Example_Folder
│   ├───A_JOB_NUMBER - Native Current Docs
│   ├───A_JOB_NUMBER - PDF Current Docs
│   │   ├───Drawings
│   ├───A_JOB_NUMBER - TEI Quotes Customer POs and Change Orders
│   ├───Correspondence
│   │   ├───From Customer
│   │   └───To Customer
│   ├───Docs From Customer
│   │   ├───Approval Drawings
│   ├───Misc
│   ├───Photos
│   ├───Programs etc
│   │   ├───As Shipped
│   │   └───Field Changes
│   ├───QA Docs
│   │   └───Markups
│   ├───Service
│   │   ├───Correspondence
│   │   └───Reports
│   ├───Shipping
│   │   └───test
│   └───Vendor Docs
│       ├───Order Confirmation
│       ├───POs
│       └───Vendor Quotes

1 个答案:

答案 0 :(得分:1)

我建议不要在NTFS文件系统ACL上使用deny,因为它搞乱了上面文件夹权限的继承。如果您在Windows计算机上有图形界面,则可以在扩展

下的文件夹的 security 选项卡中手动执行此操作。