BT

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

XACML终有出头天?

| 作者 Arnon Rotem-Gal-Oz 关注 0 他的粉丝 ,译者 郭晓刚 关注 0 他的粉丝 发布于 2007年7月5日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。
XACML,即可扩展访问控制标记语言(eXtensible Access Control Markup Language),是一份Oasis两年多前通过的标准,在上周的Burton's Catalyst Conference会议上演示了XACML如何跨厂商平台工作。

XACML标准提供了一种(标记)语言,用来定义访问授权的决策规则和用于策略决策交换的请求/响应协议。XACML定义了4个主要实体:
  • PAP——策略管理点(Policy Administration Point)——基本上是一个存放策略的仓库。 
  • PIP——策略信息点(Policy Information Point)——目录或者其他身份证明(identity)的供应者。PIP可提供被访问的资源的属性,以及试图访问该资源的实体(身份证明)。
  • PDP——策略决策点(Policy Decision Point)——这个组件负责对访问授权的决策。PDP使用从PAP获得的策略以及从PIP获得的附加信息来进行决策。
  • PEP——策略实施点(Policy Enforcement Point)——这个组件负责接收对授权的请求。PEP向PDP发送XAXML请求,然后根据PDP的决策来行动。

要说明的是,XACML并不是完全独立的。XACML定义了实现请求/响应所必需的消息内容,但没有定义消息交换方面的协议和传输机制。这个问题要用到另一个Oasis标准,名为SAML(Security Assertions Markup Language)。概括来说,XACML提供了一种确定对资源的访问权限的方法,而SAML则提供了一种安全地交换这些信息的方法。

互操作性的之所以重要,不单是因为在一家具有相当规模的企业里几乎不可能存在均一的环境,而且就算你能找到这样的企业,当需要与其他企业合作的时候,你仍然要面对异质环境的问题。

这次互操作演示包括8家厂商:BEA、IBM、JBoss/Red Hat、Oracle、CA、Jericho Systems、SymLabs和Securent。厂商们演示了几个安全方面的互操作场景,JBoss的Anil Saldhana对此作了描述:

用例: 授权决策
========================

在授权决策互操作演示中,由*/Vendor A/* (*/PEP-A/*)的*/PEP/*产生的XACML 2.0授权决策请求,将被*/Vendor B /*(*/PDP-B/*)的*/PDP/*正确解读,其中Vendor A和Vendor B可为参与互操作的任意厂商。

场景一:授权决策:客户访问
客户从浏览器中提交用户名和密码。在身份认证之后,PEP将客户的用户名用户Id和“ViewAccount”操作,在CustomerAccount Web应用程序的上下文中打包成XACML请求,然后交给PDP解读。在此事件中,PDP可来自不同厂商。

场景二:授权决策:客户事务
客户试图购买500股XYZ股票。PEP收集此事务的相关信息(举例来说,“Buy”操作和股票数量“500”),然后和其他上下文中的信息一起,打包成XACML请求交给PDP解读。在此事件中,PDP可来自不同厂商。

场景三:授权决策:客户经理访问
客户经理需要批准请求。PEP收集关于客户经理的信息,交给PDP来处理客户经理的访问。

场景四:授权决策:账户经理批准
客户经理需要批准股票购买。PEP收集关于客户经理的批准的信息,然后询问PDP是否允许此批准通过。

用例:策略交换
===================
由一家厂商产生的XACML策略可被其他厂商的PDP访问和使用。
 James McGovern提出了互操作性的另一个方面,事实上JBoss也做到了这个方面:
Anil Saldhana认为JBoss XACML 2.0的发布是一件大事。这可能是给Alfresco的John Newton、Intalio的Ismael Ghalimi以及Liferay的Brian Chan的一个机会,让他们能够非常容易地在他们的产品中加入XACML支持,把他们的闭源竞争者们打倒在地。
无论如何,即便用了超过两年时间,看到这个标准终于成熟仍然是一件令人高兴的事,特别是在上面提到的那些用例并不罕见的情况下。

评价本文

专业度
风格

您好,朋友!

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

获得来自InfoQ的更多体验。

告诉我们您的想法

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

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

出头日 by Wu Junyin

是否翻译为“出头日”更合适呢?

Re: 出头日 by Lai Jason

呵呵,出头日、出头天我听着都听顺耳的,在台湾就更倾向于说“出头天”,因为闽南话有这种说法。保留原译应该也无伤大雅吧。

Re: 出头日 by Wu Junyin

在台湾就更倾向于说“出头天”

台湾的很多翻译和国内不一样的~ 不过能明白意思就可以了~

Re: 出头日 by Guo Xiaogang

译者我是觉得“天”读起来响亮一点,做标题可能更合适。不过我母语并不是普通话,有些细微的感觉可能抓不好,谢谢提醒。

允许的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通知我

4 讨论

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT