Windows

使用命令行工具更改 Windows 網路共享權限

  • October 15, 2021

完全不下載subinacl.exe可以嗎?

你看過icacls.execacls.exe嗎?(都在System32文件夾中,至少在Win7上)

對於仍然發現此問題的任何人,您可以使用 POWERSHELL:

Grant-SmbShareAccess -Name example -AccountName Administrators -AccessRight Full -Force
Grant-SmbShareAccess -Name example -AccountName Everyone -AccessRight Change -Force

這是我原來的 PRE-POWERSHELL 答案:

我最近需要為多個家庭共享執行此操作,以限制“完全控制”。雖然您可以在 NTFS 級別執行此操作,但遞歸應用需要時間,反轉需要時間,並且 ADUC MMC 等工具會恢復權限。

似乎沒有用於管理現有共享權限的內置命令行工具,僅在初始設置期間,但您可以進行多次授權,因此如果共享暫時離線不是您可以使用的問題:

NET SHARE example /DELETE /Y
NET SHARE example=C:\FolderPath /GRANT:Everyone,Change /GRANT:Administrators,Full /UNLIMITED /CACHE:None

但這對我來說不是一個選擇,所以最終使用了出色的“SetACL.exe”工具,該工具還可以選擇目標共享名稱。

SetACL.exe -on "example" -ot shr -actn ace -ace "n:S-1-1-0;p:change"
SetACL.exe -on "example" -ot shr -actn ace -ace "n:S-1-5-32-544;p:full"

請注意,這也顯示為所有人 ( S-1-1-0 ) 和本地管理員 ( S-1-5-32-544 ) 使用“眾所周知的 SID”以避免查找,但該名稱也有效。

為了提高效率,可以將多個更改合併到一個命令中:

SetACL.exe -on "example" -ot shr -actn ace -ace "n:S-1-1-0;p:change" -ace "n:S-1-5-32-544;p:full"

請注意,SetACL 命令的目標是 SHARE NAME,而不是共享的文件夾路徑,通常用於 NTFS 權限。

引用自:https://serverfault.com/questions/136727