CN101652767A - 基于模型的访问控制 - Google Patents

基于模型的访问控制 Download PDF

Info

Publication number
CN101652767A
CN101652767A CN200880010688A CN200880010688A CN101652767A CN 101652767 A CN101652767 A CN 101652767A CN 200880010688 A CN200880010688 A CN 200880010688A CN 200880010688 A CN200880010688 A CN 200880010688A CN 101652767 A CN101652767 A CN 101652767A
Authority
CN
China
Prior art keywords
model
abstract
user
resource
permission
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.)
Pending
Application number
CN200880010688A
Other languages
English (en)
Inventor
B·兰普森
R·N·潘德雅
P·J·里奇
M·帕拉玛斯万姆
C·M·埃利森
C·W·考夫曼
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 CN101652767A publication Critical patent/CN101652767A/zh
Pending legal-status Critical Current

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/604Tools and structures for managing or administering access control systems
    • 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

Abstract

访问控制在其涉及策略或许可时基于所创建的模型来提供。抽象出安全策略并且该安全策略可独立于用于保护资源的机制。创建潜在用户、用户角色和/或资源的抽象模型而不将特定个人和/或资源与模型相关联。这些抽象用户模型和抽象资源模型可跨应用程序或在不同的应用程序中使用。可选择性地对模型应用抽象出的安全策略。特定用户和/或资源可以与一个或多个抽象用户模型或抽象资源模型相关联。可嵌套这些模型以便为较大的系统提供配置。

Description

基于模型的访问控制
背景
计算机和计算机系统在多个环境(例如,企业、个人等等)中得到广泛利用。一般向执行对于计算机和/或计算机系统的功能(例如,创建、修改、存储、删除、数据输入等)的个人提供访问权限,该访问权限允许这个人执行各种功能或使用各种应用程序但不允许执行其他功能和/或利用其他应用程序。例如,可给予主管修改员工记录和查看员工工资包的访问权,而可能不向下属给予对这些类型的信息的访问权。
管理员和计算机系统的其他用户可利用基础结构来实现并管理各种访问权限。这需要为多个资源和多个人配置访问许可。配置不同的计算机、设置和其他信息不仅耗时而且需要管理员记住每一个设置。另外,管理员应向类似的各个人(例如,执行相同的工作功能的个人)提供相似但不相同的访问权限。在对每一个人的访问权限作出改变时,这些访问权限的原始意图可能由于在创建和/或修改访问权限时发生的错误,或由于尤其在最初不知道如何操纵设置时为了创建所需访问权限设置而作出的多个不正确的改变而丢失。由此,执行类似功能的用户可能具有不同的访问权限,这可能导致问题,尤其是在用户可访问他们不应访问的东西的情况下。
由此,当今的访问管理涉及配置资源管理程序专用的低级设置并且具有与策略作者的“意图”的极少的相似之处。一旦配置完成,这些设置就难以维护并且难以与策略意图协调。此外,当将对许多域重复应用同一策略时,需要重复作出低级配置。这管理起来很昂贵,而且提供极少的相对于意图来查询和理解所配置的策略的形式的支持。
概述
以下呈现了简化概述以提供对所公开的各实施例的某些方面的基本理解。该概述并不是广泛的纵览,且既非旨在标识诸实施例的关键或重要元素,也非旨在描绘此类实施例的范围。其唯一目的是以简化的形式给出所描述实施例的一些概念,作为后面给出的更加详细的描述的序言。
根据一个或多个实施例及其相应的公开内容,结合基于模型的访问控制和许可权限描述了各方面。创建抽象用户角色模型和/或抽象资源模型,这些模型可以是模块化的并且可跨许多不同的应用程序来利用。抽象出的安全策略可以与每一个用户角色模型相关联,以使得这一模型及相关联的访问权限对于特定角色或功能统一。特定个人或不止一个人可以与每一个用户角色模型相关联并且授予这些人的许可能够基于授予该用户角色模型的许可。
为实现上述和相关目的,一个或多个实施例包括以下全面描述且在权利要求书中特别指出的特征。以下描述和附图详细地阐明了某些说明性方面,且仅指示了可采用本发明的原理的各种方式中的几种。当结合附图考虑时,将从以下详细描述中清楚其它优点和新颖特征,并且所公开的实施例旨在包括所有这些方面及其等效方面。
附图简述
图1示出了提供基于模型的访问控制的系统。
图2示出了能够方便基于模型的访问控制的系统。
图3示出了用于系统子集的模型的视图。
图4示出了向多个用户分配访问权限的示例性手动管理。
图5示出了可以与所公开的各实施例一起利用的示例性系统。
图6示出了可以与所公开的各实施例一起利用的另一系统。
图7示出了所公开的各实施例的可扩展特性。
图8示出了用于家庭个人计算机或域的简化的模板。
图9示出了用于提供模块化的基于模型的访问控制的方法。
图10示出了可用于执行所公开的各实施例的计算机的框图。
图11示出了可用于执行所公开的实施例的示例性计算环境的示意性框图。
详细描述
各实施例现在参考各附图来描述。在以下描述中,为解释起见,阐明了众多具体细节以提供对一个或多个方面的全面理解。然而,显然,各实施例能够在无需这些具体细节的情况下实施。在其它情况中,以框图形式示出公知的结构和设备以便于描述这些实施例。
如在本申请中所使用的,术语“组件”、“模块”和“系统”等旨在表示计算机相关的实体,它可以是硬件、硬件和软件的组合、软件、或者执行中的软件。例如,组件可以是,但不限于是,在处理器上运行的进程、处理器、对象、可执行码、执行的线程、程序和/或计算机。作为说明,运行在服务器上的应用程序和服务器都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程中,并且组件可以位于一个计算机内和/或分布在两个或更多的计算机之间。
在本文中使用的词语“示例性”意味着用作示例、实例或说明。在此被描述为“示例性”的任何方面或设计并不一定要被解释为相比其它方面或设计更优选或有利。
此外,一个或多个实施例可以使用产生用于控制计算机实现所公开的各实施例的软件、固件、硬件或其任意组合的标准编程和/或工程技术实现为的方法、装置或制品。此处所用的术语“制品”(或作为替换,“计算机程序产品”)旨在涵盖可从任何计算机可读设备、载体或介质访问的计算机程序。例如,计算机可读介质可包括但不限于,磁存储设备(例如,硬盘、软盘、磁带……)、光盘(例如,紧致盘(CD)、数字多功能盘(DVD)……)、智能卡、以及闪存设备(例如,卡、棒)。另外应该明白,可以采用载波来承载计算机可读电子数据,例如那些用于发送和接收电子邮件或用于访问如因特网或局域网(LAN)等网络的数据。当然,本领域的技术人员将会认识到,在不背离所公开的实施例的范围的前提下可以对这一配置进行许多修改。
各实施例将按照可包括多个组件、模块等的系统来呈现。可以理解和明白,各种系统可包括其他组件、模块等和/或可不包括结合各附图讨论的所有组件、模块等。也可使用这些方法的组合。此处所公开的各实施例可以在电子设备上执行,包括利用触摸屏显示技术和/或鼠标键盘类型接口的设备。这些设备的示例包括计算机(台式和移动)、智能电话、个人数字助理(PDA)、以及有线和无线的其它电子设备。
最初参考图1,示出了提供基于模型的访问控制的系统100。系统100提供安全策略,该安全策略可从资源管理程序原语中抽象出并且可指定具有可反映策略作者的意图的较高级抽象的策略。另外地或另选地,系统100可方便跨各种不同的授权上下文创建并应用安全策略的多个实例。系统100还可被配置成在嵌套模型中指定安全策略。
当管理员或负责控制对资源的访问并保护资源的其他人为各种资源和多个人配置访问许可时,变得难以直接在资源本身上配置低级设置。还可能在存在用户对其应具有访问许可的大量资源时存在管理问题。这些资源可以是其中存在可加载的应用程序的任何东西(例如,文件共享、共享点站点、对传统应用程序的访问等)。访问控制配置有时通过在不明白或理解修改的衍生结果(ramification)或所涉及的策略的情况下修改底层授权机制的各种设置来执行。一般而言,配置无法从一个上下文复制到另一上下文,而必须手动重新配置。这可能产生或不产生相同的配置,尤其是在配置设置点中的一个或多个中存在错误的情况下。这在诸如存在期望关于确切的企业访问管理策略的信息的遵从性问题和其他规章强制的情况下可导致问题。系统100可被配置成维护策略并针对具有基本上相同的访问权限的一组用户保持这些策略。
更详细地,系统100包括抽象组件102,其可被配置成从各种应用程序和参数的底层实现中抽象出用于保护资源的安全策略。部分地基于该安全策略,抽象组件102可构建一个或多个抽象用户模型、一个或多个抽象资源模型或抽象用户模型和抽象资源模型两者。抽象用户模型可以是特定用户角色的抽象或标识应可访问类似资源的类似用户以创建模型(例如,生产监察员、银行出纳员、收费公路亭操作员、图书管理员等)的另一种手段。抽象用户模型可以是资源和用户的组织的模型。例如,该抽象用户模型可以是与组中的用户的分层结构相关的资源(或范围)的分层结构。
抽象组件102可独立于实际用于保护资源(例如,程序、应用程序、格式、文件等)的机制或配置和/或实际访问资源的用户的类型。例如,不管利用什么机制,都应允许需要访问财务文档的人访问这些财务文档。通过利用抽象组件102,管理员或负责坚持安全策略的其他人不必手动地为每一个用户和/或资源执行低级配置,但可修改用户模型和/或资源模型。
另外,抽象组件102可被配置成帮助保持策略意图。因为安全策略是从资源管理原语中抽象出的,所以可提供能够允许策略作者以更接近实际意图(例如,诸如编纂(codified)意图)而不是保护资源的底层实现的方式来指定一个或多个策略的抽象。
另外,抽象组件102可被配置成提供抽象模型配置的可重复性。以此方式,抽象模型(例如,用户、资源)可以是模块化的并且可跨不同应用程序或通过各种不同的角色和功能来应用。例如,国家银行可具有分行并且想要确保每一个分行都具有相同种类的配置(例如,经理具有比副经理更多的许可并且出纳员具有低级许可)。尽管不同的人执行相应的功能(例如,经理、出纳员),但这些资源、角色和相关联的许可对于每一个分行都是相同的。由此,许可配置的可重复性能够在所有分行中持久保持。
分配组件104可被配置成将一个或多个特定用户标识或指定到一抽象用户模型或不止一个抽象用户模型。例如,角色可以是银行出纳员、银行主管、机器车间领班、接待员、孩子、成人等。分配组件104可被配置成维护关于用户角色或用户组角色为何可访问特定许可的信息和/或可将抽象模型转换为具体术语,由此向用户分配许可以便使用具体资源。分配组件104还可被配置成向抽象资源模型分配一个或多个资源。
系统中还包括授权组件106,其可被配置成部分地基于模型来设置对具体资源的许可(例如,具有其权限的专用名称用户/组)。在与标识用户并将其放入所需的一个或多个组中的基本上同时,作为用特定用户模型来标识用户的结果,可自动创建适当的许可和成员资格。
另外,授权组件106可被配置成维护关于特定个人为何可访问各种许可的信息。如果用户扮演不同的角色,则可取决于所执行的任务来给予该用户与这些角色中的每一个有关的许可。例如,如果该用户是接待员但也在薪酬员工外出时补缺,则该用户可具有两个许可(接待员和薪酬员工)。然而,如果该用户不代替薪酬员工,则可禁用与薪酬功能有关的许可并且在薪酬员工外出期间只允许接待员许可。
图2示出了能够方便基于模型的访问控制的系统200。系统200可被配置成简化授权策略以及该授权策略的实现。在每一个计算机上都可能存在多个安全调节器(knob)(例如,特权、资源名称等)。在大型安装中可能存在数百或数千台计算机,这将使得即使不是不可能也难以手动配置和监视这些设置。系统200可被配置成向用户和管理员隐藏底层实现的复杂性。在某些实施例中,用户和管理员可在需要时访问底层实现。
系统200可减轻管理员在对多个对象应用复杂策略时的重复手动工作。系统200还可保留关于策略的信息,从而使得即使已经存在较长的增量变更历史也可能确定策略的参数。
系统200包括抽象组件202,其可被配置成从各种应用程序和参数的底层实现中抽象出或概念化用于保护资源的安全策略并创建抽象用户模型、抽象资源模型或这两个模型。还包括分配组件204,其可被配置成将抽象出的安全策略和用户模型与特定的一个或多个用户相关并将资源模型与特定的一个或多个资源相关。系统200中还包括许可组件206,其可被配置成基于模型来自动设置对特定资源的许可。
抽象组件202可包括资源模块208和功能模块210,这两个模块独立或协力获取如管理员所查看的各种资源、用户和许可的模型。资源模块208可包括关于各种可用资源的信息并基于这些可用资源来创建抽象资源模型。功能模块210可包括关于潜在角色(例如,用户)的信息,人们可通过该信息来具有访问权(例如,人力资源经理、库存管理员等)。抽象组件202能够(例如,通过资源模块208和/或功能模块210)提供允许用抽象术语来指定模型的机制或词汇。
例如,可能存在诸如Emerald项目等抽象资源,并且存在由于其作为促进员(facilitator)的角色而应具有各种访问权的项目促进员。由此,抽象组件202不聚焦于所保护的特定资源,而是聚焦于这些资源的概念组织以及用户和对于每一个用户的对这些资源的各种许可的概念组织。
分配组件204可包括范围模块212和角色模块214。范围模块212可包括或可访问资源的集合并且可将这些资源的子集分配给一个或多个抽象资源模型216,其被标记为资源1到资源K,其中K是整数。还包括角色模块214,其可访问或维护可被分配给一个或多个抽象用户模型的主体的集合。这些主体可以是用户218或用户角色,其被标记为用户1到用户N,其中N是整数。由系统200创建的模型可以用特定用户和/或资源(例如,磁盘文件、数据库、模型中所指定的其他东西)来填充。
应当理解,存在可表示模型的其他方式并且角色和范围只是表示模型的一个示例。因此,无论使用什么机制或词汇,资源和用户组或角色都可基于它们彼此之间的关系来定义。许可能够基于这些原语而不是实际物理资源和真实用户来指定。
可能存在抽象系统的第一人、将抽象出的或概念性的组织实例化为特定资源的另一人、以及将用户添加到适当的工具的另一人。因此,这些资源能够以独立于意图的方式来传达,并且可能存在在不同的上下文中实例化的复杂关系。
另外,模块化概念可被配置成创建嵌套模型。可在这些嵌套模型中指定安全策略。模型可被指定用于访问控制并且该模型可用作用于为较大的系统构建模型的组件。
因为角色是通用或抽象的,所以模型能够在其他模型或子模型中并以模块化的方式使用。例如,可能存在用于每一个银行分行以及每一个城市中的首要分行的模板。可能存在指定谁被允许指定后勤经理的模型。然而,不为了描述分行而发明该分行本身或对其建模。相反,可重复使用已经构建的分行模型并将其与后勤经理模块组合。
图3示出了用于系统子集的模型的视图300。该模型视图300可以是从负责将特定个人分配到特定角色或访问权(例如,安全访问权)的管理员、用户和/或实体的观点来看的。示出了两个项目储存库302和304,这两个项目储存库可表示组织中的同时对其工作的两个项目。在某些实施例中,储存库302、304可表示其他项目、作业、任务等,这些项目、作业、任务具有在其涉及这些项目、作业、任务时应被分配不同的访问权限的多个用户。这些储存库302、304可以是资源的范围,一个对应于第一项目302,一个对应于第二项目304。
每一个项目302、304都可具有在其涉及项目302、304时被分配来执行各种功能的用户的各种角色或逻辑类。例如,第一项目302具有两个角色,这两个角色可以是开发者306和项目经理308。在该简单示例中,第二项目304也具有类似的角色,即开发者306和项目经理308。然而,应当理解,可能存在多个角色,并且两个角色只是出于简单的目的而示出的。另外地或另选地,可将不止一个用户分配到每一个角色并且这些角色可跨如角色306和308所表示的储存库302、304来利用。在部署项目储存库302、304时,可创建对应于每一个角色的组。该组可包括对于项目执行该角色的功能的用户。由此,范围是资源的集合而角色是主体的集合。
在该简单图示中,管理员(或其他负责方)将用户310放入所需的一个或多个组中并且作为用特定角色306、308来标识用户308的结果,自动创建适当的许可和成员资格。即,对于每一个储存库302、304,可分配多个角色306和308,这些角色可以是与所示及所描述的角色不同和/或不同数量的角色。向每一个角色分配一个或多个人并且对该用户应用对应于该角色的相应的访问权限。这一分配可基于诸如用户id、用户口令等与该个人相关联的唯一标识符或基于其他标识符。如图所示,用户310被分配到第一储存库302中的开发者角色306以及第二储存库304中的项目经理308。
图4示出了向多个用户分配访问权限的示例性手动管理400。该示例类似于上述示例并且包括第一项目402和第二项目404。标识开发者406和项目经理408并将其与每一个项目402、404相关联。用户410可负责第一项目中的开发者408的角色以及第二项目404中的项目经理406的角色。
然而,在手动向相关联的项目402和404分配角色406、408时(例如,不利用所公开的各实施例),角色406、408无法跨应用程序402、404利用。因此,需要用于向项目402、404分配角色和个人的进一步的手动动作。在以下讨论中,出于简单的目的将只讨论一个角色。对于手动管理,对每一个角色利用服务器412。手动地将每一个或每一组用户406、408与诸如例如,编辑许可414和阅读许可416等一个或多个操作相关联。手动地将每一个许可414、416与用户或用户组406、408相关联,并且对于每一个角色(例如,开发者406和项目经理408),将必须手动配置许可多次。
手动配置可导致错误,因为存在太多需要手动修改的配置。因此,所公开的各实施例可通过提供可跨多个项目利用的模块化角色来减轻管理员的重复手动工作。另外,所公开的各实施例可使得在较长的增量变更(例如,对访问权限的改变)历史后确定策略及其目的变得简单。
现在参考图5,示出了可与所公开的各实施例一起利用的示例性系统500。该系统可包括虚线502所示的模板以及虚线504所示的实例。模板502及其实例504可被称为可对应于服务实例及其资源子集的叶范围(leaf node)。除了对服务的编码之外,创建可定义该服务的角色的范围模板502。角色可确定用户可在执行该角色的功能时拥有的许可。图5的角色被示为贡献者506和阅读者或查看者508。可定制每一个角色506、508以使得用户或用户组能够执行任务(例如,银行出纳员、HR福利员、文档的贡献者或查看者等)在该示例中,贡献者506可编辑文档并且如图所示,也可以是查看者508,这是角色嵌套的示例。
预定义角色506、508可帮助确定应测试以确保其正确地启用所需任务并遵照范围内的授权策略的许可组合。实例化范围模板502以创建范围。可利用相同的模板502来创建许多范围,如图5所示。在该图示中,贡献者506和查看者508角色在对应的角色模板在该模板中所具有的范围中具有对资源的相同许可。用户510被示为被放入查看者角色。每一个范围都可精确地反映范围模板并具有模板502中所定义的资源、角色和许可。
图6示出了可以与所公开的各实施例一起利用的另一系统600。可利用各种程序应用来创建较高级的模板。系统600包括项目储存库602,其可包括至少两个子部分,被示为规约604和源606。项目经理角色608可被分配到规约服务器604中的共享者角色610以及源服务器606中的阅读者角色612。一部分的角色可包括该角色将其导出到包含范围的接口。最小的部分是实际服务并且包括诸如项目所包含的子部分等复合部分。这些部分可如所需要地深度嵌套以提供各种角色和子角色。因为这可对所有项目储存库定义,所以管理员实例化模型即可而无需理解所涉及的所有细节。该项目模板的两个实例将类似于图3所示的系统那样出现。因此,可利用较小的部分或子角色来创建较大的角色而无需上述多个手动配置。
图7示出了所公开的各实施例的可扩展特性。示出了用于银行出纳员应用程序的模板700以展示商业应用程序中的可扩展策略。可对银行服务的账户706应用低角色702和高角色704。每一个角色702、704都可具有相应的转账金额许可,诸如对于低角色702的1000美元以及对于高角色的100000美元。
在外部分行应用程序中,出纳员角色708和经理角色710可被分别分配到低账户和高账户。管理员或负责分配角色的其他用户可向应用程序逻辑添加当前交易的金额值并且策略系统可评估该表达。由此,角色是模块化的并且策略可通过基于模型的访问控制来更新而不改变应用程序代码。
图8示出了用于家庭个人计算机或域的简化的模板。基于模块的访问控制可用于企业应用程序并且还可使得授权对于小型企业和消费者变得较不复杂。应当注意,图8出于简单的目的而仅示出了家庭域的子部分。
单个机器的桌面可具有若干预定义角色(例如,抽象用户模型),诸如成人802、孩子804和朋友806。还可包括若干预定义范围,诸如家务808、社区810和用户范围模板812。这些范围808、810和812可从同一基本范围模板中构建。该范围模板在该附图中出现四次。在家务范围808和社区范围810上,成人802可以是所有者814而孩子可以是贡献者。每一个用户都可具有伙伴列表并且伙伴816是对于城堡818的朋友并且另外是用户的共享子范围上的阅读者820。应当注意,这是简单的示例并且小型企业可具有若干更多的部分。
图9示出了用于提供模块化的基于模型的访问控制的方法900。尽管出于简化解释的目的,各方法被显示和描述为一系列的框,但应该理解和明白,所公开的各实施例不受框的顺序所限,因为一些框能够以与在此所叙述和描述所不同的顺序发生和/或与其他框同时发生。而且,并非所有示出的框都是实现以下描述的方法所必需的。可以理解,与各框相关联的功能可以由软件、硬件、其组合、或任何其它合适的装置(例如,设备、系统、进程、组件)来实现。另外,还应该明白,下文以及本说明书全文中所公开的方法能够被存储在制品上,以便于把此类方法传送和转移到各种设备。本领域技术人员将会明白并理解,方法可替换地被表示为一系列相互关联的状态或事件,诸如以状态图的形式。
在902,创建抽象安全策略。该安全策略能够以独立于实际用于保护资源(例如,程序、应用程序、格式、文件等)的机制或配置的类型的方式创建。在904,可创建或开发抽象用户模型和/或抽象资源模型。这些模型并非特定用户和/或特定资源专用的,而是涉及不同的资源、角色或功能以及对于各种资源、用户或用户角色的应授权的访问控制。
在906,将特定用户和/或特定资源与一个或多个抽象用户模型或抽象资源模型相关联。例如,一用户模型可以用于应具有涉及下属的功能的安全策略的主管。以此方式,主管应被给予对应于该主管的抽象出的安全策略以及对应于下属的抽象出的安全策略。另外,可通过以使得模型能够被指定用于访问控制并且该模型可用作用于为较大系统构建模型的组件的方式嵌套模型来将不止一个用户模型与不止一个抽象安全策略相关联。在906,该关联还允许模块性,其中抽象用户模型及相关联的抽象安全策略或抽象资源模型可跨应用程序或在不同的应用程序中使用。
在908,可基于模型来自动设置对特定资源的许可(例如,具有其权限的专用名称用户/组)。在某些实施例中,不止一个人与抽象出的用户模型和抽象出的安全策略中的任一个或两者相关联。
现在参见图10,示出了可用于执行所公开的体系结构的计算机的框图。为了提供用于此处所公开的各方面的附加上下文,图10及以下讨论旨在提供对其中可实现各方面的合适的计算环境1000的简要概括描述。尽管以上在可在一个或多个计算机上运行的计算机可执行指令的一般上下文中描述一个或多个实施例,但是本领域的技术人员将认识到,各实施例也可结合其它程序模块和/或作为硬件和软件的组合来实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构等等。此外,本领域的技术人员可以理解,本发明的方法可用其它计算机系统配置来实施,包括单处理器或多处理器计算机系统、小型机、大型计算机、以及个人计算机、手持式计算设备、基于微处理器的或可编程消费电子产品等,其每一个都可操作上耦合到一个或多个相关联的设备。
所示各方面也可以在其中某些任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实践。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
计算机通常包括各种计算机可读介质。计算机可读介质可以是可由计算机访问的任何可用介质,并包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或者其它存储器技术、CD-ROM、数字视频盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或可以用于存储所需信息并且可以由计算机访问的任何其它介质。
通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,且包含任何信息传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非限制,通信介质包括有线介质,诸如有线网络或直接线连接,以及无线介质,诸如声学、RF、红外线和其它无线介质。上述中的任意组合也应包括在计算机可读介质的范围之内。
再次参考图10,用于实现各方面的示例性环境1000包括计算机1002,计算机1002包括处理单元1004、系统存储器1006和系统总线1008。系统总线1008将包括但不限于系统存储器1006的系统组件耦合到处理单元1004。处理单元1004可以是市场上可购买到的各种处理器中的任意一种。双微处理器和其它多处理器体系结构也可用作处理单元1004。
系统总线1008可以是若干种总线结构中的任一种,这些总线结构还可互连到存储器总线(带有或没有存储器控制器)、外围总线、以及使用各类市场上可购买到的总线体系结构中的任一种的局部总线。系统存储器1006包括只读存储器(ROM)1010和随机存取存储器(RAM)1012。基本输入/输出系统(BIOS)储存在诸如ROM、EPROM、EEPROM等非易失性存储器1010中,其中BIOS包含帮助诸如在启动期间在计算机1002内的元件之间传输信息的基本例程。RAM 1012还可包括诸如静态RAM等高速RAM来用于高速缓存数据。
计算机1002还包括内置硬盘驱动器(HDD)1014(例如,EIDE、SATA),该内置硬盘驱动器1014还可被配置成在合适的机壳(未示出)中供外部使用;磁软盘驱动器(FDD)1016(例如,从可移动磁盘1018中读取或向其写入);以及光盘驱动器1020(例如,从CD-ROM盘1022中读取,或从诸如DVD等其它高容量光学介质中读取或向其写入)。硬盘驱动器1014、磁盘驱动器1016和光盘驱动器1020可分别通过硬盘驱动器接口1024、磁盘驱动器接口1026和光盘驱动器接口1028来连接到系统总线1008。用于外置驱动器实现的接口1024包括通用串行总线(USB)和IEEE 13104接口技术中的至少一种或两者。其它外置驱动器连接技术在一个或多个实施例所构想的范围之内。
驱动器及其相关联的计算机可读介质提供了对数据、数据结构、计算机可执行指令等的非易失性存储。对于计算机1002,驱动器和介质容纳适当的数字格式的任何数据的存储。尽管以上对计算机可读介质的描述涉及HDD、可移动磁盘以及诸如CD或DVD等可移动光学介质,但是本领域的技术人员应当理解,示例性操作环境中也可使用可由计算机读取的任何其它类型的介质,诸如zip驱动器、磁带盒、闪存卡、盒式磁带等等,并且任何这样的介质可包含用于执行此处所公开的方法的计算机可执行指令。
多个程序模块可存储在驱动器和RAM 1012中,包括操作系统1030、一个或多个应用程序1032、其它程序模块1034和程序数据1036。所有或部分操作系统、应用程序、模块和/或数据也可被高速缓存在RAM 1012中。可以理解,各实施例可用各种市场上可购得的操作系统或操作系统的组合来实现。
用户可以通过一个或多个有线/无线输入设备,例如键盘1038和诸如鼠标1040等定点设备将命令和信息输入到计算机1002中。其它输入设备(未示出)可包括话筒、IR遥控器、操纵杆、游戏手柄、指示笔、触摸屏等等。这些和其它输入设备通常通过耦合到系统总线1008的输入设备接口1042连接到处理单元1004,但也可通过其它接口连接,如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口等等。
监视器1044或其它类型的显示设备也经由接口,诸如视频适配器1046连接至系统总线1008。除了监视器1044之外,计算机通常包括诸如扬声器和打印机等其它外围输出设备(未示出)。
计算机1002可使用经由有线和/或无线通信至一个或多个远程计算机,诸如远程计算机1048的逻辑连接在网络化环境中操作。远程计算机1048可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐设备、对等设备或其它常见的网络节点,并且通常包括以上相对于计算机1002描述的许多或所有元件,尽管为简明起见仅示出了存储器/存储设备1050。所描绘的逻辑连接包括到局域网(LAN)1052和/或例如广域网(WAN)1054等更大的网络的有线/无线连接。这一LAN和WAN联网环境常见于办公室和公司,并且方便了诸如内联网等企业范围计算机网络,所有这些都可连接到例如因特网等全球通信网络。
当在LAN网络环境中使用时,计算机1002通过有线和/或无线通信网络接口或适配器1056连接到局域网1052。适配器1056可以方便到LAN 1052的有线或无线通信,并且还可包括其上设置的用于与无线适配器1056通信的无线接入点。
当在WAN连网环境中使用时,计算机1002可包括调制解调器1058,或连接到WAN 1054上的通信服务器,或具有用于通过WAN 1054,诸如通过因特网建立通信的其它装置。或为内置或为外置的调制解调器1058以及有线或无线设备经由串行端口接口1042连接到系统总线1008。在网络化环境中,相对于计算机1002所描述的程序模块或其部分可以存储在远程存储器/存储设备1050中。应该理解,所示网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其它手段。
计算机1002可用于与操作上设置在无线通信中的任何无线设备或实体通信,这些设备或实体例如有打印机、扫描仪、台式和/或便携式计算机、便携式数据助理、通信卫星、与无线可检测标签相关联的任何一个设备或位置(例如,公用电话亭、报亭、休息室)以及电话。这至少包括Wi-Fi和蓝牙TM无线技术。由此,通信可以如对于常规网络那样是预定义结构,或者仅仅是至少两个设备之间的自组织(ad hoc)通信。
Wi-Fi,即无线保真,允许从家中、在酒店房间中、或在工作时连接到因特网而不需要线缆。Wi-Fi是一种类似蜂窝电话中使用的无线技术,它使得诸如计算机等设备能够在室内和室外,在基站范围内的任何地方发送和接收数据。Wi-Fi网络使用称为IEEE 802.11(a、b、g等等)的无线电技术来提供安全、可靠、快速的无线连接。Wi-Fi网络可用于将计算机彼此连接、连接到因特网以及连接到有线网络(使用IEEE 802.3或以太网)。Wi-Fi网络在未许可的2.4和5GHz无线电波段内工作,例如以11Mbps(802.11a)或54Mbps(802.11b)数据速率工作,或者具有包含两个波段(双波段)的产品,因此该网络可提供类似于许多办公室中使用的基本10BaseT有线以太网的真实性能。
现在参见图11,示出了根据各实施例的示例性计算环境1100的示意性框图。系统1100包括一个或多个客户机1102。客户机1102可以是硬件和/或软件(例如,线程、进程、计算设备)。客户机1102可例如通过采用各实施例而容纳cookie和/或相关联的上下文信息。
系统1100还包括一个或多个服务器1104。服务器1104也可以是硬件和/或软件(例如,线程、进程、计算设备)。服务器1104可以例如通过使用各实施例来容纳线程以执行变换。在客户机1102和服务器1104之间的一种可能的通信能够以适合在两个或多个计算机进程之间传输的数据分组的形式进行。数据分组可包括例如cookie和/或相关联的上下文信息。系统1100包括可以用来使客户机1102和服务器1104之间通信更容易的通信框架1106(例如,诸如因特网等全球通信网络)。
通信可经由有线(包括光纤)和/或无线技术来促进。客户机1102操作上被连接到可以用来存储对客户机1102本地的信息(例如,cookie和/或相关联的上下文信息)的一个或多个客户机数据存储1108。同样地,服务器1104可在操作上连接到可以用来存储对服务器1104本地的信息的一个或多个服务器数据存储1110。
以上所描述的包括各实施例的示例。当然,出于描绘各实施例的目的而描述组件或方法的每一个可以想到的组合是不可能的,但本领域内的普通技术人员可以认识到,许多进一步的组合和排列都是可能的。因此,本说明书旨在涵盖所有这些落入所附权利要求书的精神和范围内的更改、修改和变化。
特别地,对于由上述组件、设备、电路、系统等执行的各种功能,除非另外指明,否则用于描述这些组件的术语(包括对装置摄的引用)旨在对应于执行所描述的执行此处在示例性方面中所示的功能的组件的指定功能(例如,功能上等效)的任何组件,即使这些组件在结构上不等效于所公开的结构。在这一点上,也可认识到各方面包括用于执行各方法的动作和/或事件的系统以及具有用于执行这些动作和/或事件的计算机可执行指令的计算机可读介质。
另外,尽管可相对于若干实现中的仅一个来公开一个特定特征,但是这一特征可以如对任何给定或特定应用所需且有利地与其它实现的一个或多个其它特征相组合。此外,就在说明书或权利要求书中使用术语“包括”和“含有”及其变体而言,这些术语旨在以与术语“包含”相似的方式为包含性的。此外,在说明书或权利要求书中使用的术语“或”意味着“非排他性或”。

Claims (20)

1.一种方便基于模型的访问控制的系统,包括:
抽象组件(102、202),其构建至少一个抽象用户模型或抽象资源模型或这两个模型;
分配组件(104、204),其将至少一个特定用户与所述抽象用户模型相关并将至少一个特定资源与所述抽象资源模型相关;以及
许可组件(106、206),其部分地基于所述抽象资源模型来设置对所述特定资源的至少一个许可。
2.如权利要求1所述的系统,其特征在于,所述抽象组件独立于用于保护资源的机制。
3.如权利要求1所述的系统,其特征在于,所述抽象组件保持策略意图。
4.如权利要求1所述的系统,其特征在于,所述分配组件维护关于用户角色及其访问许可的信息。
5.如权利要求1所述的系统,其特征在于,所述抽象组件提供用户角色配置的可重复性。
6.如权利要求1所述的系统,其特征在于,所述抽象用户模型和抽象资源模型是模块化的并跨不同的应用程序来应用。
7.如权利要求1所述的系统,其特征在于,所述许可组件将所述抽象用户模型和抽象资源模型转换成具体术语。
8.如权利要求1所述的系统,其特征在于,所述抽象组件提供用抽象术语来指定所述模型的机制。
9.如权利要求1所述的系统,其特征在于,安全策略在嵌套模型中定义。
10.如权利要求9所述的系统,其特征在于,所述嵌套模型允许所述抽象用户模型和所述抽象资源模型被指定用于访问控制并用作用于为较大的系统构建模型的组件。
11.如权利要求1所述的系统,其特征在于,所述分配组件基于唯一标识符来识别所述特定用户。
12.如权利要求1所述的系统,其特征在于,所述许可组件在所述用户用所述模型来标识时创建适当的许可和成员资格。
13.一种用于提供基于模型的访问控制的方法,包括:
创建抽象用户模型和抽象资源模型;
将至少一个特定用户与所述抽象用户模型相关联;
将至少一个特定资源与所述抽象资源模型相关联;以及
部分地基于抽象用户角色来设置对所述特定资源的至少一个许可。
14.如权利要求13所述的方法,其特征在于,创建抽象用户模型和抽象资模型还包括创建独立于用于保护资源的机制的类型的模型。
15.如权利要求13所述的方法,其特征在于,部分地基于所述抽象用户角色来设置对所述特定资源的至少一个许可是自动的。
16.如权利要求13所述的方法,其特征在于,还包括嵌套相关联的抽象用户模型。
17.如权利要求13所述的方法,其特征在于,创建抽象用户模型和抽象资源模型提供模块性。
18.如权利要求13所述的方法,其特征在于,还包括将两个或更多个人与所述抽象用户模型和所述抽象资源模型相关联。
19.一种提供访问控制的计算机可执行系统,包括:
用于创建抽象用户模型和抽象资源模型的装置;
用于将至少一个用户与所述抽象用户模型相关联并将至少一个资源与所述抽象资源模型相关联的装置。
20.如权利要求19所述的系统,其特征在于,还包括用于对所述至少一个资源应用许可的装置。
CN200880010688A 2007-03-30 2008-02-28 基于模型的访问控制 Pending CN101652767A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/694,014 2007-03-30
US11/694,014 US20080244736A1 (en) 2007-03-30 2007-03-30 Model-based access control

