2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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

  • 2013-01-28
  • 本文字数:1973 字

    阅读完需:约 6 分钟

动态访问控制(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 )关注我们,并与我们的编辑和其他读者朋友交流。

2013-01-28 21:343456

评论

发布
暂无评论
发现更多内容

TiDB 多Socket 服务器性能扩展问题分析

TiDB 社区干货传送门

性能调优 性能测评

如何在 TiDB 上高效运行序列号生成服务

TiDB 社区干货传送门

管理与运维

数据库选型中的非技术因素

TiDB 社区干货传送门

数据库架构选型

5.0 新特性试用体验之 Clustered Index

TiDB 社区干货传送门

实践案例 TiDB 底层架构 版本测评 新版本/特性发布 性能测评

写冲突场景下的悲观/乐观事务模型选择

TiDB 社区干货传送门

实践案例

Flink + TiDB,体验实时数仓之美

TiDB 社区干货传送门

实践案例

大教堂终将倒下,但集市永存

TiDB 社区干货传送门

实践案例 数据库架构选型

PD模块梳理

TiDB 社区干货传送门

TiDB 底层架构

【TiDB 最佳实践系列】开发 Java 应用使用 TiDB 的最佳实践

TiDB 社区干货传送门

实践案例

TiDB 优化之消失的统计信息

TiDB 社区干货传送门

实践案例

cdc 同步到 s3 的故障

TiDB 社区干货传送门

迁移 管理与运维 故障排查/诊断 新版本/特性发布

【文章】精选实践汇总1

TiDB 社区干货传送门

实践案例

TiKV 集群部署 注意事项

TiDB 社区干货传送门

【TiDB DevCon 2020】金融专题论坛演讲视频汇总

TiDB 社区干货传送门

端到端的实时计算:TiDB + Flink 最佳实践

TiDB 社区干货传送门

实践案例

一次热点问题排查经历

TiDB 社区干货传送门

故障排查/诊断

TiDB 集群的可用性详解及 TiKV Label 规划

TiDB 社区干货传送门

TiDB 底层架构

SQL只是CRUD?

TiDB 社区干货传送门

TiDB 底层架构

raft:分布式一致性算法笔记

TiDB 社区干货传送门

TiDB 底层架构

关于 TiDB 性能优化的一些思考

TiDB 社区干货传送门

性能调优

使用 TiDB 构建实时应用

TiDB 社区干货传送门

实践案例

实时 AP、分库分表、大数据应用,TiDB 在虎牙直播是怎么用的?

TiDB 社区干货传送门

实践案例

多种方式告诉你如何计算DM同步数据到TiDB的延时时间

TiDB 社区干货传送门

管理与运维

使用pd-recover 恢复pd 多数节点故障的场景

TiDB 社区干货传送门

管理与运维 故障排查/诊断

Chaos Mesh 助力 Apache APISIX 提升稳定性

TiDB 社区干货传送门

实践案例

通过 BR 完成不同 K8s 的 TiDB 集群的数据恢复

TiDB 社区干货传送门

故障排查/诊断

TUG 技术大咖圆桌讨论:如何评判一个数据架构的好坏

TiDB 社区干货传送门

数据库架构选型

【文章】精选实践汇总2

TiDB 社区干货传送门

实践案例

【TiDB 最佳实践系列】TiDB 高并发写入常见热点问题及规避方法

TiDB 社区干货传送门

实践案例

JQ 入门教程

TiDB 社区干货传送门

TiDB 底层架构

某业务升级5.0解决慢SQL问题

TiDB 社区干货传送门

实践案例 故障排查/诊断

Windows Server 2012 中的动态访问控制(Dynamic Access Control)_DevOps & 平台工程_Jonathan Allen_InfoQ精选文章