BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Windows Server 2012 中的动态访问控制(Dynamic Access Control)

| 作者 Jonathan Allen 关注 593 他的粉丝 ,译者 陆巍 关注 0 他的粉丝 发布于 2013年1月29日. 估计阅读时间: 6 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

动态访问控制(Dynamic Access Control)是Windows Server 2012中的一组功能,用于管理在活动目录组(Active Directory Groups)之上的身份验证与授权。动态访问控制关注以下四个场景:

  • 数据分级
  • 基于表达式的访问条件
  • 基于表达式的审核
  • 加密

动态访问控制中有五个关键组件一起工作,服务于上述场景:

  • 基于表达式的访问控制列表
  • 用户与设备声明
  • 文件分类基础架构
  • 中心访问与审核策略
  • 拒绝访问帮助

用户与设备声明

用户声明是关于用户的属性,例如他们在那个部门工作。同样的,物理设备也有自身关联的声明。这可以用于保护敏感信息不会被暴露给未被信任的机器,即使在用户被允许访问文件的情况下。

声明支持多种数据类型,包括字符串型,布尔型和整型。

基于表达式的访问控制列表(Access Control Lists ,ACL)

基于表达式的访问控制列表作用于用户声明,设备声明和资源属性上。

表达式包含两部分,适用范围(applicability )和权限。适用范围检查通常针对资源属性,例如“Resource.SecurityLevel = Secret”。如果这一表达式返回true,那么权限表达式将会评估用户/设备对是否可以访问资源。继续上面的例子,我们会使用以下表达式“(User.SecurityClearance = TopSecret or User.SecurityClearance = Secret) and (Device.Location = SecureLab)”。

基于表达式的访问控制列表也扩展了现有的基于组的策略。以前对于组而言,并没有“与(AND)”这一运算符。如果一个用户必须在两个或两个以上组才能访问某一资源,那么必须要新建一个组代表那些用到的组才行。这一“组膨胀”问题在许多拥有数十或数百站点的大型公司中是主要问题。现在,只需要写一个表示“用户即在组A也在组B”的表达式就可以了。

用户和开发者可以用多种不同的方法来管理基于表达式的访问控制列表,包括 AddConditionalAce API,PowerShell或者LDAP。

文件分类基础架构(File Classification Infrastructure,FCI)

文件分类基础架构用于将资源属性指派给文件。FCI支持内置分类和第三方分类。在Windows Server 2008 R2中,文件分类器是基于一个定时器运行,通常是在晚上。在Windows Server 2012中,文件分类器是近实时(near-real time)运行的。在创建文件与将其分类之间仍然存在少许延迟,这使得本地权限也非常重要。

FCI的另一个变化是分类信息的存放地。先前它是放在次级文件流中。这意味着任何对这个文件有写权限的人都可以编辑它。在Windows Server 2012中这已经被移入文件访问控制列表。文件分类的列表存在活动目录中。

中心访问与审核策略

中心访问策略(Central Access Policy,CAP)将基于表达式的访问控制与文件分类相结合。这允许IT部门设置高级规则,例如财务文档(用FCI分类)只有财务部门的用户并且在项目组中才能访问。这些规则通过组策略推送到文件服务器。

中心访问策略检查是在共享访问控制列表(share ACL)检查之后。如果CAP规则通过了,那么NTFS文件系统的本地文件访问控制将进行检查。

为了减少由于错误配置安全设置引发的问题,中心访问策略可以分阶段配置。这使得信息安全经理可以发现谁对某一文件失去了访问权限,并找出哪些规则引发了问题。

新Kerberos令牌

Kerberos仍旧是活动目录机器间声明流动的主要方式。如果客户端使用Windows 8,那么令牌中将带有用户声明、设备组和设备声明的信息。

如果用户使用Windows 7,OS X或者其他不支持Kerberos这一扩展的操作系统,那么在身份验证过程中会有额外的步骤。在激活情况下,文件服务器能够向活动目录服务器查询这些缺失的声明信息。这会在延迟和网络带宽上带来一些开销。

新Kerberos令牌的另一个功能是混合身份的概念。这适用于那些单一的用户帐户没有足够的权限去访问所有需要的文件的场景。混合令牌也包含了SAML信息,用于访问那些基于云的系统。

必须小心避免“票证膨胀(ticket bloat)”,这一问题是由在用户的Kerberos票证中包含过多组和声明引起的。为了减少票证膨胀的影响,声明和组都是被压缩过的。此外,Kerberos令牌的最大大小增加到了48K。

拒绝访问帮助

简而言之,拒绝访问帮助协助用户找出为什么他们不能访问给定的资源。它能够做这样一些事,例如提醒用户插入物理口令,告诉他们当前违反了哪条访问规则。也能够配置它向资源所有者发送一封电子邮件,这样他们的访问请求能够得到所有者的复核,并可能被批准。

部署

添加资源属性只需要一个活动目录的更新和一台Windows Server 2012文件服务器。用户声明和中心访问策略需要Windows Server 2012域控制服务器。设备声明要求你的客户端运行于Windows 8上。

查看英文原文Dynamic Access Control in Windows Server 2012


感谢贾国清对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT