CN102176226A - 安全授权查询 - Google Patents

安全授权查询 Download PDF

Info

Publication number
CN102176226A
CN102176226A CN2011101621104A CN201110162110A CN102176226A CN 102176226 A CN102176226 A CN 102176226A CN 2011101621104 A CN2011101621104 A CN 2011101621104A CN 201110162110 A CN201110162110 A CN 201110162110A CN 102176226 A CN102176226 A CN 102176226A
Authority
CN
China
Prior art keywords
authorization query
authorization
resource
assert
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011101621104A
Other languages
English (en)
Other versions
CN102176226B (zh
Inventor
B·B·迪拉韦
M·Y·贝克
A·D·戈登
C·富尔内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102176226A publication Critical patent/CN102176226A/zh
Application granted granted Critical
Publication of CN102176226B publication Critical patent/CN102176226B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Abstract

在一示例实现中,一分支安全方案具有不允许使用否定的第一层和允许使用否定的第二层。在另一示例实现中,一授权查询表将各个资源专用操作映射到相应的相关联授权查询。在又一示例实现中,允许授权查询具有否定,但不允许个别断言具有否定。

Description

安全授权查询
本申请是申请人于2007年9月5日提交的、申请号为“200780033322.4”(国际申请号为“PCT/US2007/077641”)的、发明名称为“安全授权查询”的发明专利申请的分案申请。
背景
计算机和其他电子设备遍布人们的职业和个人生活。在职业设置中,人们在项目协作期间交换和共享机密信息。在个人设置中,人们参与电子商务以及个人信息的传输。在这些和其他众多情况中,电子安全措施被认为是重要的。
电子安全措施范例可令职业信息保持机密以及个人信息保持私密。电子安全措施范例可涉及某种水平的加密和/或针对诸如病毒、蠕虫和间谍软件等恶意软件的保护。信息的加密以及针对恶意软件的保护历来受到极大的关注,尤其是近几年来。
然而,控制对信息的访问是保护电子信息安全性同等重要的方面。对于其中受益于电子信息的共享和/或传送的情形尤其如此。在这样的情形中,某些人被准许访问,而其他人要被排除在外。
访问控制自早期的共享系统以来就是共享计算机和应用程序服务器的共同特征。存在用于控制对信息的访问的多种不同的方法。它们在组合对请求对某一资源的访问的实体的认证以及授权所允许的访问的机制方面享有共同的基础。认证机制包括口令、Kerberos、以及x.509证书。其目的在于允许进行资源控制的实体肯定地标识进行请求的实体或它所需的关于实体的信息。
授权示例包括访问控制列表(ACL)以及基于策略的机制,诸如可扩展访问控制标记语言(XACML)或特权和角色管理基础架构(PERMIS)。这些机制定义哪些实体可访问给定的资源,诸如文件系统中的文件、硬件设备、数据库信息等。它们通过提供关于请求者的认证信息以及所允许的对资源的访问之间的映射来执行这种授权。
随着计算机系统越来越普遍地连接到诸如因特网等大型网络上,这些机制被证实在处理日益发展的访问控制要求方面稍有限制和不灵活。地理上散布的用户和计算机资源的系统,包括横跨多个行政区域的那些系统尤其提出了当前部署的技术解决不好的多个挑战。
概述
在一示例实现中,一分支安全方案具有不允许使用否定的第一层和允许使用否定的第二层。在另一示例实现中,一授权查询表将各个资源专用操作映射到相应的相关联授权查询。在又一示例实现中,允许授权查询具有否定,但不允许个别断言具有否定。
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。而且,其它方法、系统、方案、装置、设备、介质、过程、API、安排、协议等的实现也在此得到描述。
附图简述
在各图中使用相同的数字来引用相同和/或对应的方面、特征和组件。
图1是示出其中可以实现示例安全方案的示例一般环境的框图。
图2是示出具有两个设备以及多个示例安全相关组件的示例安全环境的框图。
图3是示出其中在安全相关组件之间交换示例安全相关数据的图2的示例安全环境的框图。
图4是可用于本文所述的安全相关实现的示例设备的框图。
图5是示出用于一般安全方案的示例断言格式的框图。
图6是示出具有第一层和第二层的示例分支安全方案的框图。
图7是示出示例授权查询查明和示例授权查询求值的一般框图。
图8是示出响应于资源访问请求的示例授权查询查明的更具体的框图。
图9是示出给定断言上下文情况下的示例授权查询求值的更具体的框图。
图10是示出用于查明授权查询并对其求值的方法的示例的流程图。
详细描述
示例安全环境
图1是示出其中可以实现示例安全方案100的示例一般环境的框图。安全方案100表示进行保护的集成方法。如图所示,安全方案100包括多个安全概念:安全令牌100(A)、安全策略100(B)、以及求值引擎100(C)。一般,安全令牌100(A)、安全策略100(B)共同提供对求值引擎100(C)的输入。求值引擎100(C)接受输入,并产生指示应许可还是拒绝对某一资源的访问的授权输出。
在所述实现中,安全方案100可由一个或多个设备102覆盖和/或与其集成,这些设备由硬件、软件、固件、其某种组合等组成。如图所示,“d”个设备在一个或多个网络104上互连,“d”是某一整数。更具体地,设备102(1)、设备102(2)、设备102(3)...设备102(d)能够经由网络104通信。
每一设备102可以是能够实现安全方案100的至少一部分的任何设备。这样的设备的示例包括但不限于:计算机(例如,客户机计算机、服务器计算机、个人计算机、工作站、台式机、膝上型计算机、掌上型计算机等)、游戏机(例如,控制台、便携式游戏设备等)、机顶盒、电视机、消费电子产品(例如,DVD播放器/记录器、摄录像一体机、数码录像机(DVR)等)、个人数字助理(PDA)、移动电话、便携式媒体播放器、其某种组合等。一个示例电子设备在以下具体参考图4描述。
网络104可由链接在一起和/或覆盖在彼此之上的任何一个或多个网络形成。网络104的示例包括但不限于:因特网、电话网络、以太网、局域网(LAN)、广域网(WAN)、有线电视网络、光纤网络、数字用户线(DSL)网络、蜂窝网络、
Figure BSA00000518866200031
网络、
Figure BSA00000518866200032
网络、虚拟专用网(VPN)、其某种组合等。网络104可包括多个域、一个或多个网格网络等。这些网络或网络组合中的每一个可根据任何联网标准操作。
如图所示,设备102(1)对应于正与之交互的用户106。设备102(2)对应于正在其上执行的服务108。设备102(3)与资源110相关联。资源110可以是设备102(3)的一部分,或与设备102(3)分开。
用户106、服务108以及诸如任何给定设备102等机器形成非穷举的示例实体列表。实体随时可能希望访问资源110。安全方案100确保被正确认证和授权的实体被许可访问资源110,而阻止其他实体访问资源110。
图2是示出具有两个设备102(A)和102(B)以及多个示例安全相关组件的示例安全环境200的框图。安全环境200还包括授权机构202,诸如安全令牌服务(STS)授权机构。设备102(A)对应于实体208。设备102(B)与资源110相关联。尽管安全方案100可在更复杂的环境中实现,但使用该相对简单的两个设备的安全环境200来描述示例安全相关组件。
如图所示,设备102(A)包括两个安全相关组件:安全令牌204和应用程序210。安全令牌204包括一个或多个断言206。设备102(B)包括五个安全相关组件:授权上下文212、资源保卫214、审计日志216、授权引擎218和安全策略220。安全策略220包括信任和授权策略222、授权查询表224和审计策略226。
每一设备102可被不同地配置,且仍能够实现安全方案100的全部或一部分。例如,设备102(A)可具有多个安全令牌204和/或应用程序210。作为另一示例,设备102(B)可不包括审计日志216或审计策略226。其它配置也是可能的。
在所述实现中,授权机构202向实体208发放具有断言206的安全令牌204。断言206在以下描述,包括在题为“安全策略断言语言示例特征”一节中。实体208从而与安全令牌204相关联。在操作中,实体208希望依靠安全令牌204使用应用程序210来访问资源110。
资源保卫214接收访问资源110的请求,并有效地管理与设备102(B)的其他安全相关组件的认证和授权过程。如其名所指示,信任和授权策略222包括针对在安全环境200内信任实体和授权动作的策略。信任和授权策略222可例如包括安全策略断言(未在图2明确示出)。授权查询表224将诸如访问请求等所请求的动作映射到适当的授权查询。审计策略226描绘与在安全环境200中实现安全方案100有关的审计责任和审计任务。
授权上下文212从安全令牌204收集断言206,它用于认证进行请求的实体,授权上下文212还从信任和授权策略222收集安全策略断言。这些收集的断言在授权上下文212中形成断言上下文。因此,授权上下文212可包括除各种断言以外的其他信息。
来自授权上下文212的断言上下文和来自授权查询表224的授权查询被提供给授权引擎218。使用断言上下文和授权查询,授权引擎218作出授权决策。资源保卫214基于授权决策而响应访问请求。审计日志216包含审计信息,诸如所请求的资源110的标识和/或由授权引擎218执行的算法求值逻辑。
图3是示出其中在安全相关组件之间交换示例安全相关数据的示例安全环境200的框图。交换安全相关数据以支持示例访问请求操作。在此示例访问请求操作中,实体208希望使用应用程序210访问资源110,并用安全令牌204指示其这样做的授权。因此,应用程序210向资源保卫214发送访问请求*。在图3的该描述中,星号(即“*”)指示所述安全相关数据在图3中明确示出。
在所述实现中,实体208用令牌*——安全令牌204向资源保卫214认证*它自己。资源保卫214将该令牌断言*转发到授权上下文212。这些令牌断言是安全令牌204的断言206(图2)。安全策略220向资源保卫214提供授权查询表*。授权查询表是从授权查询表模块224得到的。发送到资源保卫214的授权查询表可被限于与当前访问请求直接相关的一个或多个部分。
策略断言是由安全策略220从信任和授权策略222提取的。策略断言可包括信任相关断言和授权相关断言两者。安全策略220将策略断言*转发到授权上下文212。授权上下文212将令牌断言和策略断言组合成断言上下文。如由带圈的“A”所示,从授权上下文212向授权引擎218提供断言上下文*。
根据授权查询表查明授权查询。资源保卫214向授权引擎218提供授权查询(授权查询*)。授权引擎218在求值算法中使用授权查询和断言上下文来产生授权决策。授权决策(授权决策*)被返回给资源保卫214。实体208是否被资源保卫214准许访问*资源110取决于该授权决策。如果授权决策是肯定的,则访问被准许。另一方面,如果由授权引擎218发出的授权决策是否定的,则资源保卫214不准许实体208访问资源110。
授权过程还可使用补充授权过程的语义来审计。审计可能需要监视授权过程和/或存储如授权引擎218逻辑地执行的求值算法等任何中间和/或最终产品。为此,安全策略220向授权引擎218提供来自审计策略226的审计策略*。至少当请求审计时,可从授权引擎218向审计日志216转发含有审计信息的审计记录*。或者,审计信息可经由资源保卫214例如作为授权决策的一部分或单独地路由到审计日志216。
图4是可用于本文所述的安全相关实现的示例设备102的框图。多个设备102能够跨一个或多个网络104通信。如图所示,两个设备102(A/B)和102(d)能够经由网络104参与通信交换。尽管具体示出两个设备102,但是也可以取决于实现利用一个或多于两个设备102。
一般而言,设备102可标识任何计算机或能够进行处理的设备,诸如客户机或服务器设备;工作站或其他通用计算机设备;PDA;移动电话;游戏平台;娱乐设备;以上参考图1列出的设备之一;其某种组合等。如图所示,设备102包括一个或多个输入/输出(I/O)接口404、至少一个处理器406以及一个或多个介质408。介质408包含处理器可执行指令410。
在所述设备102的实现中,I/O接口404可包括(i)用于跨网络104通信的网络接口,(ii)用于在显示屏上显示信息的显示设备接口,(iii)一个或多个人机接口等。(i)网络接口的示例包括网卡、调制解调器、一个或多个端口等。(ii)显示设备接口的示例包括图形驱动器、显卡、屏幕或监视器的硬件或软件驱动器等。打印设备接口可类似地作为I/O接口404的一部分被包括。(iii)人机接口的示例包括那些以有线或无线方式与人机接口设备402(例如,键盘、遥控器、鼠标或其他图形定点设备等)通信的接口。
通常,处理器406能够执行、运行、和/或以其它方式实现诸如处理器可执行指令410等处理器可执行指令。介质408由一个或多个处理器可访问介质组成。换言之,介质408可包括可由处理器406执行以由设备102实现功能的执行的处理器可执行指令410。
因此,安全相关实现的实行可以在处理器可执行指令的通用上下文中描述。一般而言,处理器可执行指令包括例程、程序、应用程序、代码、模块、协议、对象、组件、元数据及其定义、数据结构、应用程序编程接口(API)、模式等,它们执行和/或完成特定的任务,和/或实现特定的抽象数据类型。处理器可执行指令可以位于单独的存储介质中,由不同的处理器执行,和/或通过各种传输介质传播或存在于各种传输介质上。
处理器406可以使用任何适用的能进行处理的技术来实现。介质408可以是作为设备102的一部分被包括的和/或能被设备102访问的任何可用介质。其包括易失性和非易失性介质、可移动和不可移动介质以及存储和传输介质(例如,无线或有线通信信道)。例如,介质408可以包括用于处理器可执行指令410的长期大容量存储的磁盘/闪存/光介质阵列,用于当前正在执行的指令的短期存储的随机存取存储器(RAM),用于传输通信(例如,安全相关数据)的网络104上的链路等。
如具体示出的,介质408至少包括处理器可执行指令410。一般而言,处理器可执行指令410在由处理器406执行时使设备102能执行本文所述的各种功能,包括在各个流程图中所示的那些动作。仅作为示例,处理器可执行指令410可包括安全令牌204、其断言206的至少其中之一、授权上下文模块212、资源保卫214、审计日志216、授权引擎218、安全策略220(例如,信任和授权策略222、授权查询表224和/或审计策略226等),其某种组合等。尽管未在图4中明确示出,但处理器可执行指令410还可包括应用程序210和/或资源110。
安全策略断言语言示例特征
本节描述了安全策略断言语言(SecPAL)的实现的示例特征。本节的SecPAL实现是以相对非正式的方式描述的,且仅作为示例。它具有解决创建端对端解决方案时所涉及的大量安全策略和安全令牌职责的能力。作为示例而非限制,这些安全策略和安全令牌职责包括:描述显式信任关系;表达安全令牌发放策略;提供包含身份、属性、能力和/或委托策略的安全令牌;表达资源授权和委托策略等。
在所述实现中,SecPAL是用于以灵活且易处理的方式表达安全措施的声明性的基于逻辑的语言。它可以是综合的,且它可提供用于表达信任关系、授权策略、委托策略、身份和属性断言、能力断言、撤销、审计要求等的统一机制。该统一性在使安全方案可理解且可分析方面提供切实的好处。该统一机制还通过允许避免、至少显著减少不同安全技术之间的语义转换和调停的需求而提高安全保证。
SecPAL实现可包括以下示例特征的任何一个:[1]SecPAL可相对容易地理解。它可使用允许其断言作为英语语句阅读的定义句法。而且,其语法可以是限制性的,使其仅要求用户理解少数具有清楚定义的语义的主语-动词-宾语(例如,主语-动词短语)构造。最后,用于基于断言的集合对可推断事实求值的算法可依赖于少数相对简单的规则。
[2]SecPAL可在其实现中利用行业标准基础架构以便于其在现有系统中的采用和集成。例如,可使用可扩展标记语言(XML)句法,这是来自形式模型的直接映射。这允许使用标准语法分析器和句法正确性确认工具。它也允许对完整性、来源证明和机密性使用W3C XML数字签名和加密标准。
[3]SecPAL可通过支持分布式策略授权和合成而允许分布式策略管理。这允许灵活地适应不同的操作模型管控,其中基于所分派的管理责任来创作策略或策略的部分。使用标准方法来数字地签署和加密策略对象使其能够安全分发。[4]SecPAL允许高效且安全的求值。对输入的简单的句法检查足以确保求值将会终止并产生正确的答案。
[5]SecPAL可提供用于支持所要求的策略、授权决策、审计和用于身份管理的公钥基础架构(PKI)的访问控制要求的完整解决方案。相反,大多数其他方法仅能关注和解决这些安全问题范围内的一个子集。[6]SecPAL出于多个目的可以具有充分的表达力,这些目的包括但不限于:处理网格环境和其他类型的分布式系统的安全问题。以维护语言语义和求值性质同时允许适应特定系统的需求的方式来启用可扩展性。
图5是示出用于一般安全方案的示例断言格式500的框图。在本文其他部分描述的实现中使用的安全方案断言可以不同于示例断言格式500。然而,断言格式500是安全方案断言的一个示例格式的基本图示,且它提供理解一般安全方案的各个方面的所述示例实现的基础。
如在断言格式500的最上行所示,概况层的示例断言包括:主体(principal)部分502、说(say)部分504以及主张(claim)部分506。文字上,概括层的断言格式500可被表示为:主体说主张。
在断言格式500的下一行,主张部分506被分成示例组成部分。因此,示例主张部分506包括:事实(fact)部分508,如果(if)部分510,“n”个条件事实1...n部分508(1...n)以及c部分512。下标“n”表示某一整数值。如图例524所示,c部分512表示约束部分。尽管仅示出单个约束,但c部分512实际上可表示多个约束(例如,c1,...,cm)。如果部分510右侧的条件事实部分508(1...n)和约束512(1...m)的集合可被称为前提。
文字上,主张部分506可表示为:事实如果事实1,...事实n,c。因此,整个断言格式500在文字上可如下表示:主体说如果事实1,...事实n,c,则事实。然而,断言可被简化为:主体说事实。在断言的这一缩写的三部分形式中,略去了以如果部分510开始并延及c部分512的条件部分。
每一事实部分508还可被细分成其各个组成部分。示例组成部分有:e部分514和动词短语部分516。如图例524所示,e部分514表示表达式部分。文字上,事实部分508可表示为:e动词短语。
每一e即表达式部分514可采用两个示例选择之一。这两个示例表达式选择是:常量514(c)和变量514(v)。主体可归入常量514(c)和/或变量514(v)。
每一动词短语部分516也可采用三个示例选择之一。这三个示例动词短语选择是:谓词部分518继之以一个或多个e1...n部分514(1...n)、能够断言(can assert)部分520继之以事实部分508、以及别名部分522继之以表达式部分514。文字上,这三个动词短语选择分别可被表示为:谓词e1...en、能够断言事实、以及别名e。整数“n”可对事实508(1...n)和表达式514(1...n)取不同的值。
一般,SecPAL语句是安全主体作出的断言形式的。安全主体一般由密钥标识,以使其可跨系统边界认证。在其最简单的形式中,断言陈述,主体相信事实是有效的(例如,如由包括事实部分508的主张506所表示)。他们也陈述,如果一个或多个其他事实有效且满足某组条件,则一事实有效(例如,如由从事实部分508延及如果部分510以及条件事实部分508(1...n)到c部分512的主张506所表示)。也可能存在没有任何约束512的条件事实508(1...n)和/或没有任何条件事实508(1...n)的约束512。
在所述实现中,事实是关于主体的陈述。在本节中此处描述了四种示例类型的事实陈述。首先,事实可陈述,主体具有用“动作动词”对资源行使动作的权利。示例动作动词包括但不限于:调用、发送、读取、列表、执行、写入、修改、追加、删除、安装、拥有等。资源可由统一资源指示符(URI)或任何其他方法标识。
其次,事实可使用“拥有”动词来表达主体标识符与一个或多个属性之间的绑定。示例属性包括但不限于:电子邮件名、通用名、组名、角色头衔、帐户名、域名服务器/服务(DNS)名、网际协议(IP)地址、设备名、应用程序名、组织名、服务名、帐户标识/标识符(ID)等。第三种示例类型的事实是可使用“别名”动词定义两个主体标识符来表示同一主体。
“限定词”或事实限定词可作为以上三种事实类型的任一种的一部分而被包括。限定词使得断言者能指示如果认为事实有效则它相信应成立的环境参数(例如,时间、主体位置等)。这样的陈述可基于这些限定词的值在断言者和依赖方的有效性检查之间清楚地分开。
第四种示例类型的事实由“能够断言”动词定义。这种“能够断言”动词提供用于表达信任关系和委托的灵活且强大的机制。例如,它允许一个主体(A)陈述其相信第二主体(B)断言的某些类型的事实的意愿。例如,给定断言“A说B能够断言事实()”以及“B说事实()”,可得到A相信事实()有效的结论从而可推断“A说事实()”。
这样的信任和委托断言可以是(i)无边界的且是传递的以许可下游委托,或者(ii)有边界的以阻止下游委托。尽管可对“能够断言”类型事实应用限定词,但对这些“能够断言”类型事实省略对限定词的支持可显著地简化给定安全方案的语义和求值安全性质。
在所述实现中,可陈述具体的事实,或可使用变量写出策略表达式。变量是类型化的,且可以是无限制的(例如,允许匹配正确类型的任何具体值)或有限制的(例如,要求基于指定的模式匹配具体值的子集)。
安全授权决策基于针对来自适用的安全策略(例如,安全策略220)和安全令牌(例如,一个或多个安全令牌204)的断言集合(例如,断言上下文)的授权查询的求值算法(例如,可在授权引擎218处进行的那些算法)。授权查询是组合事实和/或条件的逻辑表达式,其可能会变得相当复杂。这些逻辑表达式例如包括对事实的与、或和/或非逻辑运算,带有或不带有伴随的条件和/或约束。
该对授权查询的方法提供用于定义在对给定动作授权之前什么是必须已知且有效的灵活机制。查询模板(例如来自授权查询表224)形成总的安全方案的一部分,且允许对不同类型的访问请求和其他操作/动作声明性地陈述适当的授权查询。
安全授权查询的示例实现
现有的安全策略语言遵循两种方法之一。某些阻止以任何方式在任何时间使用否定。该方法的确减少了可能因否定而引起的伴随的不一致性和不确定性。然而,它由于呈现了众多太难以处理的安全情形且某些安全情形根本无法处理而也有局限性。另一方法对否定的使用没有施加限制。尽管该方法更为灵活,但它呈现了建立难解甚至非确定性的安全策略的可能性。
相比,所述实现创建了具有多层的安全方案。在一分支安全方案实现中,例如有两层。第一层禁止使用否定。这可例如使用对句法的确认来实施。第二层允许使用否定。该分支安全方案将确保安全断言易处理且可确定的安全性和确定性与处理排他安全规则的灵活性组合在一起。
图6是示出具有第一层和第二层的示例分支安全方案600的框图。如图所示,第一层包括断言层602,第二层包括查询层604。断言层602包括多个断言606和句法确认器614。查询层604包括具有多个部分的示例授权查询616。这多个部分的示例包括但不限于:所断言的事实608以及逻辑运算符610和612。
在所述实现中,断言层602以断言606填充。断言606可以是断言层处任何类型的声明性安全陈述。断言606的示例包括但不限于:令牌断言和策略断言。(这两个断言类型在图7中分开且明确地示出。)在安全断言606内不允许否定。句法确认器614分析每一断言606以检查是否存在否定。如果在给定断言606内存在否定,则拒绝或不允许给定断言606。
查询层604以诸如示例授权查询616等授权查询填充。查询层606的授权查询被允许包括否定,诸如非运算符612。授权查询可按照任何方式结构化。尽管未在图6中明确示出,但授权查询一般可包括一个或多个逻辑约束。
在示例授权查询616中,查询被结构化成布尔逻辑运算。这样的布尔逻辑运算可包括任何数目的所断言的事实608、任何数目的逻辑运算符等。这些所断言的事实、逻辑运算符等可按照任何方式组合。示例逻辑运算符包括但不限于:与、或、非等。如图所示,示例授权查询616包括:三个所断言的事实608、两个与运算符610、一个非运算符612。
所断言的事实608是否为真取决于是否可推断出有效的匹配断言606。当该匹配判断过程完成之后,即对得到的逻辑布尔运算求值。在示例授权查询616的情况中,在应用与运算符610之前,对最右端的所断言的事实608的真/假判定应用非运算符612。如果整个布尔运算求值为真,则授权决策是肯定的。如果布尔运算的总的求值为假,则授权决策是否定的。
断言606和授权查询(例如,示例授权查询616)之间的示例相互关系以下在图7-10的描述中呈现。响应于请求来查明授权查询,该请求可包括一个或多个断言606或以其他方式与这些断言相关联。然后结合包括断言606在内的总的断言上下文对授权查询求值。断言上下文一般包括令牌断言和策略断言。
图7是示出示例授权查询查明和示例授权查询求值的一般框图700。框图700包括来自图2和3的多个安全相关组件。如图所示,它包括授权上下文212、资源保卫214、授权引擎218以及安全策略220。安全策略220包含授权查询表224。授权引擎218包括求值算法708。
在所述实现中,授权上下文212包括断言上下文702。断言上下文702是断言606的集合。具体地,断言上下文702包括令牌断言606T和策略断言606P。令牌断言606T从安全令牌(例如,图2和3的安全令牌204)得到。安全令牌可作为资源访问请求的一部分和/或随之一起传递。策略断言606P从信任和授权策略(例如,安全策略220(图2)的信任和授权策略222模块)得到。
断言上下文702被转发到资源保卫214。向资源保卫214呈现请求704。请求704是访问某一资源的请求。资源保卫214将请求转换成操作。该操作被提供给授权查询表224。授权查询表224将资源专用操作映射到授权查询。在一示例实现中,每一操作与单个授权查询相关联。响应于所提供的操作,安全策略220查明相关联的授权查询706,并将授权查询706返回到资源保卫214。使用授权查询表224查明授权查询706在本文中以下具体参考图8进一步描述。
因此,资源保卫214包括断言上下文702和授权查询706两者。资源保卫214将断言上下文702和授权查询706转发到授权引擎218的求值算法708。求值算法708包括能够结合断言上下文702对授权查询706求值的逻辑。该逻辑可用硬件、软件、固件、其某种组合等实现。
因此,断言上下文702在求值算法708中应用于授权查询706。在逻辑分析之后,求值算法708产生授权决策710。结合断言上下文702对授权查询706求值在本文中以下具体参考图9进一步描述。
一般而言,具有如本文所述的特征的安全语言使得复杂的访问控制准则能以声明性的方式编写起来相对简单且理解起来相对简单。它与展示基于输入策略和经认证的请求者数据推断的有效事实集的任何授权算法兼容。如本文中进一步描述的,它基于结合断言上下文与授权决策算法组合的授权查询的概念。
在所述实现中,一般,授权查询包括所断言的事实集以及约束。所断言的事实是“A说事实”形式的。它们表达可以(例如,从断言上下文)推断匹配的有效断言的要求。如果这一匹配的有效断言已知,则所断言的事实得到满足,且求值为布尔值真;否则,它求值为假。(在某些实现中,事实的断言者可基于求值上下文隐含地已知。在这些情况中,它可被略去。)约束是返回布尔值的表达式。它可包括在所断言的事实以及对环境值(例如,时间、位置等)的引用中使用的变量。约束一般用于表达变量等同性和不等同性。
每一查询中存在至少一个所断言的事实。如果存在多个所断言的事实,则它们可使用诸如与、或和非等逻辑运算符组合。可任选的约束与所断言的事实进行逻辑与。
该方法的结果是基本访问控制策略可按照关于每一主体被授权的访问的肯定陈述来写出,而不顾及较高层的结构要求。因此,在多主体策略中,可编写陈述每一主体对资源应潜在具有何种权限的每一策略。这样的安全策略就添加新策略陈述不会移除任何现有的访问权限而言是单调的。而且,可编写指示主体对资源集具有何种权限的肯定访问策略而不必顾虑潜在的冲突或不一致性。授权查询提供用于组合这些访问控制规则的较高层语义。
例如,如果为对“Foo”准许读访问而要求(i)用户具有电子邮件地址“fabrikam.com”,以及(ii)应用程序具有代码摘要值“ABC”,则访问控制规则可写为如下:
A说如果p拥有r{(电子邮件名,*@fabrikam.com)}则p读Foo
A说如果p拥有r{摘要,ABC}则p读Foo
为确保用户和应用程序均是经认证的请求者,一个示例授权查询为:
A说v1读Foo与A说v1拥有r{(电子邮件名,*)}与A说v2读Foo与A说v2拥有(摘要,*)}
类似地,为要求具有电子邮件地址“fabrikam.com”的两个授权的主体请求访问“Foo”,可写出以下安全策略:
A说如果p拥有r{(电子邮件名,*@fabrikam.com)}则p读Foo,
且它可与以下授权查询组合:
A说p1读Foo与A说p2读Foo与(p1!=p2)。
在以上授权查询中,指示“p1”变量不等于“p2”变量的部分是约束。
拒绝或排除可使用该方法来适当处理。例如,如果给定组A的成员能读访问Foo,且组B的成员能读访问Bar,但不允许同时访问。可用带有如下的两个策略断言的安全策略启用所需访问:
A说如果p拥有r{组,A}则p读Foo
A说如果p拥有r{组,B}则p读Bar。
然后可使用以下授权查询实施排除:
(A说v读Foo或A说v读BAR)与非(A说v读Foo与A说v读BAR)。
以类似方式,可排除同时承担两个角色、同时对给定资源具有多个访问权(例如,读和删除)等。
图8是示出响应于资源访问请求704的示例授权查询查明800的更具体的框图。如图所示,授权查询查明800包括具有所标识的资源802的请求704、转换功能804、操作806、授权查询表224和授权查询706。授权查询查明800涉及接收请求704作为输入,以及产生相关联的授权查询706作为输出。
在所述实现中,请求704是访问某一所标识的资源802的请求。请求704经由转换功能804被转换成资源专用操作806。该转换功能804例如可由资源保卫214(图7)执行。资源专用操作的示例作为示例而非限制包括:(i)对文件读和/或写,(ii)通过通信端口发送数据,(iii)利用处理器,(iv)执行应用程序等。
一般而言,操作806被提供给授权查询表224。例如,安全策略220可负责将操作806应用于授权查询表224并检索相关联的授权查询706。作为结果产生授权查询706,并将其返回给资源保卫214。
更具体地,授权查询表224包括多个字段808。每一字段808将资源专用操作映射到相关联的授权查询模板。如图所示,在授权查询表224中有“f”个字段808(1)、808(2)...808(f),f是某一整数。检索到的授权查询模板被返回给资源保卫214。资源保卫214然后执行代入过程以产生授权查询706。换言之,为创建授权查询706,资源保卫214将实际进行请求的主体、实际所请求的资源等代入相关联授权查询模板的预定的相应槽中。
图9是示出给定断言上下文702*情况下的示例授权查询求值708*的更具体的框图。如以上参考图7概括描述,求值算法708接收授权查询706和断言上下文702。在图9的具体示例授权求值708*中,结合具体示例断言上下文702*对具体示例授权查询706*求值。实际断言上下文702、授权查询706和求值算法708可与这些示例不同。
如图所示,示例授权查询求值708*包括示例断言上下文702*、示例授权查询706*、得到的布尔运算910和答案912。断言上下文702*包括(i)三个令牌断言606T-1、606T-2和606T-3,以及(ii)两个策略断言606P-1和606P-2。示例授权查询706*包括三个所断言的事实608-1、608-2和608-3;两个与运算符610;一个非运算符612;以及一个约束902。
在求值期间,授权引擎218(图7)试图确定是否可对授权查询706*的每一所断言的事实608推断有效的匹配断言606。该匹配判定过程可以是迭代的、递归的、和/或在一个有效断言导致另一可能有效的断言时为分叉的。在某一预定时间段之后,匹配判断过程收敛。
图9的示例授权查询求值708*示出了便于大体理解对授权查询求值的概念基础的简化的求值算法。更具体且技术上准确的说明以下在图9的描述之后呈现。而且,一个示例实现的相对严格的逻辑描述在本文中以下在图10的描述之后呈现。
在示例授权查询求值708*中,授权引擎208确定令牌断言606T-2是有效的且匹配904所断言的事实608-1。还确定策略断言606P-2是有效的且匹配906所断言的事实608-2,令牌断言606T-3是有效的且匹配908所断言的事实608-3。尽管令牌断言606T-1和策略断言606P-1未明确匹配特定的所断言的事实608,但它们可能已在匹配判定过程中使用了。另外,关于约束902作出真/假判断。
在匹配判断过程之后和/或期间,执行真/假替换过程以创建布尔运算910。如果特定的所断言的事实608具有匹配的有效断言606,则用“真”替换特定的所断言的事实608。如果不是,则用“假”替换该特定的所断言的事实608。同样地,用其确定的“真”或“假”状态替换任何约束902。尽管未对授权查询706*明确示出,但约束902与授权查询的其余部分进行逻辑与。
例如,授权查询求值708*、授权查询706*在文字上可如下表示:所断言的事实608-1,与运算符610,所断言的事实608-2,与运算符610,非运算符612,所断言的事实608-3,以及约束902。在替换过程之后,得到的布尔运算在文字上可如下表示:真与真与非真与真。这可缩减成:真与真与假与真,这是逻辑假。
结果,布尔运算910的答案912为“假”。因此,授权决策710是拒绝请求。另一方面,如果例如对所断言的事实608-3没有匹配908断言606,则布尔运算910将被缩减成:真与真与真与真,这是逻辑真。在这种情况中,答案912将为“真”,且授权决策710将是允许请求。尽管未明确示出或描述,但存在布尔运算910将求值为逻辑假的其他排列(例如,如果确定对所断言的事实608-2没有有效且匹配906的断言606)。
此处描述用于对授权查询求值的技术上更为准确的示例实现。首先,一次一个地对授权查询内的所断言的事实求值,而不必在完整的替换过程之前一次对所有事实进行。其次,授权查询内单个所断言的事实的求值返回使该所断言的事实为真的变量代入集。因此,一般而言,所返回的值不是立即为真/假状态,因为事实实际上被表示具有关于给定变量代入的真/假状态。
如果授权查询内的两个所断言的事实之间的连接词为与(如图9的示例中的情况),则左边事实所返回的值(即,该代入集)被应用于右边的事实。之后,按需对右边的事实求值。得到的代入集然后通过代入合成来组合。对整个授权查询求值的结果是代入集,代入集的每一代入能够使授权查询为真。
图10是示出用于查明授权查询并对其求值的方法的示例的流程图1000。流程图1000包括十一(11)个框1002-1022。尽管可在其他环境中以及采用各种硬件/软件/固件组合来执行流程图1000的动作,但使用图1-9的某些特征、组件和方面来示出该方法的示例。例如,资源保卫214、授权查询表224和/或授权引擎218可单独或共同实现流程图1000的动作。
在所述实现中,在框1002,接收访问资源的请求。例如,可接收标识资源802的请求704。在框1004,将请求转换成对资源的操作。例如,资源保卫214可将请求704转换804成资源专用操作806。
在框1006,操作被提供给授权查询表。例如,资源专用操作806可被提供给授权查询表224。在框1008,查明与该操作相关联的授权查询。例如,可定位包括资源专用操作806的字段808。然后可从所定位的字段806检索相关联的授权查询。
更具体地,检索到的授权查询可包括授权查询模板。基于由请求者提供的安全令牌,相关联的授权查询模板通过将实际的主体、资源等代入到授权查询模板的预定相应槽中而被转化成授权查询。在一示例实现中,了解来自请求704的实际变量信息的资源保卫214通过代入执行该转化。
在框1010,在求值算法中组合断言上下文和授权查询。例如,断言上下文702和授权查询706可被共同提交给求值算法708。
在框1012,在匹配判定过程中,断言上下文的有效断言被匹配到授权查询的所断言的事实。例如,在匹配判定过程中,被发现为有效的、可从断言上下文702推断(即,原始存在于其中和/或以其他方式从其得到)的一个或多个令牌断言606T和/或策略断言606P可试图匹配904/906/908到所断言的事实608。还分析授权查询706的任何约束部分902以确定它们是真还是假。如以上在技术描述中所述,可单独和/或顺序分析每一断言。
在框1014,响应于匹配判定过程执行对授权查询的真/假替换。例如,在布尔运算910中,被确定为具有有效匹配断言606的所断言的事实608可用真替换,而未被确定为具有有效匹配断言606的所断言的事实608可用假替换。应理解,框1014的动作可按照与框1012的动作的执行全部或部分重叠的方式执行。
在框1016,对授权查询逻辑求值。例如,可作为求值算法708的一部分对布尔运算910逻辑求值,以确定其答案为真还是假。应理解,布尔运算910的结果无需用真或假状态替换每一所断言的事实608和/或约束902就可被确定,而且确实被确定。
在框1018,确定授权查询逻辑求值是否为“真”。如果是,则框1020处的授权决策是该请求被准许。另一方面,如果确定授权查询逻辑求值为“假”,则框1022处的授权决策是请求被拒绝。应理解,可能具有“真”状态的授权查询的算法求值可返回使授权查询为“真”的一组变量。
也可从相对严格的逻辑观点描述安全授权查询。在安全授权查询的所述逻辑实现中,通过查询包含本地以及导入的断言的断言上下文来决定授权请求。在一示例实现中,授权可包括A说事实形式的原子查询和约束c的集合。这些原子查询和约束由包括否定在内的逻辑连接词组合。示例逻辑连接词包括以下:
q::=e说事实
|q1,q2
|q1或q2
|非(q)
|c
得到的查询语言比其中仅考虑原子查询的其他基于逻辑的语言表达力更强。例如,可通过将原子查询与否定和约束组合来表达责任的分离、阈值和拒绝策略。在语言的断言层不允许否定,因为将否定和递归语言耦合会导致语义的歧义,且通常导致计算更为复杂甚至不可判定。通过将否定的使用限于授权查询层(而非将这些特征添加到断言语言本身),将否定与递归有效地分开,从而绕开了与否定通常相关联的问题。
查询的语义由关系
Figure BSA00000518866200181
限定。以下,令AC为断言上下文。而且,令θ为代入,令ε为空代入。令Dom(θ)为代入θ的域。如果X是句法短语,则令Vars(X)为X中出现的变量集。授权查询的示例形式语义如下:
Figure BSA00000518866200191
说事实        如果eθ说事实θ可从AC推断,
Figure BSA00000518866200192
Figure BSA00000518866200193
        如果