Publications (1)

Publication Number Publication Date
CN101652767A true CN101652767A (zh) 2010-02-17

Family

ID=39796667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880010688A Pending CN101652767A (zh) 2007-03-30 2008-02-28 基于模型的访问控制

Country Status (4)

Country Link
US (1) US20080244736A1 (zh)
EP (1) EP2132642A4 (zh)
CN (1) CN101652767A (zh)
WO (1) WO2008121471A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740725A (zh) * 2016-01-29 2016-07-06 北京大学 一种文件保护方法与系统
CN107111697A (zh) * 2014-10-15 2017-08-29 艾拉物联公司 对于所连接的消费者设备的基于角色的访问控制
CN112912839A (zh) * 2018-11-01 2021-06-04 日立安斯泰莫株式会社 软件管理装置

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8032935B2 (en) * 2007-06-29 2011-10-04 Microsoft Corporation Security synchronization services
CN101925867B (zh) * 2008-01-24 2013-07-24 西门子公司 现场设备及其操作方法
US10372924B2 (en) * 2008-05-12 2019-08-06 George Madathilparambil George Master device for controlling application security environments
US20090313079A1 (en) * 2008-06-12 2009-12-17 Microsoft Corporation Managing access rights using projects
US8943271B2 (en) 2008-06-12 2015-01-27 Microsoft Corporation Distributed cache arrangement
US8176256B2 (en) * 2008-06-12 2012-05-08 Microsoft Corporation Cache regions
US8296840B2 (en) * 2008-12-19 2012-10-23 Sap Ag Providing permission to perform action on an electronic ticket
JP5316867B2 (ja) * 2009-03-04 2013-10-16 日本電気株式会社 ライセンス管理システム、ライセンス管理方法及びライセンス管理プログラム
US8640195B2 (en) * 2009-09-30 2014-01-28 International Business Machines Corporation Method and system for automating security policy definition based on recorded transactions
US9953178B2 (en) * 2010-02-03 2018-04-24 Os Nexus, Inc. Role based access control utilizing scoped permissions
US20120166983A1 (en) * 2010-12-28 2012-06-28 Hilmar Demant Integrated metadata and nested authorizations in a user interface framework
US8839375B2 (en) * 2012-05-25 2014-09-16 Microsoft Corporation Managing distributed operating system physical resources
US8931109B2 (en) 2012-11-19 2015-01-06 International Business Machines Corporation Context-based security screening for accessing data
US9967288B2 (en) 2015-11-05 2018-05-08 International Business Machines Corporation Providing a common security policy for a heterogeneous computer architecture environment
US10740483B2 (en) * 2016-11-22 2020-08-11 Sap Se Unified instance authorization based on attributes and hierarchy assignment
US20190340554A1 (en) * 2018-05-07 2019-11-07 Microsoft Technology Licensing, Llc Engagement levels and roles in projects

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5315657A (en) * 1990-09-28 1994-05-24 Digital Equipment Corporation Compound principals in access control lists
JP3691624B2 (ja) * 1997-03-05 2005-09-07 Kddi株式会社 Osi管理における管理情報ベースのアクセス制御方法
US5991877A (en) * 1997-04-03 1999-11-23 Lockheed Martin Corporation Object-oriented trusted application framework
US6434607B1 (en) * 1997-06-19 2002-08-13 International Business Machines Corporation Web server providing role-based multi-level security
US6453353B1 (en) * 1998-07-10 2002-09-17 Entrust, Inc. Role-based navigation of information resources
US6574736B1 (en) * 1998-11-30 2003-06-03 Microsoft Corporation Composable roles
US20020026592A1 (en) * 2000-06-16 2002-02-28 Vdg, Inc. Method for automatic permission management in role-based access control systems
US7013332B2 (en) * 2001-01-09 2006-03-14 Microsoft Corporation Distributed policy model for access control
US20030074206A1 (en) * 2001-03-23 2003-04-17 Restaurant Services, Inc. System, method and computer program product for utilizing market demand information for generating revenue
US20020178119A1 (en) * 2001-05-24 2002-11-28 International Business Machines Corporation Method and system for a role-based access control model with active roles
US20020188729A1 (en) * 2001-06-12 2002-12-12 Rui Zhou Collaboration control system and method
EP1428346A4 (en) * 2001-08-23 2004-11-24 Efunds Corp SYSTEM AND METHOD FOR PROTECTING SOFTWARE
US7124192B2 (en) * 2001-08-30 2006-10-17 International Business Machines Corporation Role-permission model for security policy administration and enforcement
AU2003208940A1 (en) * 2002-01-30 2003-09-02 Core Sdi, Inc. Framework for maintaining information security in computer networks
US6950825B2 (en) * 2002-05-30 2005-09-27 International Business Machines Corporation Fine grained role-based access to system resources
US20030229812A1 (en) * 2002-06-05 2003-12-11 Cristina Buchholz Authorization mechanism
US7653930B2 (en) * 2003-02-14 2010-01-26 Bea Systems, Inc. Method for role and resource policy management optimization
EP1634175B1 (en) * 2003-05-28 2015-06-24 Citrix Systems, Inc. Multilayer access control security system
US20050262362A1 (en) * 2003-10-10 2005-11-24 Bea Systems, Inc. Distributed security system policies
US7644432B2 (en) * 2003-10-10 2010-01-05 Bea Systems, Inc. Policy inheritance through nested groups
US20050251851A1 (en) * 2003-10-10 2005-11-10 Bea Systems, Inc. Configuration of a distributed security system
US7546640B2 (en) * 2003-12-10 2009-06-09 International Business Machines Corporation Fine-grained authorization by authorization table associated with a resource
US9032076B2 (en) * 2004-10-22 2015-05-12 International Business Machines Corporation Role-based access control system, method and computer program product
US7593942B2 (en) * 2004-12-30 2009-09-22 Oracle International Corporation Mandatory access control base
US20060230282A1 (en) * 2005-04-06 2006-10-12 Hausler Oliver M Dynamically managing access permissions
US8464317B2 (en) * 2005-05-06 2013-06-11 International Business Machines Corporation Method and system for creating a protected object namespace from a WSDL resource description
US20070043716A1 (en) * 2005-08-18 2007-02-22 Blewer Ronnie G Methods, systems and computer program products for changing objects in a directory system
US20070240157A1 (en) * 2006-04-10 2007-10-11 Nokia Corporation Method, apparatus, mobile terminal and computer program product for safe application termination in a virtual machine
US20080034438A1 (en) * 2006-08-07 2008-02-07 International Business Machines Corporation Multiple hierarchy access control method
US20080120302A1 (en) * 2006-11-17 2008-05-22 Thompson Timothy J Resource level role based access control for storage management
US7827615B1 (en) * 2007-01-23 2010-11-02 Sprint Communications Company L.P. Hybrid role-based discretionary access control

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107111697A (zh) * 2014-10-15 2017-08-29 艾拉物联公司 对于所连接的消费者设备的基于角色的访问控制
CN105740725A (zh) * 2016-01-29 2016-07-06 北京大学 一种文件保护方法与系统
CN105740725B (zh) * 2016-01-29 2018-08-28 北京大学 一种文件保护方法与系统
CN112912839A (zh) * 2018-11-01 2021-06-04 日立安斯泰莫株式会社 软件管理装置

Also Published As

Publication number Publication date
EP2132642A4 (en) 2011-05-25
US20080244736A1 (en) 2008-10-02
WO2008121471A1 (en) 2008-10-09
EP2132642A1 (en) 2009-12-16

Similar Documents

Publication Publication Date Title
CN101652767A (zh) 基于模型的访问控制
CN102982396A (zh) 通用过程建模框架
US8589306B1 (en) Open source license management
CN103246530A (zh) 客户端扩展的安装和管理
CN105027055A (zh) 使用事件时序可视化来呈现事件信息的技术
Khan Comparative analysis of rpa tools-uipath, automation anywhere and blueprism
CN105144209A (zh) 用于支持多个企业管理商业合作伙伴以及相关联的资产的系统和方法
WO2017118597A1 (en) Computer-implemented method for complex dynamic case management
AU2022301193A1 (en) Multi-platform application integration & data synchronization
JP2023543715A (ja) 連合プライベート・データのための分析プラットフォーム
Mikhailov et al. Approach to construction of common information space of manufacturing enterprise
TWI804694B (zh) 固定資產盤點方法、裝置、移動終端及存儲介質
CN104537035A (zh) 一种数据融合应用系统和方法
Omoregbe et al. Development of a file tracking system for tertiary institutions
CN110351322A (zh) 智能社交信息管理方法及装置
US20210312299A1 (en) Ai connector module
CN108876173B (zh) 一种事件的实现方法和装置
Kim et al. A framework for rapid development of RFID applications
Kaleem et al. A review on requirements engineering for internet of things (loT) applications
Edwan et al. Automated NFC-Based System for Management and Tracking of Assets in Sharing Economy
Beckner et al. Pro RFID in BizTalk Server 2009
Abu Bakar et al. A Proposal to Harmonize BIM and IoT Data Silos using Blockchain Application
Chajduga et al. Management of the Documentation Release by the Programmable Electrical Energy Flow-Individually Made Machine Called Documentomat
KORE et al. LIBRARY AUTOMATION SYSTEM USING RFID
Keong et al. DESIGN AND DEVELOPMENT OF SMART ASSET HANDPHONE SCANNER APPLICATION

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150723

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

Effective date of registration: 20150723

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20100217