PowerShell使用ICACLS.exe设置文件夹权限 3


大多控制台应用程序在Powershell环境中也一样可以调用。例如,下面函数使用icacls.exe去设置一个新建的文件夹:

function New-Folder 
{
  param
  (
    $Path, 

    $Username
  )

  If ( (Test-Path -Path $path) -eq $false ) 
  {
    New-Item $path -Type Directory | Out-Null
  }

  icacls $path /inheritance:r /grant '*S-1-5-32-544:(OI)(CI)R' ('{0}:(OI)(CI)F' -f $username)
}

这个名为New-Folder 函数将创建一个新的文件夹(如果它不存在),接着使用 icacls.exe 关掉继承和只读权限同时授予指定的管理员组和完整的权限给用户。

引用链接:Using ICACLS to Secure Folders

实践

例如创建一个C:\test这样目录,其生成后默认继承了System\Administrators\Users等几个权限,我们执行:

icacls c:\test  /inheritance:r

执行后命令关闭了此目录的继承权限,此时该目录应该是所有权限都没有

接着执行

 icacls c:\test   /grant 'administrator:f' 'user1:rx'

执行完毕后该目录增加了一个管理员,f代表给管理员所有权限;增加一个user1用户,rx代表给user1读和执行权限

 

 

 

本文链接: https://www.pstips.net/using-icacls-to-secure-folders.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

回复 codecook 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注

3 条评论 “PowerShell使用ICACLS.exe设置文件夹权限