我的问题是公司中的不同资源处理不同的项目,并且只能访问每个客户端内的项目.
现在,当新用户需要访问项目时,我必须进入客户端文件夹(这是共享的文件夹)并授予他们访问权限,然后进入特定的客户端文件夹并授予他们访问权限,然后进入文件夹并进入选择项目并授予他们访问权限.
例:
[ folder ] Clients | | -- [ folder ] Client A | | -- [ folder ] Client B | | ... | -- [ folder ] Project A | | -- [ folder ] Project B ...
假设在“管理员/完全控制”和“系统/完全控制”的根目录下具有可继承权限,请添加权限“经过身份验证的用户/列出文件夹内容/仅此文件夹”(在“安全”中的“高级”对话框中设置根目录的文件夹属性的选项卡).如果启用了基于访问权限的枚举,则在列出根目录时,将导致用户被授予访问权限的客户端文件夹可见.显然,您不必使用“Authenticated Users”.你可以创造更多的东西.
假设您在每个离散客户端文件夹中执行相同操作,经过身份验证的用户将能够枚举整个客户端列表,但只能枚举他们有权访问的每个客户端下的项目.
但是,假设你想严格限制文件夹的可见性.这是Active Directory组嵌套的一个很好的应用程序.在下面的示例中,我将省略使用域本地组.从技术上讲,Microsoft的最佳做法是将全局组嵌套到应用了权限的域本地组中.如果您计划保留单个域环境(并且不信任外部林),则无需遵循此惯例.为了便于解释,我将仅使用全球安全组.
为每个将出现的角色的每个项目创建一个新的全局安全组:
>客户B,项目B – 审核人员 – 允许阅读客户B项目B的内容
>客户B,项目B – 贡献者 – 允许修改客户B项目B的内容
在每个项目文件夹中应用权限,如组名称所述. “审稿人”组将获得“读取”权限,“贡献者”组将获得“修改”权限,
为每个客户端创建一个新的全局安全组:
>客户B项目参与者
将两个Client B,Project B …组放入Client B Project Participants组的成员列表中.在指定客户端的文件夹中,授予客户端B项目参与者组“列出文件夹内容/仅此文件夹”权限.
为所有项目参与者创建新的全局安全组:
>所有客户项目参与者
将客户端B项目参与者和任何其他客户端组放入“所有客户端项目参与者”组的成员身份列表中.在根文件夹中,授予“所有客户端项目参与者”组“列出文件夹内容/仅此文件夹”权限.
当用户加入项目时,将它们添加到他们正在加入的项目的相应组中.由于应用了组嵌套和权限,用户将自动有权枚举根文件夹和他们所涉及的项目的给定客户端文件夹.