Figure BSA00000518866200194
Figure BSA00000518866200195
Figure BSA00000518866200196
        如果
Figure BSA00000518866200199
           如果不成立且
Figure BSA000005188662001911
               如果
Figure BSA000005188662001913
且c是有效的。
给定查询q和授权上下文AC,授权算法返回代入θ的集合,使得
Figure BSA000005188662001914
如果查询不包含变量(ground),则答案集或者为空(意味着“不”,请求被拒绝)或包含空代入ε的单元素集(意味着“是”,请求被准许)。如果查询包含变量,则答案集中的代入是使查询为真的变量赋值。
关于授权查询表,它们可以是本地安全策略的一部分,且可与命令性代码保持分开。该表通过将参数化的方法名映射到查询而提供对授权查询的接口。在请求时,资源保卫调用由该表映射到授权查询的方法(例如,代替直接发出查询),该查询然后用于查询断言上下文。
例如,授权查询表可包含以下示例映射:
canAuthorizePayment(请求者,支付):
管理员说请求者拥有BankManagerID id,
非(管理员说请求者已启动支付)。
如果Alice试图对支付Payment47授权,则资源保卫调用canAuthorizePayment(Alice,Payment47),这触发以下查询:
管理员说Alice拥有BankManagerID id,
非(管理员说Alice已启动Payment47)。
得到的答案集(例如,或者是请求应被拒绝的情况下的空集,或者是id的变量赋值)被返回给资源保卫,后者然后可实施策略。
也可从相对严格的逻辑观点描述安全授权查询的形式求值。以下描述假定存在另一算法,该算法返回对其从授权上下文AC可推断出“e说事实”形式的给定陈述的代入集。这样的算法例如可依赖于将AC转换成诸如Datalog等另一逻辑语言。对授权查询定义函数AuthAnsAC,如下:
Figure BSA00000518866200201
AuthAnsAC(q1,q2)={θ1θ21∈AuthAnsAC(q1)且θ2∈AuthAnsAC(q2θ1)}AuthAnsAC(q1或q2)=AuthAnsAC(q2)∪AuthAnsAC(q2)
Figure BSA00000518866200202
Figure BSA00000518866200203
Figure BSA00000518866200204
Figure BSA00000518866200205
Figure BSA00000518866200207
以下定理示出AuthAnsAC是用于对安全授权查询求值的算法。该定理表示授权查询求值的有限性、可靠性和完全性:对所有安全断言上下文AC和安全授权查询q,
1.AuthAnsAC(q)被定义且是有限的,且
2.
Figure BSA00000518866200208
当且仅当θ∈AuthAnsAC(q)。
图1-10中的设备、动作、方面、特征、功能、过程、模块、数据结构、协议、组件等都在分为多个框的示意图中得到阐明。然而,描述和/或示出图1-10的次序、互连、相互关系、布局等不旨在被解释为限制,任何数目的这些框可按照任何方式被修改、组合、重新排列、增加、省略等,以实现用于安全授权查询的一个或多个系统、方法、设备、过程、介质、装置、API、协议、安排等。
尽管系统、介质、设备、方法、过程、装置、机制、方案、途径、进程、安排、以及其它实现都用专用于结构、逻辑、算法、以及功能特征和/或示意图的语言加以描述,但是应该理解在所附权利要求中定义的本发明不必限于以上描述的具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (7)

1.一种实现具有第一层和第二层的分支安全方案的设备,其中所述第一层不允许使用否定,所述第二层许可使用否定。
2.如权利要求1所述的设备,其特征在于,所述第一层包括断言层。
3.如权利要求2所述的设备,其特征在于,所述断言层由令牌断言和策略断言来填充。
4.如权利要求2所述的设备,其特征在于,所述分支安全方案包括不允许包含否定的任何断言的句法确认器。
5.如权利要求1所述的设备,其特征在于,所述第二层包括查询层。
6.如权利要求5所述的设备,其特征在于,所述查询层由至少从所断言的事实和逻辑运算符形成的授权查询来填充;其中所述逻辑运算符包括与、或和非;且其中每一授权查询与一资源专用操作相关联。
7.如权利要求1所述的设备,其特征在于,所述第一层包括由断言填充的断言层;所述第二层包括由至少从所断言的事实形成的授权查询填充的查询层;且其中所述分支安全方案通过试图将来自所述断言层的有效断言匹配到特定的授权查询的一个或多个所断言的事实而对所述特定的授权查询求值。
CN2011101621104A 2006-09-08 2007-09-05 安全授权查询 Expired - Fee Related CN102176226B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/530,438 2006-09-08
US11/530,438 US8060931B2 (en) 2006-09-08 2006-09-08 Security authorization queries

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2007800333224A Division CN101512504B (zh) 2006-09-08 2007-09-05 安全授权查询

