CN101461177A - 从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示 - Google Patents

从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示 Download PDF

Info

Publication number
CN101461177A
CN101461177A CNA2007800202317A CN200780020231A CN101461177A CN 101461177 A CN101461177 A CN 101461177A CN A2007800202317 A CNA2007800202317 A CN A2007800202317A CN 200780020231 A CN200780020231 A CN 200780020231A CN 101461177 A CN101461177 A CN 101461177A
Authority
CN
China
Prior art keywords
control policy
access control
described access
computer
checking mechanism
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
CNA2007800202317A
Other languages
English (en)
Other versions
CN101461177B (zh
Inventor
M·帕拉玛斯万姆
C·F·罗斯三世
D·M·麦克弗森
R·P·佩鲁玛
S·纳特
P·J·里奇
R·N·潘德雅
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.)
Ivalley Holding Co Ltd
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 CN101461177A publication Critical patent/CN101461177A/zh
Application granted granted Critical
Publication of CN101461177B publication Critical patent/CN101461177B/zh
Active 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

从访问检查机制中抽象访问控制策略允许比访问检查机制所准许的更丰富的使用具有语义的声明性模型的策略表达。此外,抽象访问控制策略允许跨多个访问检查机制的统一的策略表达。提供了关于诸如谁访问什么资源等任何访问查询的、独立于提供访问的访问检查机制从策略语句本身来构建的证据类原因。对访问进行审计并基于访问控制策略提供了关于访问的基于策略的原因。

Description

