限制用户通过GPO保存他们的桌面,我的文档,我的音乐,我的video,我的图片等

我想完成以下任务:用户必须无权保存桌面,我的文档,我的音乐,我的video,我的图片等。

我已经通过GPO阻止和隐藏了所有驱动器。 但是,用户仍然能够在上面列出的位置存储文件。

服务器操作系统:Windows Server 2008 R2

客户端操作系统:Windows XP,Windows Vista和Windows 7

如果您使用的是Windows Server 2008,这非常容易。

  1. 创build一个组策略对象,进入Computer Configuration > Policy > Windows Settings > Security Settings > File System
  2. 右键单击并为要限制访问的不同文件夹添加%userprofile%\Desktop ….等。
  3. 为用户或用户组指定指定文件夹的权限。

这可以通过login脚本实现,但这有点棘手,并且需要testing以确保它能够针对目标环境正确运行。 它对ACL(系统,pipe理员和用户)中的ACE条目进行了假设,并且用户是所有者(他们通常是)。 这不是防弹安全的,但它可以帮助最大限度地减less“将2 GB的iso文件保存到漫游configuration文件文件夹”的情况。

在广泛的笔触中,当用户login到最后一个login脚本的末尾时,访问他们的桌面和其他位置,以便他们具有读取和执行权限。

在logOFF脚本中,将权限恢复为正常。

在logON脚本开始时,如果注销脚本失败,还应该进行检查以将权限重置为正常。

有许多ACL工具可供使用:icacls,fileacl,setacl。

确定正确的path可以使用以下PowerShell语法执行:

 [Environment]::GetFolderPath("DesktopDirectory") 

这应该用来确保操作在redirect的位置执行,而不是本地位置。

获取所有环境特殊文件夹位置的列表:

 [Environment+SpecialFolder]::GetNames([Environment+SpecialFolder]) 

通常返回:

桌面
程式
个人
我的文件
最爱
启动
最近
发给
开始菜单
我的音乐
DesktopDirectory
我的电脑
模板
的ApplicationData
LocalApplicationData
InternetCache
cookies
历史
CommonApplicationData
系统
PROGRAMFILES
我的照片
COMMONPROGRAMFILES

请注意有两个桌面和DesktopDirectory特殊文件夹。

以下是使用FileAcl的示例PowerShell命令将Desktop文件夹设置为对用户进行读取和执行:

 $user = [System.Environment]::ExpandEnvironmentVariables("%USERDOMAIN%\%USERNAME%") $exe = "C:\util\FileAcl\FileAcl.exe " $arg1 = [System.Environment]::GetFolderPath("DesktopDirectory") $arg2 = "/S" $arg3 = "`"NT AUTHORITY\SYSTEM`":F" $arg4 = "/S" $arg5 = "`"" + $user + "`"" + ":RX" $arg6 = "/S" $arg7 = "`"BUILTIN\Administrators`":F" $arg8 = "/REPLACE" $arg9 = "/PROTECT" $allArgs = @($arg1, $arg2, $arg3, $arg4, $arg5, $arg6, $arg7, $arg8, $arg9) &$exe $allArgs 

要将用户的文件夹设置为修改权限,arg5应该是:

$ arg5 =“ "" + $user + " “”+“:RWXD”