Publications (2)

Publication Number Publication Date
CN102176226A true CN102176226A (zh) 2011-09-07
CN102176226B CN102176226B (zh) 2013-02-13

Family

ID=39157588

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2011101621104A Expired - Fee Related CN102176226B (zh) 2006-09-08 2007-09-05 安全授权查询
CN2007800333224A Expired - Fee Related CN101512504B (zh) 2006-09-08 2007-09-05 安全授权查询

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN2007800333224A Expired - Fee Related CN101512504B (zh) 2006-09-08 2007-09-05 安全授权查询

Country Status (8)

Country Link
US (2) US8060931B2 (zh)
EP (2) EP2078256B1 (zh)
JP (1) JP5266229B2 (zh)
KR (1) KR101366435B1 (zh)
CN (2) CN102176226B (zh)
CA (2) CA2657400A1 (zh)
IL (1) IL196408A (zh)
WO (1) WO2008030876A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104504317A (zh) * 2014-12-14 2015-04-08 浙江师范大学 一种访问控制系统用户授权查询请求问题的快速求解方法

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1194874A2 (en) * 1999-06-18 2002-04-10 Echarge Corporation Method and apparatus for ordering goods, services and content over an internetwork using a virtual payment account
US7814534B2 (en) 2006-09-08 2010-10-12 Microsoft Corporation Auditing authorization decisions
US20080066169A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Fact Qualifiers in Security Scenarios
US8201215B2 (en) * 2006-09-08 2012-06-12 Microsoft Corporation Controlling the delegation of rights
US20080065899A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Variable Expressions in Security Assertions
US8060931B2 (en) 2006-09-08 2011-11-15 Microsoft Corporation Security authorization queries
US8938783B2 (en) * 2006-09-11 2015-01-20 Microsoft Corporation Security language expressions for logic resolution
US8656503B2 (en) * 2006-09-11 2014-02-18 Microsoft Corporation Security language translations with logic resolution
EP1927930A1 (en) * 2006-11-30 2008-06-04 Sap Ag Method and system for access control using resouce filters
EP1933522B1 (en) * 2006-12-11 2013-10-23 Sap Ag Method and system for authentication
US8296822B2 (en) 2009-07-14 2012-10-23 Microsoft Corporation State-updating authorization
US8898759B2 (en) 2010-08-24 2014-11-25 Verizon Patent And Licensing Inc. Application registration, authorization, and verification
US8839397B2 (en) * 2010-08-24 2014-09-16 Verizon Patent And Licensing Inc. End point context and trust level determination
US20120084244A1 (en) * 2010-09-30 2012-04-05 Microsoft Corporation Claims issuance rule generation pipeline
US8799269B2 (en) 2012-01-03 2014-08-05 International Business Machines Corporation Optimizing map/reduce searches by using synthetic events
US10410213B2 (en) * 2012-05-04 2019-09-10 Institutional Cash Distributors Technology, Llc Encapsulated security tokens for electronic transactions
US11334884B2 (en) * 2012-05-04 2022-05-17 Institutional Cash Distributors Technology, Llc Encapsulated security tokens for electronic transactions
US10423952B2 (en) * 2013-05-06 2019-09-24 Institutional Cash Distributors Technology, Llc Encapsulated security tokens for electronic transactions
US8903813B2 (en) 2012-07-02 2014-12-02 International Business Machines Corporation Context-based electronic document search using a synthetic event
US8898165B2 (en) 2012-07-02 2014-11-25 International Business Machines Corporation Identification of null sets in a context-based electronic document search
US9460200B2 (en) 2012-07-02 2016-10-04 International Business Machines Corporation Activity recommendation based on a context-based electronic files search
US9262499B2 (en) 2012-08-08 2016-02-16 International Business Machines Corporation Context-based graphical database
US8959119B2 (en) 2012-08-27 2015-02-17 International Business Machines Corporation Context-based graph-relational intersect derived database
US9197498B2 (en) * 2012-08-31 2015-11-24 Cisco Technology, Inc. Method for automatically applying access control policies based on device types of networked computing devices
US9619580B2 (en) 2012-09-11 2017-04-11 International Business Machines Corporation Generation of synthetic context objects
US9251237B2 (en) 2012-09-11 2016-02-02 International Business Machines Corporation User-specific synthetic context object matching
US8620958B1 (en) 2012-09-11 2013-12-31 International Business Machines Corporation Dimensionally constrained synthetic context objects database
US9223846B2 (en) 2012-09-18 2015-12-29 International Business Machines Corporation Context-based navigation through a database
US8782777B2 (en) 2012-09-27 2014-07-15 International Business Machines Corporation Use of synthetic context-based objects to secure data stores
US9741138B2 (en) 2012-10-10 2017-08-22 International Business Machines Corporation Node cluster relationships in a graph database
US8931109B2 (en) 2012-11-19 2015-01-06 International Business Machines Corporation Context-based security screening for accessing data
US20140181134A1 (en) * 2012-12-21 2014-06-26 Marcel Hermanns Push-down of authority check within query engine
US8914413B2 (en) 2013-01-02 2014-12-16 International Business Machines Corporation Context-based data gravity wells
US8983981B2 (en) 2013-01-02 2015-03-17 International Business Machines Corporation Conformed dimensional and context-based data gravity wells
US9229932B2 (en) 2013-01-02 2016-01-05 International Business Machines Corporation Conformed dimensional data gravity wells
US8856946B2 (en) 2013-01-31 2014-10-07 International Business Machines Corporation Security filter for context-based data gravity wells
US9053102B2 (en) 2013-01-31 2015-06-09 International Business Machines Corporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US9069752B2 (en) 2013-01-31 2015-06-30 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
US9292506B2 (en) 2013-02-28 2016-03-22 International Business Machines Corporation Dynamic generation of demonstrative aids for a meeting
US10152526B2 (en) 2013-04-11 2018-12-11 International Business Machines Corporation Generation of synthetic context objects using bounded context objects
US9195608B2 (en) 2013-05-17 2015-11-24 International Business Machines Corporation Stored data analysis
US9348794B2 (en) 2013-05-17 2016-05-24 International Business Machines Corporation Population of context-based data gravity wells
US10776244B2 (en) * 2013-07-09 2020-09-15 Oracle International Corporation Consolidation planning services for systems migration
US9996562B2 (en) 2013-07-09 2018-06-12 Oracle International Corporation Automated database migration architecture
US9747311B2 (en) 2013-07-09 2017-08-29 Oracle International Corporation Solution to generate a scriptset for an automated database migration
US9805070B2 (en) 2013-07-09 2017-10-31 Oracle International Corporation Dynamic migration script management
US11157664B2 (en) 2013-07-09 2021-10-26 Oracle International Corporation Database modeling and analysis
WO2016040386A1 (en) * 2014-09-08 2016-03-17 Uri Braun System and method of controllably disclosing sensitive data
FR3027304B1 (fr) * 2014-10-16 2018-02-23 Arkema France Compositions a base de 1,1,1,3,3-pentachloropropane
US11036696B2 (en) 2016-06-07 2021-06-15 Oracle International Corporation Resource allocation for database provisioning
US11636220B2 (en) * 2019-02-01 2023-04-25 Intertrust Technologies Corporation Data management systems and methods
US11256671B2 (en) 2019-09-13 2022-02-22 Oracle International Corporation Integrated transition control center
US11734356B2 (en) * 2020-09-11 2023-08-22 Jpmorgan Chase Bank, N.A. System and method for implementing an open policy agent bridge
CN113609162B (zh) * 2021-07-14 2023-09-26 远景智能国际私人投资有限公司 操作记录的查询方法、装置、服务器及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010018675A1 (en) * 1998-02-17 2001-08-30 Blaze Matthew A. Method and apparatus for compliance checking in a trust-management system
US20030225697A1 (en) * 2002-05-30 2003-12-04 Microsoft Corporation Method, system, and apparatus for providing secure access to a digital work
US20040123154A1 (en) * 2002-07-22 2004-06-24 Alan Lippman System and method for validating security access across network layer and a local file layer
US20050132220A1 (en) * 2003-12-10 2005-06-16 International Business Machines Corporation Fine-grained authorization by authorization table associated with a resource
US20060106856A1 (en) * 2004-11-04 2006-05-18 International Business Machines Corporation Method and system for dynamic transform and load of data from a data source defined by metadata into a data store defined by metadata

