Windows 2003; 查找具有非继承/更改权限的文件夹


8

问题:我正在寻找一种审计/搜索目录结构(Windows 2003)并找到任何未从其父级继承权限的文件夹或添加其他用户/组的文件夹的好方法。

背后的故事

我们正在将旧的Windows 2003文件服务器迁移到2008 R2盒中。该旧服务器是从NT4迁移的。当前的大多数文件夹都使用旧的(不建议使用?)Domain \ Administrators和Domain \ Users组。这些是仍在AD中的组,我无法在2008 R2权限中使用这些组。

因此,在将所有共享数据从旧服务器自动复制到新服务器之前,我首先需要“现代化”旧共享的权限。但是,我知道在过去的几十年中,对某些[未记录]的文件夹的权限进行了修改,以使其不继承自父文件夹或添加其他用户。因此,我寻求一种找到它们的方法!

Answers:


8

我建议使用Powershell(对于Win2003:http//support.microsoft.com/kb/968929/en-us)和一个附加的附加模块,也可以用于此目的(http://gallery.technet.microsoft.com / scriptcenter / 1abd77a5-9c0b-4a2b-acef-90dbb2b84e85)。

例如,这将帮助您首先使用(从启动文件夹运行时)获取文件夹结构的继承。

get-childitem -Recurse | get-inheritance | export-CSV C:\Inheritance.csv -NoTypeInformation

您将在csv中获得所有文件和文件夹,然后可以根据需要在Excel或其他DB中对其进行过滤。

NTFSSecurity Modul的另一个好处是,您也可以在迁移期间使用类似的Powershell脚本更改继承或ACL。

例如,您可以使用以下方法完全删除文件夹(您的起始文件夹)中的继承:

get-childitem | Disable-Inheritance

或再次为所有子文件夹/文件添加-recurse开关。

希望这可以帮助干杯


1
+1使我知道文件系统安全PowerShell模块。
pk。

虽小,但功能极为实用!必备品!
Volodymyr Molodets 2015年

1

使用SetACL非常容易。像这样运行它:

SetACL -on "some path" -ot file -actn list -lst f:csv -rec cont

该命令指示SetACL 仅从具有显式权限的对象中打印权限,是因为ACE被添加到启用了继承的目录中,或者是因为禁用了继承并设置了新ACE。

SetACL处理长度超过260个字符的路径,并在任何目录下列出ACE(无论当前权限如何),即,即使您甚至没有读取访问权限,SetACL也会向您显示其中的内容并打印权限(需要管理员权限)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.