Windows Server 2012高级文件服务器管理
——动态访问控制
作者:兰晓宇
【引子】
领导说:公司的文档对公司的发展至关重要,一定要保障公司文档的安全性和可用性,绝不可以泄密。
作者说:我的文档放在公司的服务器上安全吗?权限是如何控制的呢?
用户说:我想访问XX文档,为什么没有权限呢?我要申请权限。
安全,就像给IT穿一件棉袄,虽然行动不便,但是很暖和。面对着这种“领导要求‘暖和’,用户要求‘方便’“的局面,我们的IT管理员常常处于尴尬的地位,在各方力量的较量中,做着无聊的事情。
随着Windows Server 2012的发布,一项非常强大的文件服务器管理工具走进了我们的视野,那就是动态访问控制(DAC),本文,将为您展示DAC的强大所在……
【正文】
1.功能概述
大多数企业,会将自己的数据存储在文件服务器,因此,IT管理员必须提供适当的安全和访问控制,在以前的Windows 服务器版本中,IT管理员主要的控制手段为NTFS的安全权限。但是在比较复杂的环境中,NTFS权限的管理,很不方便。我有一个客户,员工数千人,但是权限管理非常细致,以至于,出现个别用户隶属于上千个组的情况。不仅仅是管理员的管理工作非常麻烦,早期的Windows 版本还有每用户最多隶属于1015个组的限制。
Windows Server 2012的发布,为我们带来了一种新的访问控制机制,即动态访问控制——DAC。动态访问控制提供了一种灵活的方式来运用和管理访问和审计。
DAC提供如下功能:
1、文件分类:可以与FSRM结合,实现对服务器上的文件进行动态的分类,例如:通过关键字过滤,来定义文档的保密级别等。
2、访问控制:基于中央访问策略定议用户的访问控制,可以实现更加丰富的权限控制,例如:要求用户隶属于管理员组,并且用户所使用的计算机也隶属于管理员组,才拥有访问权限;或用户的部门属性等于文档的部门属性时,才拥有访问权限,以便限制跨部门的访问。
3、访问审计:可以使用中央审计策略定义文件访问审计,并生成审计报告。例如:审计有哪些用户访问过保密级别为高的文档。
4、RMS集成:与RMS集成,实现文档权限的进一步细化。例如:只允许用户查看文档,而不可以复制内容或者打印、转发等。
5、拒绝访问援助:可以自定义拒绝访问的提示信息,以减少服务台的工作量以及减少排错的时间。
2.实验环境概述
本文实验环境如下:
Contoso公司有一个域名为contoso.com的活动目录,其中域控制器的主机名为DC1,并有一台名为SRV1的文件服务器,Win7和Win8是两台客户端。所有用户和计算机位于组织单位DAC下。
公司的管理员对内部文档拥有较高权限,隶属于安全组Manager;有一个名称为Trainer的部门,利用用户属性的部门属性进行标识。本实验主要实现如下两个目标:
1、对公司文档进行关键字过滤,进而实现保密级别的划分。只有当管理员组的用户,使用属于管理员组的计算机时,才可以访问文档。
2、为Trainer部门建立共享文件夹,并赋予Trainer属性,只有当用户的部门属性为Trainer时才可以访问。
用户的环境如下表:
对象名称 | 对象类型 | 部门属性 | 隶属于 |
Tom | 用户 | / | Manager Domain users |
Jerry | 用户 | Trainer | Domain users |
Win7 | 计算机 | / | Domain Computers Manager-WKS |
Win8 | 计算机 | / | Domain Computers Manager-WKS |
3.配置AD环境,以支持DAC
1、编辑默认域控制器策略,展开如下级别:默认域控制器策略-计算机配置-策略-管理模板-系统-KDC。
2、配置并启用“KDC支持声明、复合身份验证和KerberosArmoring”,选择”支持“。
3、以Administrator登录DC1,并刷新组策略:gpupdate/force。
4.配置用户和设备声明
1、以Administrator身份登录DC1,打开AD管理中心。在列表视图中,点击动态访问控制。然后双击Claim Types。
2、在Claim Types容器中,新建声明类型;
3、在创建声明类型窗口,在源属性选项中,选择Department,在Display name框中填写Company Department,并勾选计算机和用户复选框,如下图。
4、在Claim Types容器中再次新建声明类型,在源属性中选择Description;清除用户复框,并选择计算机复选框,如下图。
5.配置资源属性
1、以管理员身份登录DC1,打开AD管理中心,点击动态访问控制,打开Resource Properties容器。
2、右键点击,并启用Department和Confidentiality资源属性。
3、打开Department的属性,在建议值中添加Trainer。
6.配置文件分类
1、以管理员身份登录SRV1,并添加文件服务资源管理器(FSRM)这个角色。
2、在C盘新建两个文件夹,分别命名为docs和Trainer,并共享,授予everyone读写的共享权限。在c:\docs文件夹下新两个文本文档doc1.txt和doc2.txt,其中一个文档包含后面要用到的关键字“保密”。
3、打开文件服务器资源管理器(FSRM),展开分类管理,右键点击分类属性,并选择刷新,即可获取到前面配置的两条分类属性Department和Confidentiality。
4、点击分类规则,利用如下配置信息新建一条分类规则:
规则名称:文档保密级别
作用域:c:\docs
分类方法:内容分类器
分类属性:Confidentiality
指定值:High
配置参数:正则表达式,保密。(如下图)
评估类型:勾选重新评估现有的属性值,并选择覆盖现有值。
5、立即运行分类规则,也可以按需要配置分类计划。
6、打开资源浏览器,打开C:\docs,查看doc1的属性,分类标签中,Confidentiality属性为空,而doc2的Confidentiality属性为High。
7、打开资源浏览器,打开C:\,并打开Trainer文件夹的属性,在分类标签中,将Department的值设为Trainer。
7.配置中央访问规则和中央访问策略
1、以管理员身份登录DC1,打开AD管理中心,在动态访问控制中,打开Central Access Rules容器。
2、利用如下配置信息创建访问规则:
规则名称:Department match
目标资源:资源-Department-等于-值-Trainer
当前权限:
n移除Administrator
n添加Authenticate Users,完全控制权限(可按需要调整)
n添加条件:用户-companydepartment-等于-资源-department
3、利用如下资源新建另一条访问规则:
规则名称:访问高保密文档
目标资源:资源-Confidentiality-等-值-High
当前权限:
n移除Administrator
n添加Authenticate Users,完全控制权限(可按需要调整)
n添加条件:用户-组-隶属于每项-值-Manager
n添加第二条件:设备-组-隶属于每项-值-Manager-WKS
n设置两个条件间的关系为and
4、在AD管理中心,打开CentralAccess Policy容器,用如下配置参数创建中央访问策略:
策略名称:匹配部门
成员中心访问规则:department match
5、用如下配置参数新建另一条访问策略:
策略名称:保护文档
成员中心访问规则:访问高保密文档
8.发布中心访问策略
1、在DC1服务器管理器中,打开组策略管理控制台。
2、新建组策略对象,命名为DAC,并链接至OU:DAC。
3、编辑组策略对象DAC,展开:计算机配置-策略-Windows设置-安全设置-文件系统-中心访问策略
4、右键点击中心访问策略,并选择管理中心访问策略,将上面创建的两条策略“匹配部门”和“保护文档”,添加到组策略中。
5、以管理员身份登录SRV1,刷新组策略:gpupdate/force。
6、打开资源浏览器,浏览到c:\docs,打开文件夹的属性,在“安全”标签中,点击高级,在中央策略标签中,选择“保护文档”这条策略。
7、同上面的操作,将“匹配部门”这条策略,分配给c:\Trainer这个文件夹。
9.验证动态访问控制
1、以tom身份登录Win8客户端,访问\\srv1。
2、由于tom的部门属性不等于Trainer,所以无法访问trainer的共享;
3、由于tom隶属于组manager,并且Win8客户端隶属于组manager-WKS,所以tom可以访问docs1和doc2。
4、切换用户,以jerry身份登录Win8,由于jerry的部门等于Trainer,所以可以打开Trainer共享文件夹
5、但是jerry不属于manager组,不符合策略要求,所以无法查看doc2文档(默认开启基于访问权限的枚举):
【总结】
DAC的魅力我们已经窥得一二,步骤比较多,您可以全面的再看一下上面的步骤,其实非常容易理解。与传统的权限控制NTFS相对比,NTFS权限,要求我们找到特定的文件或文件夹,并指定特定的用户或组拥有相应的权限。而DAC,则是结合FSRM的文件分类功能,实现被授权对象的动态控制,并且使用中心访问规则,实现对用户的动态判断。
DAC的真正实力远非如此实验般简单,只要设计得当,权限可以控制的非常细致,并且可以和RMS集成,实现文档的防泄密。有关DAC的更丰富的应用,欢迎各位开动脑筋,共同思考……