Family Cites Families (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868877A (en) 1988-02-12 1989-09-19 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
US5214702A (en) 1988-02-12 1993-05-25 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
US5649099A (en) 1993-06-04 1997-07-15 Xerox Corporation Method for delegating access rights through executable access control program without delegating access rights not in a specification to any intermediary nor comprising server security
US7133846B1 (en) 1995-02-13 2006-11-07 Intertrust Technologies Corp. Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management
US5765153A (en) 1996-01-03 1998-06-09 International Business Machines Corporation Information handling system, method, and article of manufacture including object system authorization and registration
US6216231B1 (en) 1996-04-30 2001-04-10 At & T Corp. Specifying security protocols and policy constraints in distributed systems
JPH1115663A (ja) * 1997-06-20 1999-01-22 Fuji Xerox Co Ltd 証明図表示装置
US6151624A (en) * 1998-02-03 2000-11-21 Realnames Corporation Navigating network resources based on metadata
US6484261B1 (en) 1998-02-17 2002-11-19 Cisco Technology, Inc. Graphical network security policy management
US6189103B1 (en) 1998-07-21 2001-02-13 Novell, Inc. Authority delegation with secure operating system queues
US6367009B1 (en) 1998-12-17 2002-04-02 International Business Machines Corporation Extending SSL to a multi-tier environment using delegation of authentication and authority
CA2296989C (en) 1999-01-29 2005-10-25 Lucent Technologies Inc. A method and apparatus for managing a firewall
JP2000235497A (ja) 1999-02-15 2000-08-29 Nippon Telegr & Teleph Corp <Ntt> ポリシマクロ方法及びポリシマクロプログラムを格納した記憶媒体
EP1159812A1 (en) 1999-03-15 2001-12-05 Texar Software Corp. Computer security system
US7127605B1 (en) 1999-05-10 2006-10-24 Axalto, Inc. Secure sharing of application methods on a microcontroller
US7260715B1 (en) 1999-12-09 2007-08-21 Koninklijke Philips Electronics N.V. Method and apparatus for revocation list management
JP3546787B2 (ja) * 1999-12-16 2004-07-28 インターナショナル・ビジネス・マシーンズ・コーポレーション アクセス制御システム、アクセス制御方法、及び記憶媒体
US6779120B1 (en) 2000-01-07 2004-08-17 Securify, Inc. Declarative language for specifying a security policy
US7246370B2 (en) 2000-01-07 2007-07-17 Security, Inc. PDstudio design system and method
US7313692B2 (en) 2000-05-19 2007-12-25 Intertrust Technologies Corp. Trust management systems and methods
GB2368929B (en) 2000-10-06 2004-12-01 Andrew Mather An improved system for storing and retrieving data
JP2002163235A (ja) 2000-11-28 2002-06-07 Mitsubishi Electric Corp アクセス権限譲渡装置、共有リソース管理システム及びアクセス権限設定方法
US7363339B2 (en) 2000-12-22 2008-04-22 Oracle International Corporation Determining group membership
CN101369299B (zh) 2001-01-17 2010-06-09 康坦夹德控股股份有限公司 管理数字内容使用权利的方法和装置
US6895503B2 (en) 2001-05-31 2005-05-17 Contentguard Holdings, Inc. Method and apparatus for hierarchical assignment of rights to documents and documents having such rights
US6976009B2 (en) 2001-05-31 2005-12-13 Contentguard Holdings, Inc. Method and apparatus for assigning consequential rights to documents and documents having such rights
US7426635B1 (en) 2001-06-28 2008-09-16 Entrust Technologies Limited Bulk certificate lifetime allocation systems, components and methods
EP1303097A3 (en) 2001-10-16 2005-11-30 Microsoft Corporation Virtual distributed security system
US7472342B2 (en) 2001-10-24 2008-12-30 Bea Systems, Inc. System and method for portal page layout
US7155720B2 (en) 2001-10-26 2006-12-26 Hewlett-Packard Development Company, L.P. Dynamic task assignment in workflows
JP2003140890A (ja) 2001-10-31 2003-05-16 Asgent Inc 電子機器設定情報作成方法及び装置並びにセキュリティポリシー作成方法及び関連装置
US7844610B2 (en) 2003-12-12 2010-11-30 Google Inc. Delegated authority evaluation system
US7596692B2 (en) 2002-06-05 2009-09-29 Microsoft Corporation Cryptographic audit
WO2003107589A1 (en) 2002-06-17 2003-12-24 Koninklijke Philips Electronics N.V. Method for authentication between devices
AU2003253667A1 (en) 2002-06-18 2003-12-31 Arizona Board Of Regents, Acting For Arizona State University Assignment and management of authentication and authorization
US6931530B2 (en) 2002-07-22 2005-08-16 Vormetric, Inc. Secure network file access controller implementing access control and auditing
US7512782B2 (en) 2002-08-15 2009-03-31 Microsoft Corporation Method and system for using a web service license
US7770212B2 (en) 2002-08-15 2010-08-03 Activcard System and method for privilege delegation and control
ATE387825T1 (de) 2002-09-30 2008-03-15 Nokia Siemens Networks Gmbh Überprüfen der einbuchungsberechtigung durch eine zugangs-berechtigungsmarke
US7376840B2 (en) 2002-09-30 2008-05-20 Lucent Technologies, Inc. Streamlined service subscription in distributed architectures
US20040068757A1 (en) 2002-10-08 2004-04-08 Heredia Edwin Arturo Digital signatures for digital television applications
US20060101521A1 (en) 2002-10-17 2006-05-11 Shlomo Rabinovitch System and method for secure usage right management of digital products
US7451217B2 (en) 2002-12-19 2008-11-11 International Business Machines Corporation Method and system for peer-to-peer authorization
JP2004206187A (ja) 2002-12-24 2004-07-22 Hitachi Ltd コミュニティ管理システム
US20040128546A1 (en) 2002-12-31 2004-07-01 International Business Machines Corporation Method and system for attribute exchange in a heterogeneous federated environment
US7219154B2 (en) 2002-12-31 2007-05-15 International Business Machines Corporation Method and system for consolidated sign-off in a heterogeneous federated environment
US7249373B2 (en) 2003-01-15 2007-07-24 Microsoft Corporation Uniformly representing and transferring security assertion and security response information
US7703128B2 (en) 2003-02-13 2010-04-20 Microsoft Corporation Digital identity management
US7290138B2 (en) 2003-02-19 2007-10-30 Microsoft Corporation Credentials and digitally signed objects
US7543140B2 (en) 2003-02-26 2009-06-02 Microsoft Corporation Revocation of a certificate and exclusion of other principals in a digital rights management (DRM) system based on a revocation list from a delegated revocation authority
AR043588A1 (es) 2003-03-12 2005-08-03 Nationwide Mutual Insurance Co Metodo para implementar un programa de administracion de riesgos
US8281374B2 (en) 2005-09-14 2012-10-02 Oracle International Corporation Attested identities
US7644275B2 (en) 2003-04-15 2010-01-05 Microsoft Corporation Pass-thru for client authentication
FR2854294B1 (fr) 2003-04-22 2005-07-01 France Telecom Procede de signature electronique avec mecanisme de delegation, equipements et programmes pour la mise en oeuvre du procede
US20040221174A1 (en) * 2003-04-29 2004-11-04 Eric Le Saint Uniform modular framework for a host computer system
US20050108176A1 (en) 2003-04-30 2005-05-19 Jarol Scott B. Configurable rules based content item consumption
WO2004107130A2 (en) 2003-05-28 2004-12-09 Caymas Systems, Inc. Multilayer access control security system
US7512785B2 (en) 2003-07-18 2009-03-31 Intel Corporation Revocation distribution
US20050033811A1 (en) 2003-08-07 2005-02-10 International Business Machines Corporation Collaborative email
US20050066198A1 (en) 2003-09-02 2005-03-24 Gelme Andrew A. Controlling cooperation between objects in a distributed software environment
US7389273B2 (en) 2003-09-25 2008-06-17 Scott Andrew Irwin System and method for federated rights management
WO2005033892A2 (en) 2003-10-03 2005-04-14 Sony Electronics, Inc. Rendering rights delegation system and method
US7340447B2 (en) 2003-10-09 2008-03-04 Oracle International Corporation Partitioning data access requests
US7930757B2 (en) * 2003-10-31 2011-04-19 Adobe Systems Incorporated Offline access in a document control system
KR20050042694A (ko) 2003-11-04 2005-05-10 한국전자통신연구원 보안토큰을 이용한 전자거래방법 및 그 시스템
US7664828B2 (en) 2004-02-20 2010-02-16 Microsoft Corporation Invalid policy detection
US7496649B2 (en) 2004-02-20 2009-02-24 Microsoft Corporation Policy application across multiple nodes
JP4750020B2 (ja) 2004-03-30 2011-08-17 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ認証のためのシステム、方法、およびプログラムならびに該プログラムを記録した記録媒体
JP2005309780A (ja) 2004-04-21 2005-11-04 Ntt Docomo Inc Icカード及び権限委譲制御方法
JP2005332049A (ja) * 2004-05-18 2005-12-02 Nippon Telegr & Teleph Corp <Ntt> ポリシ変換方法、ポリシ移行方法およびポリシ評価方法
US20060005010A1 (en) 2004-06-16 2006-01-05 Henrik Olsen Identification and authentication system and method for a secure data exchange
US20060005227A1 (en) 2004-07-01 2006-01-05 Microsoft Corporation Languages for expressing security policies
US7533265B2 (en) 2004-07-14 2009-05-12 Microsoft Corporation Establishment of security context
US20060048216A1 (en) 2004-07-21 2006-03-02 International Business Machines Corporation Method and system for enabling federated user lifecycle management
US7669226B2 (en) 2004-07-30 2010-02-23 International Business Machines Corporation Generic declarative authorization scheme for Java
US7299171B2 (en) 2004-08-17 2007-11-20 Contentguard Holdings, Inc. Method and system for processing grammar-based legality expressions
US7506364B2 (en) 2004-10-01 2009-03-17 Microsoft Corporation Integrated access authorization
WO2006045402A1 (en) 2004-10-26 2006-05-04 Telecom Italia S.P.A. Method and system for transparently authenticating a mobile user to access web services
WO2006068731A2 (en) 2004-11-12 2006-06-29 Haley Systems, Inc. A system for enterprise knowledge management and automation
US20090126022A1 (en) 2004-11-25 2009-05-14 Nec Corporation Method and System for Generating Data for Security Assessment
KR20060063348A (ko) 2004-12-07 2006-06-12 한국전자통신연구원 인터넷에서 인증 assertion을 이용한 접속시간제어 방법
EP1829332A2 (en) 2004-12-15 2007-09-05 Exostar Corporation Enabling trust in a federated collaboration of networks
US7562382B2 (en) 2004-12-16 2009-07-14 International Business Machines Corporation Specializing support for a federation relationship
US20060156391A1 (en) 2005-01-11 2006-07-13 Joseph Salowey Method and apparatus providing policy-based revocation of network security credentials
JP2006221506A (ja) 2005-02-14 2006-08-24 Hitachi Software Eng Co Ltd ユーザパスワード認証システムにおける権限委譲方法
US7500097B2 (en) 2005-02-28 2009-03-03 Microsoft Corporation Extendable data-driven system and method for issuing certificates
US20060225055A1 (en) 2005-03-03 2006-10-05 Contentguard Holdings, Inc. Method, system, and device for indexing and processing of expressions
US20060200664A1 (en) 2005-03-07 2006-09-07 Dave Whitehead System and method for securing information accessible using a plurality of software applications
US7509489B2 (en) 2005-03-11 2009-03-24 Microsoft Corporation Format-agnostic system and method for issuing certificates
US7770206B2 (en) 2005-03-11 2010-08-03 Microsoft Corporation Delegating right to access resource or the like in access management system
US7774830B2 (en) 2005-03-14 2010-08-10 Microsoft Corporation Access control policy engine controlling access to resource based on any of multiple received types of security tokens
US7631346B2 (en) 2005-04-01 2009-12-08 International Business Machines Corporation Method and system for a runtime user account creation operation within a single-sign-on process in a federated computing environment
US7584499B2 (en) 2005-04-08 2009-09-01 Microsoft Corporation Policy algebra and compatibility model
US7702746B2 (en) * 2005-04-21 2010-04-20 International Business Machines Corporation Web services response templates
US7657746B2 (en) 2005-04-22 2010-02-02 Microsoft Corporation Supporting statements for credential based access control
US8245051B2 (en) 2005-05-13 2012-08-14 Microsoft Corporation Extensible account authentication system
US7614082B2 (en) 2005-06-29 2009-11-03 Research In Motion Limited System and method for privilege management and revocation
US20070043607A1 (en) 2005-08-22 2007-02-22 Raytheon Company Method to incorporate user feedback into planning with explanation
US8056114B2 (en) * 2005-08-23 2011-11-08 The Boeing Company Implementing access control policies across dissimilar access control platforms
US7788499B2 (en) 2005-12-19 2010-08-31 Microsoft Corporation Security tokens including displayable claims
US7757280B2 (en) 2006-01-17 2010-07-13 International Business Machines Corporation Method and system for memory protection and security using credentials
US7882539B2 (en) 2006-06-02 2011-02-01 Microsoft Corporation Abstracting security policy from, and transforming to, native representations of access check mechanisms
US8024770B2 (en) 2006-06-21 2011-09-20 Microsoft Corporation Techniques for managing security contexts
US8060931B2 (en) 2006-09-08 2011-11-15 Microsoft Corporation Security authorization queries
US7814534B2 (en) 2006-09-08 2010-10-12 Microsoft Corporation Auditing authorization decisions
US8201215B2 (en) 2006-09-08 2012-06-12 Microsoft Corporation Controlling the delegation of rights
US20080066158A1 (en) 2006-09-08 2008-03-13 Microsoft Corporation Authorization Decisions with Principal Attributes
US20080066169A1 (en) 2006-09-08 2008-03-13 Microsoft Corporation Fact Qualifiers in Security Scenarios
US8938783B2 (en) 2006-09-11 2015-01-20 Microsoft Corporation Security language expressions for logic resolution

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010018675A1 (en) * 1998-02-17 2001-08-30 Blaze Matthew A. Method and apparatus for compliance checking in a trust-management system
US20030225697A1 (en) * 2002-05-30 2003-12-04 Microsoft Corporation Method, system, and apparatus for providing secure access to a digital work
US20040123154A1 (en) * 2002-07-22 2004-06-24 Alan Lippman System and method for validating security access across network layer and a local file layer
US20050132220A1 (en) * 2003-12-10 2005-06-16 International Business Machines Corporation Fine-grained authorization by authorization table associated with a resource
US20060106856A1 (en) * 2004-11-04 2006-05-18 International Business Machines Corporation Method and system for dynamic transform and load of data from a data source defined by metadata into a data store defined by metadata

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104504317A (zh) * 2014-12-14 2015-04-08 浙江师范大学 一种访问控制系统用户授权查询请求问题的快速求解方法
CN104504317B (zh) * 2014-12-14 2017-08-04 浙江师范大学 一种访问控制系统用户授权查询请求问题的快速求解方法

Also Published As

Publication number Publication date
CN102176226B (zh) 2013-02-13
CA2859932A1 (en) 2008-03-13
US20080066175A1 (en) 2008-03-13
KR101366435B1 (ko) 2014-02-21
EP2733638A1 (en) 2014-05-21
KR20090048489A (ko) 2009-05-13
EP2078256A1 (en) 2009-07-15
JP2010503123A (ja) 2010-01-28
CA2657400A1 (en) 2008-03-13
WO2008030876A1 (en) 2008-03-13
EP2078256A4 (en) 2011-03-02
IL196408A (en) 2014-06-30
US20120017263A1 (en) 2012-01-19
CN101512504A (zh) 2009-08-19
CN101512504B (zh) 2011-08-03
JP5266229B2 (ja) 2013-08-21
EP2078256B1 (en) 2015-01-07
US8584230B2 (en) 2013-11-12
IL196408A0 (en) 2009-09-22
US8060931B2 (en) 2011-11-15

Similar Documents

Publication Publication Date Title
CN101512504B (zh) 安全授权查询
CN101512505B (zh) 采用逻辑消解的安全语言转换
KR101354848B1 (ko) 권리의 위임 제어를 위한 방법, 장치, 및 시스템
US7774830B2 (en) Access control policy engine controlling access to resource based on any of multiple received types of security tokens
US7299171B2 (en) Method and system for processing grammar-based legality expressions
US7184985B2 (en) Method, system, and apparatus for providing secure access to a digital work
US20110030038A1 (en) Auditing Authorization Decisions
US8095969B2 (en) Security assertion revocation
US20080066169A1 (en) Fact Qualifiers in Security Scenarios
Francined Herrera-Cubides et al. Security aspects in web of data based on trust principles. A brief of literature review
US20080065899A1 (en) Variable Expressions in Security Assertions
Alam et al. Modeling and enforcing advanced access control policies in healthcare systems with SECTET
Hernandez et al. TIKD: A Trusted Integrated Knowledge Dataspace for Sensitive Data Sharing and Collaboration
RU2792790C1 (ru) Устройство мандатного доступа к электронным информационным ресурсам
Simpson et al. Digital Key Management for Access Control of Electronic Records.
Web Giles Hogben
Le et al. Enabling Collaborative Data Authorization Between Enterprise Clouds
Erickson Fair Use, Drm, and Trusted Computing How can DRM architectures protect historical copyright limitations like fair use while ensuring the security and property interests of copyright owners?

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150506

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150506

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130213

Termination date: 20150905

EXPY Termination of patent right or utility model