从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示
背景
安全策略配置通常是“单向”的;一旦配置了意图,则从已被配置的意图中查询和测量意图即使不是不可能也是极其困难的。一般地,可被表达的通常不符合需要被表达的。在意图与详细配置紧密地耦合在一起时,对意图的改变是极其困难的。另外,传统访问检查机制已经没用但仍然存在,因为通常所配置的策略不能被容易地迁移。为分析该系统,所有访问必须被忠实地审计并被仔细地与包含在所配置的安全策略中的意图相协调,因而要求大量人工。结果,用户面对以下问题:
1.无法集中地定义可在跨管理域分布的多个文件服务器上实施的访问控制策略
2.无法集中地定义用于多个应用程序的、独立于每一应用程序中的授权评估机制的访问控制策略
3.没有统一的方法来集中地定义用于跨管理域分布的资源的审计数据集合策略
4.无法标识违背所定义的访问控制策略的访问
5.无法自动地检查所定义的访问控制策略和授权评估机制行为之间的一致性
6.无法跨应用程序和策略存储分组资源以应用共同授权策略
7.没有用于支持对于资源的权限和指定授权策略的委托的商业友好的用户体验(UX)。
8.没有容易的机制来向其他主体或机制委托个人许可来在主体之间以紧密限制的方式共享管理性负担
问题的根源是没有与访问检查机制本机的意图分开地显式保存策略意图。策略用一个目的来配置:供访问检查机制用来指示访问是否应被授予。考虑到这一点,策略表示则偏向于优化访问检查的性能,这无疑是重要的。但所付出的代价是极其难于发觉所配置的事物的意义。即使在同质环境中,如具有相同的或类似的访问控制列表(ACL)配置的多个不同的共享,系统地辨别相同的策略被应用于所有这些共享并且因而重新捕获策略后的意图也是不容易且通常是不可能的。异质环境使该问题恶化。在策略深深陷入访问检查实现的本机表示中时,很少有机会从在本机控制机制中被配置的事物中提取抽象策略。由于策略意图本身不是独立地持久保持和管理的,所以不可能表达比底层访问检查机制所允许的更丰富的任何事物。这意味着最终在意图和本机策略配置格式中的该意图的实现之间存在很大的差异。
因此,所需的是解决现有技术的缺点的过程和系统。
概述
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
考虑到以上所标识的本领域的缺点,提供了从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示。对于若干实施例,用于实现计算机资源访问控制策略的方法包括从访问检查机制中抽象访问控制策略。访问检查机制具有可能比访问控制策略更受限的本机策略表达能力。同样,用于实现计算机资源访问安全策略的系统包括用于审计资源访问的装置,和提供特定的经审计的访问为何被允许的原因(根据访问控制策略)的装置。所提供的原因是独立于具有比访问控制策略更受限的策略表达能力的访问检查机制而从该访问控制策略本身构建的。
以下是本发明的其它优点和特征的描述。
附图
参考附图进一步描述了从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示,附图中:
图1是表示适用于从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示的示例性计算设备的框图;
图2示出其中可以实现执行从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示的多个计算机化过程的示例性网络化计算环境;
图3是示出使用示例安全策略计算许可表示的框图;
图4是示出使用启用委托的附加示例安全策略计算许可表示的框图;
图5是示出将所得示例许可注入访问检查机制的表示的框图;
图6是示出提供从示例访问和审计事件所得的证据的框图;以及
图7是示出实现从访问检查机制的示例性本机表示中抽象安全策略以及将其变换到该表示的示例系统的框图。
详细描述
在以下描述和附图中描述了某些具体细节,以提供对本发明的各个实施例的全面理解.通常与计算和软件技术相关联的某些公知细节将不在以下公开中描述,以避免不必要地使本发明的各实施例晦涩难懂。此外,相关领域的普通技术人员可以理解,他们可以无需以下描述的细节中的一个或多个而实现本发明的其它实施例。最后,尽管在以下公开中参考了步骤和序列来描述各个方法,但是如此的描述是为了提供本发明的实施例的清楚实现,且步骤以及步骤序列不应被认为是实现本发明所必需的。
示例计算环境
参考图1,示出了表示适用于实现上述过程的示例性计算设备的框图。例如,实现用于从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示的过程和方法的计算机可执行指令可以驻留在如图1中所示的这样一个计算环境中和/或在该计算环境中执行。计算系统环境220只是合适计算环境的一个示例,而非意在暗示对本发明使用范围或功能有任何限制。也不应该把计算环境220解释为对示例性操作环境220中示出的任一组件或其组合有任何依赖性或要求。例如,计算机游戏控制台也可包括诸如以下描述的用于实现上述过程的那些项目。
本发明的各方面可用于众多其它通用或专用计算系统环境或配置。适合在本发明中使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型机、大型计算机、包含上述系统或设备中的任一个的分布式计算机环境等。
本发明的各方面可在诸如程序模块等由计算机执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本发明的各方面也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于包括存储器存储设备在内的本地和远程计算机存储介质中。
用于实现本发明各方面的示例性系统包括计算机241形式的通用计算设备。计算机241的组件可以包括,但不限于,处理单元259、系统存储器222和将包括系统存储器在内的各种系统组件耦合至处理单元259的系统总线221。系统总线221可以是几种类型的总线结构中的任何一种,包括存储器总线或存储控制器、外围总线、以及使用各种总线体系结构中的任一种的局部总线。作为示例,而非限制,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线、也称为夹层(Mezzanine)总线的外围部件互连(PCI)总线及其后继标准—PCI Express标准。
计算机241通常包括各种计算机可读介质。计算机可读介质可以是能由计算机241访问的任何可用介质,而且包含易失性、非易失性介质以及可移动和不可移动介质。作为示例而非局限,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机241访问的任何其它介质。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并包括任何信息传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非限制,通信介质包括有线介质,诸如有线网络或直接线连接,以及无线介质,诸如声学、RF、红外线和其它无线介质。上述中任一组合也应包括在计算机可读介质的范围之内。
系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)223和随机存取存储器(RAM)260。基本输入/输出系统224(BIOS)包含有助于诸如启动时在计算机241中的元件之间传递信息的基本例程,它通常被存储在ROM 223中。RAM 260通常包含处理单元259可以立即访问和/或目前正在其上操作的数据和/或程序模块。作为示例而非局限,图1示出了操作系统225、应用程序226、其它程序模块227和程序数据228。
计算机241也可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图1示出了对不可移动、非易失性磁介质进行读写的硬盘驱动器238,对可移动、非易失性磁盘254进行读写的磁盘驱动器239,以及对诸如CD ROM或其它光学介质等可移动、非易失性光盘253进行读写的光盘驱动器240。可以在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器238通常由诸如接口234等不可移动存储器接口连接至系统总线221,磁盘驱动器239和光盘驱动器240通常由诸如接口235等可移动存储器接口连接至系统总线221。
以上描述和在图1中示出的驱动器及其相关联的计算机存储介质为计算机241提供对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图1中,示出硬盘驱动器238储存操作系统258、应用程序257、其它程序模块256和程序数据255。注意,这些组件可以与操作系统225、应用程序226、其它程序模块227和程序数据228相同,也可以与它们不同。操作系统258、应用程序257、其它程序模块256和程序数据255在这里被标注了不同的标号是为了说明至少它们是不同的副本。用户可以通过输入设备,诸如键盘251和定点设备252(通常指鼠标、跟踪球或触摸垫)向计算机241输入命令和信息。其它输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常由耦合至系统总线的用户输入接口236连接至处理单元259,但也可以由其它接口或总线结构,诸如并行端口、游戏端口或通用串行总线(USB)连接。监视器242或其它类型的显示设备也经由诸如非安全或安全视频接口232等接口连接至系统总线221。示例性安全视频接口标准是高清晰度多媒体接口(HDMI)标准。除监视器以外,计算机也可以包括诸如扬声器244和打印机243等其它外围输出设备,其可以通过输出外围接口233连接。
计算机241可使用至一个或多个远程计算机,如远程计算机246的逻辑连接在网络化环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见网络节点,且通常包括上文相对于计算机241描述的许多或所有元件,尽管在图1中只示出存储器存储设备247。图1中所示逻辑连接包括局域网(LAN)245和广域网(WAN)249,但也可以包括其它网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机241通过网络接口或适配器237连接至LAN 245。当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN 249建立通信的其它装置。调制解调器250可以是内置或外置的,它可以通过用户输入接口236或其它适当的机制连接至系统总线221。在网络化环境中,相对于计算机241所描述的程序模块或其部分可被储存在远程存储器存储设备中。作为示例而非局限,图1示出了远程应用程序248驻留在存储器设备247上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其它手段。
应该理解,此处描述的各种技术可以结合硬件或软件,或在适当时以两者的组合来实现。因此,本发明的方法和装置,或其某些方面或部分,可以采用包含在诸如软盘、CD-ROM、硬盘驱动器或任何其它机器可读存储介质等有形介质中的程序代码(即,指令)的形式,其中,当程序代码被加载至诸如计算机等机器并由其执行时,该机器成为用于实施本发明的装置。在程序代码在可编程计算机上执行的情况下,计算设备通常包括处理器、该处理器可读的存储介质(包括易失性和非易失性的存储器和/或存储元件)、至少一个输入设备、以及至少一个输出设备。一个或多个程序可以例如,通过使用API、可重用控件等实现或利用结合本发明描述的过程。这样的程序优选地用高级过程语言或面向对象编程语言来实现,以与计算机系统通信。然而,如果需要,程序可以用汇编语言或机器语言来实现。在任何情形中,语言可以是编译的或解释的语言,且与硬件实现相结合。
尽管示例性实施例可涉及在一个或多个独立计算机系统的上下文中利用本发明的各方面,但本发明不受此限制,而是可以结合任何计算环境,诸如网络或分布式计算环境来实现。而且,本发明的各方面可以在多个处理芯片或设备中实现或跨多个处理芯片或设备实现,且存储可以类似地跨多个设备来实现。这样的设备可以包括,个人计算机、网络服务器、手持式设备、超级计算机或集成在诸如汽车和飞机等其它系统中的计算机。
考虑到可以根据图1中提供的通用架构构建的各种计算环境,此处提供的系统和方法不能被解释为以任何方式限于某一特定的计算体系结构。相反,本发明不应限于任何单个实施例,而是应该根据所附权利要求书的广度和范围来解释。
接着参考图2,示出了其中可实现执行上述过程的计算机化过程的示例性网络化计算环境。例如,并行计算可以是这样的网络化环境的一部分,图2的网络上的各个客户机使用和/或实现从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示。本领域的普通技术人员可以理解,网络可以连接任何计算机或其它客户机或服务器设备,或处于分布式计算环境中。就此,含有任何数量的处理、存储器或存储单元,以及同时发生的任何数量的应用程序和进程的任何计算机系统或环境被认为适用于本发明所提供的系统和方法。
分布式计算通过计算设备和系统之间的交换提供了计算机资源和服务的共享。这些资源和服务包括信息的交换、文件的高速缓存存储和磁盘存储。分布式计算利用网络连接,允许客户机利用它们的集体力量来使整个企业受益。就此,各种设备可以含有其中蕴含此处所描述各进程的应用程序、对象或资源。
图2提供了示例性的网络化或分布式计算环境的示意图。该环境包括计算设备271、272、276和277,以及对象273、274和275,还有数据库278。这些实体271、272、273、274、275、276、277和278中的每一个可以包括或使用程序、方法、数据存储、可编程逻辑等。实体271、272、273、274、275、276、277和278可以横跨诸如PDA、音频/视频设备、MP3播放器、个人计算机等的相同或不同设备的各部分。每一实体271、272、273、274、275、276、277和278可以经由通信网络270与另一实体271、272、273、274、275、276、277和278通信。就此,任何实体可以负责维护和更新数据库278或其它存储元件。
网络270本身可以包括向图2的系统提供服务的其它计算实体,且其本身可以表示多个互连的网络。根据本发明的一方面,每一实体271、272、273、274、275、276、277和278可以包括可使用API或其它对象、软件、固件和/或硬件来请求其它实体271、272、273、274、275、276、277和278中的一个或多个的服务的离散的功能性程序模块。
也可以理解,诸如275等对象可以主存于另一计算设备276上。因此,尽管所示的物理环境可以将所连接的设备示为计算机,但是这样的图示仅是示例性的,并且该物理环境可以被替换地描述或描绘成含有诸如PDA、电视机、MP3播放器等的各种数字设备,以及诸如接口、COM对象等软件对象。
存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可以由有线或无线系统、本地网络或广泛分布的网络连接在一起。目前,许多网络被耦合至因特网,后者从而为广泛分布的计算提供基础架构并涵盖多个不同的网络。无论是否被耦合至因特网,任何这样的基础架构都可以用于本发明所提供的系统和方法。
网络基础架构可以允许诸如客户机/服务器、对等或混合体系结构等各种网络拓扑结构。“客户机”是使用与它无关的另一类或组的服务的一个类或组中的成员。在计算中,客户机是进程,即大致上是请求由另一程序提供的服务的一组指令或任务。客户机进程利用所请求的服务,而不必“知道”有关其它程序或服务本身的任何工作细节。在客户机/服务器体系结构中,尤其在网络化系统中,客户机通常是访问由例如服务器等另一计算机提供的共享的网络资源的计算机。在图2的示例中,取决于情境,任何实体271、272、273、274、275、276、277和278可以被认为是客户机、服务器或两者。
服务器通常,但不必须是可通过诸如因特网等远程或本地网络访问的远程计算机系统。客户机进程可以在第一计算机系统中活动,而服务器进程可以在第二计算机系统中活动,它们通过通信介质彼此通信,从而提供分布式功能并允许多个客户机利用服务器的信息收集能力。任何软件对象可以跨多个计算设备或对象分布。
客户机和服务器利用由协议层提供的功能来彼此通信。例如,超文本传输协议(HTTP)是结合万维网(WWW),即“Web”使用的常见协议。通常,诸如网际协议(IP)地址或诸如统一资源定位器(URL)等其它引用的计算机网络地址可以用于彼此标识服务器或客户计算机。网络地址可以被称为URL地址。可以通过通信介质来提供通信,例如客户机和服务器可以通过TCP/IP连接来彼此耦合以进行大容量通信。
考虑到可以根据图2中提供的通用架构构建的各种计算环境,以及在诸如图2的网络环境中的计算中可能发生的进一步变化,此处提供的系统和方法不能被解释为以任何方式限于某一特定的计算体系结构或操作系统。相反,本发明不应限于任何单个实施例,而是应该根据所附权利要求书的广度和范围来解释。
抽象和访问检查机制
从软件开发进行类推,随着包含在高级语言中的抽象的出现,软件管理变得(相对地)更加简单。甚至想象单独用像汇编等贴近硬件的语言来开发大规模软件项目都是困难的。大部分当代程序是不太考虑底层执行环境来编写的,并依赖编译器来保存语义。诸如编译器优化等低级代码的各种变换可以使得取回原始高级意图变得不可能。如此,程序的意义存在于独立于其执行环境的模型中。人们可以查询并理解程序所需要的许多方面(当然不是以图灵机完全(Turing-complete)语言所编写的程序中的所有方面,)而不必实际地运行它。
安全策略保证类似的处理。当前,安全策略表示机制大部分是独立的数据片断,并且其可表达性都是特别的。即使简单的逻辑模型、语言或抽象都很难管理意图。安全策略不需要编程语言的表达能力;只需要足够的允许策略语句复合的语义。主要目标是策略的意义应当独立于访问检查机制可分辨。就此看来,此处所描述的安全策略管理证明对于安全策略和访问检查机制之间的独立性是有用的。为此,使用允许表达访问控制中的普遍的各种形式的语句和断言的语言并提供用该语言中的表达进行推论的能力,即,执行查询、逻辑计算和导出证据。
该语言是表达性策略模型或策略语言,独立于访问检查机制且是足够丰富以捕获意义。注意,具有以下性质的任何语言都可能是合适的。
可表达性:
a.指定将主体映射到资源和将主体映射到属性或特性,包括特性值的断言的能力
b.指定谁做出这些断言的能力
c.指定在正在做出其它(或类似)断言的其它主体上判定的断言的能力。其范围可以从非常具体到非常概括。
d.使用这些可表达性原语构造更高级的策略构造的能力。即,原语并非是过度限制其可表达性范围。
声明性语义和单调性:
a.组成和组合断言并导出同一组结果而不管其被处理的顺序是可能的。
b.用从策略语句构造的“证据”来证明结果是可能的。
c.添加新的断言或规则而不从现有断言中推出相互抵触的结论是可能的。可以准许撤销规则。
计算易处理性:
a.以高效的方式计算声明性断言的结果是可能的。
b.分析和查询审计线索是高效的。
标识后端访问检查机制(或该后端的某个所需子集)的原语。即,由现有访问检查机制使用来作出允许访问的决定的数据。这些原语的示例是角色定义和角色分配(授权管理器(AzMan)和ASP.NET);权限管理许可证(RMS、IPP);ACL(文件共享、防火墙等)。
这些原语随后在策略语言中被表征为判定(predicate)。例如,ACL中的访问控制条目(ACE)可以对应于判定“chuckr can read foo.txt(chuckr可以阅读foo.txt)”。对于AzMan应用程序,另一示例可以是“chuckr is in the roledeveloper(chuckr的角色是开发者)”。取决于不同的访问检查机制,可以有许多这样的原语。这些原语被称为许可。
随后计算所得的声明性策略的许可。取决于适用性的范围,出于效率的目的,可以使用试探方法来标识需要考虑的策略的子集以供计算结果许可,但本发明并未谈到这点。假定每次该策略被无效时都重新创建许可。所得许可被用来配置适当的本机访问检查机制。访问检查在做出访问请求时使用这些配置。
在进行访问时创建审计事件,且这些与在策略模型抽象中所表示的策略相协调,从而得到策略驱动的审计信息。另外,可在该策略上独立于访问检查机制做出查询以充分理解该策略允许什么访问以及为何允许这些访问。
示例场景
以下示例示出意图与实现的分离以及在低级访问检查机制中配置该意图的意义。
以下示例描述在具有非常有限的表达性能力的系统上对自由支配访问控制系统的建模。具体地,访问检查机制可以表示的唯一的信息是特定主体可以在特定资源上执行什么动作。注意,出于该示例的目的,假定其甚至缺少记录谁是所有者的能力。以上特性的语句被认为是由系统所发出的。系统本身可以用密钥来标识或建模。
接着参考图3,所示是显示使用下面的示例安全策略计算许可表示的框图。
斜体的语句是不能在访问控制系统中表达的,但可在该策略模型中表示的语句。这些语句反映策略301背后的意图。非斜体的语句是可在访问控制系统中表达的,且是该实现可以处理的语句。这些是“许可”303。
目标是从策略语句(即,斜体语句301)中推断出可在访问控制系统中表达什么(即,非斜体语句303)。
以下策略规则301捕获上述行为:
如果系统说主体“O”是资源“Z”的所有者
并且如果主体“O”说主体“X”可以对资源“Z”进行动作“Y”
则,系统说主体“X”可以对资源“Z”进行动作“Y”
假定已知以下信息305:
系统说Peter是foo.txt的所有者
Peter说Ravi可以读取foo.txt
Peter说John可以打印foo.txt
从上面看出,逻辑地推断出307以下许可303是可能的:
系统说Ravi可以读取foo.txt
系统说John可以打印foo.txt
另外,所有者可以将其所有或部分能力委托给其选择的任何人。接着参考图4,所示是显示使用关于委托的附加示例安全策略计算许可表示的框图。策略301的以下语句401表示,在该示例中,Peter将其提供对foo.txt的读许可的能力委托给Bob。
如果Bob说主体“X”可以读取foo.txt
则,Peter说主体“X”可以读取foo.txt
假定已知以下附加信息405:
Bob说Tom可以读取foo.txt
逻辑地推断出307以下结果是可能的:
Peter说Tom可以读取foo.txt
并随后逻辑地推断出307以下许可403:
系统说Tom可以读取foo.txt
接着参考图5,所示是将所得示例许可注入到访问检查机制的表示中的框图。被注入501到访问检查机制的表示503中以实现安全策略301的是这些非斜体的语句403、303(即,许可)。
接着参考图6,示出提供从示例访问和审计事件所得的证据的框图。假定Tom确实读取了foo.txt601,且创建了对应的审计事件603。使用策略语句301计算了Tom被允许读取foo.txt的完整的原因605。
即,提供了从策略语句301本身构建的以下证据605。
Tom可以读取foo.txt是因为:
系统说Tom可以读取foo.txt是因为:
系统说Peter是foo.txt的所有者
并且Peter说Tom可以读取foo.txt是因为:
Bob说Tom可以读取foo.txt。
以上答案完全独立于本机访问检查机制503中的配置。其是何事为什么发生的真实的策略审计线索并是从策略语句301本身系统地计算的。当然可以用诸如时间戳、做出语句的位置等各类额外信息来扩充这些审计线索和策略语句。
接着参考图7,所示是实现从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示的示例系统的框图。注意,图7示出一个可能的表现,且提供相同或类似结果的其它表现也是可能的并已被构想。
通过合适的策略驱动的用户界面703向用户展示支持委托的基于角色的访问控制(RBAC)机制701。配置策略的用户只查看其被允许查看或配置的策略的那些方面。一旦这一策略被配置后,则在作为系统中心的核心策略模型705中捕获其意义。
核心策略模型705被用于以下目的:
·用作所有策略的共同表示以支持可能已通过不同的视图配置的策略的统一查询。
·驱动用户体验和用户视图(例如,管理员将其特权委托给助手的结果是将导致该助手的用户体验改变为反映其新的管理性特权)。
·允许以适于访问检查机制(例如,ACL和AzMan角色)707的格式计算许可表示。
·用所展示的审计模型711的策略来合理化表现为审计事件709的访问以确定该策略是如何接纳该访问的。
具有大部分以上特征的系统有效地向例如AzMan角色和ACL添加细粒度委托能力而不改变任何低级访问检查机制713。
总之,从访问检查机制中抽象访问控制策略允许比访问检查机制所准许的更丰富的策略表达(使用具有语义的声明性模型或命令性(impertitive)模型)。关于诸如谁访问什么资源等任何访问查询的证据类原因是独立于提供访问的访问检查机制从策略语句本身来构建的。“如果—怎么办(what-if)”能力查询策略以理解改变该策略的影响而不用实际地改变访问检查配置。许可被跨多个访问检查机制地配置,作为从单组策略语句计算逻辑结果的结果。对访问进行审计并向访问提供基于策略的原因,且标识与策略不一致的访问尝试。这可以帮助解决策略过度宽松的问题,在此情况下,审计可以帮助发现策略中的漏洞。其还创建允许调查者(公司的和官方的两者)确定谁将其访问用于恶意目的的法庭线索。
此处所述的各种系统、方法和技术可使用硬件或软件或两者的适当组合来实现。由此,本发明的方法和装置或其特定方面或部分可采取包含在诸如软盘、CD-ROM、硬盘驱动器或任何其它机器可读存储介质等有形介质中的程序代码(即,指令)的形式,其中当程序代码被加载到诸如计算机等机器内并由其执行时,该机器成为用于实现本发明的装置。在程序代码在可编程计算机上执行的情形中,计算机一般包括处理器、该处理器可读的存储介质(包括易失性和非易失性的存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。一个或多个程序优选地以高级过程或面向对象编程语言实现以与计算机系统通信。然而,如果需要,程序可以用汇编语言或机器语言来实现。在任何情形中,语言可以是编译的或解释的语言,且与硬件实现相结合。
本发明的方法和装置也可以具体化为通过某种传输介质,比如通过电线或电缆、光纤或任何其它形式的传输来传输的程序代码的形式,其中,当程序代码由诸如EPROM、门阵列、可编程逻辑器件(PLD)、客户计算机、录像机等机器接收、加载并执行时,该机器成为用于实现本发明的装置。当在通用处理器上实现时,该程序代码与处理器相结合以提供一种用于执行本发明的索引功能的独特装置。
尽管已结合各个附图的优选实施方式对本发明进行了描述,但是可以理解,可以使用其它类似的实施方式或可以对所描述的实施方式进行修改或添加以实现本发明的相同功能而不背离本发明。此外,应当强调,此处可构想包括手持式设备操作系统以及其它专用硬件/软件接口系统的各种计算机平台,尤其当无线联网设备的数量持续增长时。因此,本发明不应局限于任何单一实施方式,而应根据所附权利要求书的广度和范围来解释。
最后,此处所描述的各公开实施例可适用于在其它处理器体系结构、基于计算机的系统、或系统虚拟化中使用,且在此所做的公开明确地预期了这些实施例,并且因此,本发明不应限于此处所描述的具体实施例而应被更广泛地解释。

Claims (20)

1.一种用于实现计算机资源访问控制策略的方法,包括:
从访问检查机制中抽象访问控制策略,所述访问检查机制具有与所述访问控制策略相等的或更受限的策略表达能力。
2.如权利要求1所述的方法,其特征在于,还包括:
从访问控制策略语句计算逻辑结果;以及
基于所计算的逻辑结果,跨至少一个访问检查机制来配置许可。
3.如权利要求2所述的方法,其特征在于,所述许可被跨多个访问检查机制配置。
4.如权利要求3所述的方法,其特征在于,还包括:
接收关于对资源的访问的查询;
提供所述查询的结果以及根据所述访问控制策略为何提供所述特定结果的原因,所述原因是独立于所述访问检查机制而从所述访问控制策略本身构建的。
5.如权利要求4所述的方法,其特征在于,还包括:
查询所述访问控制策略以确定改变所述访问控制策略的影响;以及
提供详述所述改变所述访问控制策略的影响的信息而不改变所述访问检查配置。
6.如权利要求5所述的方法,其特征在于,还包括:
审计资源访问;以及
提供根据所述访问控制策略为何允许特定的经审计的访问的原因,所述原因是独立于所述访问检查机制而从所述访问控制策略本身构建的。
7.一种其上具有用于执行如权利要求1所述的步骤的指令的计算机可读介质。
8.一种其上具有用于执行如权利要求2所述的步骤的指令的计算机可读介质。
9.一种其上具有用于执行如权利要求3所述的步骤的指令的计算机可读介质。
10.一种其上具有用于执行如权利要求4所述的步骤的指令的计算机可读介质。
11.一种其上具有用于执行如权利要求5所述的步骤的指令的计算机可读介质。
12.一种其上具有用于执行如权利要求6所述的步骤的指令的计算机可读介质。
13.一种用于实现计算机资源访问控制策略的系统,包括:
用于从访问检查机制中抽象访问控制策略的装置,所述访问检查机制具有与所述访问控制策略相等的或更受限的策略表达能力。
14.如权利要求13所述的系统,其特征在于,还包括:
用于从访问控制策略语句计算逻辑结果的装置;以及
用于基于所计算的逻辑结果跨至少一个访问检查机制来配置许可的装置。
15.如权利要求14所述的系统,其特征在于,所述许可被跨多个访问检查机制配置。
16.如权利要求15所述的系统,其特征在于,还包括:
用于接收关于对资源的访问的查询的装置;
用于提供所述查询的结果以及根据所述访问控制策略为何提供所述特定结果的原因的装置,所述原因是独立于所述访问检查机制而从所述访问控制策略本身构建的。
17.如权利要求16所述的系统,其特征在于,还包括:
用于查询所述访问控制策略以确定改变所述访问控制策略的影响的装置;以及
用于提供详述所述改变所述访问控制策略的影响的信息而不改变所述访问检查配置的装置。
18.如权利要求5所述的系统,其特征在于,还包括:
用于审计资源访问的装置;以及
用于提供根据所述访问控制策略为何允许特定的经审计的访问的原因的装置,所述原因是独立于所述访问检查机制而从所述访问控制策略本身构建的。
19.一种用于实现计算机资源访问安全策略的系统,包括:
用于审计资源访问的装置;以及
用于提供原因根据所述访问控制策略为何允许特定的经审计的访问的原因的装置,所述原因是独立于具有比所述访问控制策略更受限的策略表达能力的访问检查机制而从所述访问控制策略本身构建的。
20.如权利要求19所述的系统,其特征在于,还包括:
用于独立于所述访问检查机制,基于所述访问控制策略本身来标识与所述访问安全策略不一致的资源访问尝试的装置。
CN2007800202317A 2006-06-02 2007-05-31 从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示 Active CN101461177B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/445,778 2006-06-02
US11/445,778 US7882539B2 (en) 2006-06-02 2006-06-02 Abstracting security policy from, and transforming to, native representations of access check mechanisms
PCT/US2007/012877 WO2008018944A2 (en) 2006-06-02 2007-05-31 Abstracting security policy from, and transforming to, native representations of access check mechanisms

Publications (2)

Publication Number Publication Date
CN101461177A true CN101461177A (zh) 2009-06-17
CN101461177B CN101461177B (zh) 2013-02-13

Family

ID=38791934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800202317A Active CN101461177B (zh) 2006-06-02 2007-05-31 从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示

Country Status (9)

Country Link
US (1) US7882539B2 (zh)
EP (1) EP2025092B1 (zh)
JP (1) JP5097200B2 (zh)
KR (1) KR101354850B1 (zh)
CN (1) CN101461177B (zh)
BR (1) BRPI0712605A2 (zh)
MX (1) MX2008015222A (zh)
RU (1) RU2447497C2 (zh)
WO (1) WO2008018944A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110192195A (zh) * 2017-01-25 2019-08-30 微软技术许可有限责任公司 通过任何数据通道的安全数据访问

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060218394A1 (en) * 2005-03-28 2006-09-28 Yang Dung C Organizational role-based controlled access management system
US20080066169A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Fact Qualifiers in Security Scenarios
US20080065899A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Variable Expressions in Security Assertions
US20080066158A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Authorization Decisions with Principal Attributes
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
US8095969B2 (en) * 2006-09-08 2012-01-10 Microsoft Corporation Security assertion revocation
US8060931B2 (en) 2006-09-08 2011-11-15 Microsoft Corporation Security authorization queries
US20080066147A1 (en) * 2006-09-11 2008-03-13 Microsoft Corporation Composable Security Policies
US8656503B2 (en) * 2006-09-11 2014-02-18 Microsoft Corporation Security language translations with logic resolution
US8938783B2 (en) * 2006-09-11 2015-01-20 Microsoft Corporation Security language expressions for logic resolution
US8544105B2 (en) * 2007-12-24 2013-09-24 Qualcomm Incorporated Method and apparatus for managing policies for time-based licenses on mobile devices
US20120246738A1 (en) * 2011-03-21 2012-09-27 Microsoft Corporation Resource Sharing and Isolation in Role Based Access
US9756022B2 (en) 2014-08-29 2017-09-05 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US8819820B2 (en) 2012-11-19 2014-08-26 International Business Machines Corporation Security capability reference model for goal-based gap analysis
US10574442B2 (en) 2014-08-29 2020-02-25 Box, Inc. Enhanced remote key management for an enterprise in a cloud-based environment
US9531757B2 (en) * 2015-01-20 2016-12-27 Cisco Technology, Inc. Management of security policies across multiple security products
US9401933B1 (en) 2015-01-20 2016-07-26 Cisco Technology, Inc. Classification of security policies across multiple security products
US9906520B2 (en) 2015-12-02 2018-02-27 International Business Machines Corporation Multi-user authentication
US10944793B2 (en) * 2017-06-29 2021-03-09 Juniper Networks, Inc. Rules-based network security policy modification
US11271969B2 (en) * 2017-09-28 2022-03-08 Oracle International Corporation Rest-based declarative policy management
KR102319102B1 (ko) * 2018-12-18 2021-10-29 동명대학교산학협력단 Ict기반 설비데이터 수집 장치
US11599683B2 (en) 2019-11-18 2023-03-07 Microstrategy Incorporated Enforcing authorization policies for computing devices

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566328A (en) * 1995-01-23 1996-10-15 Tandem Computers Incorporated Reconstructing directory pathnames from file handles in a computer system
US5913218A (en) * 1995-11-06 1999-06-15 Sun Microsystems, Inc System and method for retrieving and updating configuration parameter values for application programs in a computer network
US7821926B2 (en) * 1997-03-10 2010-10-26 Sonicwall, Inc. Generalized policy server
GB2329044B (en) * 1997-09-05 2002-10-09 Ibm Data retrieval system
US6463470B1 (en) 1998-10-26 2002-10-08 Cisco Technology, Inc. Method and apparatus of storing policies for policy-based management of quality of service treatments of network data traffic flows
US6427123B1 (en) * 1999-02-18 2002-07-30 Oracle Corporation Hierarchical indexing for accessing hierarchically organized information in a relational system
GB9912494D0 (en) * 1999-05-28 1999-07-28 Hewlett Packard Co Configuring computer systems
WO2001041039A2 (en) 1999-12-02 2001-06-07 Secure Computing Corporation Security management system in an heterogenous network environment
US6915435B1 (en) * 2000-02-09 2005-07-05 Sun Microsystems, Inc. Method and system for managing information retention
JP3992427B2 (ja) * 2000-08-01 2007-10-17 株式会社日立製作所 ファイルシステム
JP3899795B2 (ja) * 2000-09-21 2007-03-28 日本電気株式会社 ファイル管理システムおよび方法
US7216125B2 (en) * 2002-09-17 2007-05-08 International Business Machines Corporation Methods and apparatus for pre-filtered access control in computing systems
US20040148272A1 (en) * 2003-01-29 2004-07-29 Raman Balan Sethu Logical pathname as a reference mechanism for data
JP4320195B2 (ja) * 2003-03-19 2009-08-26 株式会社日立製作所 ファイルストレージサービスシステム、ファイル管理装置、ファイル管理方法、id指定型nasサーバ、および、ファイル読出方法
US7284010B2 (en) * 2003-10-23 2007-10-16 Microsoft Corporation System and method for storing and retrieving a field of a user defined type outside of a database store in which the type is defined
US7849320B2 (en) * 2003-11-25 2010-12-07 Hewlett-Packard Development Company, L.P. Method and system for establishing a consistent password policy
JP2005332049A (ja) * 2004-05-18 2005-12-02 Nippon Telegr & Teleph Corp <Ntt> ポリシ変換方法、ポリシ移行方法およびポリシ評価方法
JP4341517B2 (ja) * 2004-06-21 2009-10-07 日本電気株式会社 セキュリティポリシー管理システム、セキュリティポリシー管理方法およびプログラム
US20060161444A1 (en) * 2005-01-18 2006-07-20 Microsoft Corporation Methods for standards management
RU50325U1 (ru) * 2005-06-17 2005-12-27 Закрытое Акционерное Общество "Интервэйл" Система осуществления многофакторной строгой аутентификации держателя банковской карты с использованием мобильного телефона в среде мобильной связи при осуществлении межбанковских финансовых транзакций в международной платежной системе, по протоколу спецификации 3-d secure
US8972449B2 (en) * 2005-12-29 2015-03-03 Nextlabs, Inc. Preventing conflicts of interests between two or more groups
US7305374B2 (en) * 2006-01-26 2007-12-04 International Business Machines Corporation Method, system and program product for automated testing of changes to externalized rules

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110192195A (zh) * 2017-01-25 2019-08-30 微软技术许可有限责任公司 通过任何数据通道的安全数据访问
CN110192195B (zh) * 2017-01-25 2023-10-24 微软技术许可有限责任公司 用于安全数据访问的系统、方法和计算机存储介质

Also Published As

Publication number Publication date
RU2008147369A (ru) 2010-06-10
WO2008018944A2 (en) 2008-02-14
JP5097200B2 (ja) 2012-12-12
KR20090018616A (ko) 2009-02-20
KR101354850B1 (ko) 2014-01-22
MX2008015222A (es) 2008-12-12
BRPI0712605A2 (pt) 2012-08-14
RU2447497C2 (ru) 2012-04-10
EP2025092A2 (en) 2009-02-18
US20070283411A1 (en) 2007-12-06
EP2025092B1 (en) 2018-01-31
JP2009540397A (ja) 2009-11-19
CN101461177B (zh) 2013-02-13
US7882539B2 (en) 2011-02-01
EP2025092A4 (en) 2012-04-04
WO2008018944A3 (en) 2008-05-02

Similar Documents

Publication Publication Date Title
CN101461177B (zh) 从访问检查机制的本机表示中抽象安全策略以及将其变换到该表示
Riesco et al. Cybersecurity threat intelligence knowledge exchange based on blockchain: Proposal of a new incentive model based on blockchain and Smart contracts to foster the cyber threat and risk intelligence exchange of information
JP5805677B2 (ja) サービスとしての情報に関連するセマンティックスの更新および適応性のあるインタフェース
Yang et al. Cloud computing in e-Science: research challenges and opportunities
US9805172B2 (en) System and methods of resource usage using an interoperable management framework
Worley et al. Opportunities, challenges, and future extensions for smart-contract design patterns
Mishra et al. Blockchain DrivenAccess control architecture for the internet of things
US11146403B2 (en) Self-governed secure attestation policy for server data privacy logs
Basile et al. Blockchain based resource governance for decentralized web environments
Sedrati et al. IoT-Gov: an IoT governance framework using the blockchain
Fornara et al. Operational semantics of an extension of ODRL able to express obligations
Nugent et al. An on-chain method for automatic entitlement management using blockchain smart contracts
Padget et al. Policy-carrying data: A step towards transparent data sharing
Bodei et al. Checking global usage of resources handled with local policies
Liu Trust-based access control for collaborative system
Vandenbroucke et al. Architectures and Standards for Spatial Data Infrastructures and Digital Government
Lamparter et al. Semi-automated management of web service contracts
Marfia et al. Modeling and enforcing semantic obligations for access control
CN101223549A (zh) 根据多个许可证的聚集来操作的数字应用程序
Jaimunk Privacy-preserving Architecture for Cloud-IoT Platform
Veloudis et al. A generic framework for representing context-aware security policies in the cloud
Jingya Data centered Usage based Protection in a SMACIT context
Bonura et al. Increasing Trust for Data Spaces with Federated Learning
TUB et al. D5. 1 TRUSTWORTHY DATA LAKES FEDERATION FIRST RELEASE REPORT
Teixeira The coexistence between Blockchain and GDPR

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: 20150428

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

Effective date of registration: 20150428

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

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

Effective date of registration: 20160628

Address after: Grand Cayman, Georgetown, Cayman Islands

Patentee after: IValley Holding Co., Ltd.

Address before: Washington State

Patentee before: Micro soft technique license Co., Ltd