CN104769607A - 利用预定义的查询来过滤视图 - Google Patents

利用预定义的查询来过滤视图 Download PDF

Info

Publication number
CN104769607A
CN104769607A CN201380058859.1A CN201380058859A CN104769607A CN 104769607 A CN104769607 A CN 104769607A CN 201380058859 A CN201380058859 A CN 201380058859A CN 104769607 A CN104769607 A CN 104769607A
Authority
CN
China
Prior art keywords
view
filtrator
inquiry
access
data
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
CN201380058859.1A
Other languages
English (en)
Other versions
CN104769607B (zh
Inventor
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 CN104769607A publication Critical patent/CN104769607A/zh
Application granted granted Critical
Publication of CN104769607B publication Critical patent/CN104769607B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • 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
    • G06F21/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)

Abstract

诸如数据存储应用程序之类的应用程序提供管理对数据存储的视图的访问的过滤器查询。应用程序使用过滤器查询来限制或调整对视图的访问。用户使用应用程序的查询构造器组件来构建过滤器查询。应用程序将构建的过滤器查询附接到视图。应用程序可以提取查询的结构,并将其与原始视图组合以生成经过滤的视图结果来代替原始视图结果。

Description

利用预定义的查询来过滤视图
背景
数据服务技术使多个计算资源能提供协调的并且不同的解决方案。作为数据服务的示例,数据仓库将多个系统集合在一起,以提供满足用户需要的存储解决方案。数据仓库可以横跨巨大的计算资源阵列。在数据仓库应用程序中使用的计算资源分散在多个网络和位置。分散的计算资源被远程地控制和管理。通常,手动或脚本化的解决方案提供对数据仓库资产的安装和配置支持。由人对广泛分布的计算资源的组件的手动安装解决方案不是经济合算的。脚本化的解决方案不灵活难以满足动态要求。
对存储在数据仓库以及类似的数据服务中的数据集的有效访问是对现代数据服务解决方案之间的改善进行竞争的领域。大多数数据顾客没有技术能力有效地从数据服务提取数据。许多人缺乏编写查询以提供对数据提取需求的解决方案的技能。其他人尽管具有足够的技术技能,也可能缺乏从服务提取数据的足够特权。还有其他人可能只是缺乏有效地查询数据集并提取数据以满足需求的资源和时间。可另选地,基于应用程序的解决方案消除了对从数据服务提取数据的技术技能的需要。然而,大多数基于应用程序的解决方案提供限制对数据的访问的标准化的解决方案。标准化的解决方案会缺乏允许用户进一步细化足以满足用户需求的提取解决方案的微调功能。
发明内容
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在专门标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
各实施例涉及提供管理对视图的访问的过滤器查询。根据某些实施例,应用程序可以从用户接收过滤器查询。应用程序可以是管理数据和对数据的访问的数据存储应用程序。应用程序可以通过将查询附接到视图,来将查询与视图相关联。接着,应用程序可以检测对视图的请求。应用程序可以提取查询的结构,并将其与原始视图组合,生成经过滤的视图结果代替原始视图结果。
通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。应当理解,前述一般描述和以下的详细描述都是说明性的,并且不限制所要求保护的各方面。
附图简述
图1示出了根据某些实施例的其中应用程序可以提供管理对视图的访问的过滤器查询的示例网络图;
图2示出了属于用户的账户的基本查询定义的示例;
图3示出了两个用户以及他们在图2中所使用的表的安全配置的示例,其中一个用户具有有限的权限而另一个用户具有完全访问权;
图4A到4D示出了根据各实施例的图2和3的用户可以访问的记录集合以及数据源将如何查找被应用了过滤器的记录;
图5是其中可以实现根据实施例的系统的网络环境;
图6是其中可以实现实施例的示例计算操作环境的框图;以及
图7示出了根据各实施例的提供管理对视图的访问的过滤器查询的过程的逻辑流程图。
具体实施方式
如上文简要描述的,应用程序可以提供管理对视图的访问的过滤器查询。应用程序可以接收过滤器查询,通过将查询附接到视图来将查询与视图相关联,提取查询的结构并其与原始视图组合以生成经过滤的视图结果来代替原始视图结果。在下面的详细描述中,将参考构成本发明的一部分的附图,在附图中,通过例图,示出了特定实施例或示例。可组合这些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。因此,下面的具体实施方式不应以限制性的意义来理解,而是本公开的范围是由所附权利要求及其等效方案来定义的。
尽管在结合在计算设备上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了各实施例,但是本领域的技术人员会认识到各方面也可以结合其它程序模块实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域的技术人员可以明白,各实施例可以用其他计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机以及类似计算设备。各实施例还能在任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。
各实施例可被实现为计算机实现的过程(方法)、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。计算机可读存储介质是计算机可读存储器设备。例如,计算机可读存储介质可经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘和类似介质中的一个或多个来实现。
根据某些实施例,视图可以是数据表的表示。视图可以涵盖数据表的全部数据元素或部分数据元素。视图可以根据用户需求被格式化、排序和/或结构化。查询可以是短的可执行的脚本,该脚本可以由数据存储应用程序解释并执行以从数据存储提供数据。脚本可以用例如通常用于数据存储操作中的结构化查询语言(SQL)来编写。查询可以从多个视图提取数据。查询可以跨多个视图匹配共同的元素,并根据共同的元素从相关联的视图检索数据。查询可以被附接到相关联的视图。诸如数据存储应用程序之类的应用程序可以管理视图和查询的组合,以便查询用于过滤执行视图的结果,并(管理)如此过滤的视图响应于用户请求的执行。
贯穿本说明书,术语“平台”可以是用于提供管理对视图的访问的过滤器查询的软件和硬件组件的组合。平台的示例包括但不限于,在多个服务器上执行的托管服务、在单个计算设备上执行的应用、以及类似系统。术语“服务器”一般指通常在联网环境中执行一个或多个软件程序的计算设备。然而,服务器还可以被实现为在被视作网络上的服务器的一个或多个计算设备上执行的虚拟服务器(软件程序)。在下面将提供关于这些技术和示例操作的更多细节。
参考图1,示图100示出了根据某些实施例的其中应用程序可以提供管理对视图的访问的过滤器查询的示例网络图。示图100所示出的组件和环境是为了说明的目的。各实施例可以在使用各种计算设备和系统、硬件和软件的各种本地、联网的、基于云的和类似的计算环境中实现。
在示图100中所示出的示例环境中,一个或多个服务器102可以主存管理数据存储并提供对数据存储的访问的应用程序。客户端设备106可以执行提供对数据存储上的数据的访问的客户端应用程序。诸如数据存储应用程序之类的应用程序可以控制并监视对数据的访问。服务器102可以通过网络104与客户端设备106进行通信。网络104可以是通过有线或无线技术提供对服务器102的访问的任何网络体系结构。
客户端设备106可包括各种硬件,诸如台式计算机110、膝上型计算机112、诸如平板之类的板式设备114,以及智能电话116。客户端设备106可以执行利用查询过滤视图的应用程序的客户端组件。客户端设备106可以允许用户为由服务器102的数据存储主存的视图构建查询。管理数据存储的应用程序可以接收查询,并将其附接到相关联的视图,以将查询结果替换为请求视图的用户的视图。
上面的示例情况描述了具有在胖-客户端服务器体系结构中交互的组件的应用程序。可另选地,应用程序可以在瘦客户端和面向服务器的体系结构中工作。客户端设备110-116可以执行访问由服务器102所提供的服务的应用程序。由服务器102所提供的服务可包括查询配置、到视图的查询附接、以及将查询结果替换为视图的查询执行。示例可包括通过web浏览器访问服务,并通过web浏览器显示管理对视图的基于查询的过滤的服务器应用程序。
图2示出了根据某些实施例的属于用户的账户的基本查询定义的示例。示图200显示过滤数据存储的视图的查询的示例组件。
根据某些实施例,业务或数据库搜索应用程序可以提供用于配置过滤器查询的用户界面。可以使具有关于底层数据结构的深厚知识的有经验的或专家用户能够使用视图之间的共同元素来配置查询。某些示例实施例通过此处所描述的机制提供查询的定义和查询的使用的分离。示图200中的配置用户界面提供属于给定用户的账户的基本查询定义的示例,并可以允许用户设置或修改定义。用户界面提供相对于彼此的数据源202的结构,以及它们之间的链接204。用户界面可以提供数据存储用来标识视图的名称206。
在一个示例场景中,数据存储应用程序可以通过应用程序的用户界面组件向用户提供视图选集以构建一个或多个过滤查询。最初,应用程序可以认证用户。经认证的用户的特权可以确定选择哪些视图加载到用户界面中。如果用户对其中一个视图的读访问权,该视图可以被加载到用户界面中。应用程序还可以根据最初加载的视图及其他视图之间的关系,进一步确定要加载的视图。它可以是CUSTOMER(顾客)视图和SALES ORDER(销售订单)视图之间的关系,其中SALES ORDER视图与作为SALESORDER的所有者的CUSTOMER具有关系。应用程序可以确定视图之间的共同元素,并提供这些视图作为选集来构建查询。示例用户可以通过用户界面选择一个或多个视图。
应用程序可以使用视图之间的共同元素来构建查询。应用程序也可以在用户选择视图时,在文本框中显示过滤器查询串。应用程序也可以允许用户编辑文本框中的查询串。如果应用程序检测到用户包括视图或与视图不相关的其他结构,则应用程序可以禁用查询并将无功能的部分警告给正在编辑过滤器查询的用户。
图3示出了两个用户以及他们在图2中所使用的表的安全配置的示例,其中一个用户具有有限的权限而另一个用户具有完全访问权。在图示300中,示出了具有有限的权限的人员A和具有完全访问权的人员B以及他们在示图200中所使用的表的安全配置。
根据某些实施例,可以使用相同查询来限制多个数据源(CUSTOMER与ACCOUNT(账户)),因为它们两者都是来自示图200的查询的结构的一部分。示图300中的表包括诸如CUSTOMER(顾客)、CUSTOMERPOSTINGGROUP(顾客过账群)、ACCOUNT(账户),以及ITEM(项目)之类的数据源的数据源308列;列出对于数据源的各单独访问权限的访问控制列表310列;以及,列出相关联的查询320的安全查询312列。根据示例配置,人员A 314具有对由安全查询“MyCustomerAccounts(我的顾客账户)”限制的顾客记录的读和写访问,对顾客过账群的读访问,对由安全查询“MyCustomerAccounts”限制的账户记录的读和写访问,以及对项目记录的读访问。人员B 318具有对顾客、顾客过账群以及账户记录的读和写访问,而具有对项目记录的读访问。
图4A到4D示出了根据各实施例的图2和3的用户可以访问的记录集合以及数据源将如何查找被应用了过滤器的记录。
图4A中的示图400A包括数据源中的记录的完全列表以及同时来自图3的人员B可以访问的记录。记录按照诸如CUSTOMER(顾客)422、ACCOUNT(账户)424以及CUSTOMERPOSTINGGROUP(顾客过账群)426之类的数据源来编组。记录将顾客标识符(ID)链接到销售人员标识符(SALESPERSON ID)以及过账群标识符(POSTINGGROUP)。除可用的账户标识符(ACCOUNT ID)列表之外,它们还将顾客过账群标识符链接到账户标识符(ACCOUNT ID)以及描述(DESCRIPTION)(例如,评级)。
示图400B包括人员A可以访问的记录集合(示图400A中的记录的子集)。基于示图300中的示例配置,人员A由图2中定义的对于数据源CUSTOMER以及数据源ACCOUNT的查询“MyCustomerAccounts”来限制。对于CUSTOMER POSTING GROUP数据源没有限制,因为它没有在示图300中定义的安全性过滤器。
示图400C分别示出了当对CUSTOMER数据源应用过滤器,限制它示出具有CUSTOMER POSTING GROUP 1的记录时,CUSTOMER数据源可分别如何查找人员A和人员B,442以及444。如果用户应用过滤器(在只示出“GOLD(金)”顾客的示例场景中),它可以与已经设置的安全性过滤器相结合。这也可以是用户可以选择自己应用的预定义查询。
示图400D示出了示例452,其中具有完全访问权的用户(例如,人员B)选择应用在图2中定义的安全性过滤器。根据该示例场景,人员B可能已经选择充当人员C,人员C是通过具有SALESPERSON ID=“C”来标识的。
在某些示例实施例中,应用程序可以将构建的过滤器查询附接到视图。当应用程序检测到预定的准则时,应用程序可以提取查询的结构,并将其与原始视图组合,以生成经过滤的视图结果代替原始视图结果。应用程序可以通过评估用户对视图的访问权限和请求视图的用户,评估该请求以确定足以触发查询的结构的提取并将其与原始视图组合以便生成经过滤的视图结果代替原始视图结果的准则。访问权限的示例可包括:对于视图或其元素的读、写和/或创建特权。如果预定的准则包括用户的访问视图的特权,则应用程序可以使用用户的特权作为预定的准则来提取查询的结构并将其与原始视图组合以生成经过滤的视图结果代替原始视图结果,以及定制针对请求的响应以只向用户显示相关数据。
在某些示例实施例中,视图可以使用SQL来定义,且定义可以看起来象这样:
SELECT ID,NAME
FROM ACCOUNT
此外,过滤器查询也可以使用SQL来定义,且定义可以看起来象这样:
当应用程序检测到对ACCOUNT视图的请求时,它将使用与原始视图相组合的过滤器查询的结构来产生结果。SQL可以看起来象这样:
上面所提供的示例只是为了说明,不构成对各实施例的限制。例如,在某些实施例中,SQL可以被优化,且组合的SQL可以不看起来像上面的示例,而是可以采取缩短并优化的形式。
过滤器查询可以被构建,从视图检索数据。可另选地,用户可以被允许为诸如“USER”视图之类的视图构建并附接多个查询。然后,可以选择对应的查询,根据请求视图的用户的请求准则,提取查询的结构并将其与原始视图相组合以提供经过滤的视图来代替原始视图。
当用户发起访问可用的视图中的任何一个的访问事件时,可以提取查询的结构并将其与原始视图相组合以生成经过滤的视图结果来代替原始视图结果。此外,经过滤的视图结果还可以被限于企图访问由查询涵盖的数据元素的那些访问事件。访问事件可以是从视图之一检索数据的另一个查询。在所提供的示例中,用户可以接收与跨视图提供的账户相关的所有数据。
应用程序可以提取查询的结构并将其与原始视图组合以生成经过滤的视图结果来代替原始视图结果,并将经过滤的视图结果提供给寻求对对应的视图的访问的其他用户。在一个示例场景中,应用程序可以将经过滤的视图提供给带有来自过滤器查询的构造器的继承的许可的用户,诸如与查询构造器相关的其他用户。示例相关的其他用户可包括对等伙伴、经理、直属下属、同事等等。
安全的视图可以要求具有特权的安全管理员使用并附接安全性过滤器。安全性过滤器查询的创建可以由带有应用程序的数据模型的详细知识的某人来执行。然后,它可以被任何人用来指定为安全性过滤器或指定为用户视图。创建者通常可以不与用户相同。例如,安全管理员可以创建安全性过滤器查询并将其附接到视图。可以将多个安全查询附接到视图。安全管理员可以使用安全性过滤器查询通过只暴露视图的数据元素的子集来限制对视图的访问。安全管理员也可以在安全性过滤器查询中包括评估触发器。应用程序可以评估诸如访问视图的用户特权及其他设置之类的准则,以提取查询的结构并将其与原始视图组合以生成经过滤的视图结果代替原始视图结果。安全性过滤器查询可以使用用户标识(id)来确定用户的凭证以及对对应的视图的访问权限。对于没有足够特权的用户,可以限制对经过滤的视图的访问。可另选地,当用户的特权充分匹配诸如读取数据元素的访问权限之类的准则时,可以提供经过滤的视图结果。
根据其他实施例,应用程序可以响应于从安全管理员接收到安全性过滤器查询来对视图应用安全性过滤器查询。应用程序可以从主存视图的数据存储检索安全性过滤器查询的元数据。元数据可包括诸如表、列,以及行集合之类的查询中的定义的组件的数据元素。应用程序可以从数据存储中提取要被过滤的视图的表结构定义。表结构定义可包括联接和过滤器。接下来,应用程序可以将表结构定义附加到诸如SQL语句之类的安全性过滤器查询的生成的脚本。另外,应用程序还可以将一个以上的安全性过滤器查询附接到视图。应用程序可以提取查询的结构,并将其与原始视图组合以生成经过滤的视图结果代替原始视图结果,并根据请求准则将经过滤的视图提供给发出请求的用户。
图2到3中的示例场景和模式被示为带有特定的组件、数据类型,以及配置。各实施例不仅限于根据这些示例配置的系统。提供管理视图的过滤器查询可以按在应用程序以及用户界面中使用较少的或额外的组件的配置来实现。在一个示例场景中,可以使用过滤器查询或安全性过滤器查询来管理对数据存储的数据表或其他数据实体的访问。此外,图2到3所示出的示例模式以及组件以及它们的子组件还可以使用此处所描述的原理利用其他值按类似的方式实现。
图5是其中可以实现根据实施例的系统的网络环境。本地以及远程资源可以通过一个或多个服务器514或诸如主存的服务之类的单一服务器(例如,web服务器)516来提供。诸如数据存储应用程序之类的应用程序可以通过网络510与在诸如智能电话513、平板设备512或膝上型计算机511(“客户端设备”)之类的单个计算设备上的客户端界面进行通信。
如上文所讨论的,应用程序可以提供管理对视图的访问的过滤器查询。应用程序可以通过将过滤器查询附接到视图,自动地将过滤器查询与视图相关联。可另选地,应用程序可以实现控制对视图的访问的安全性过滤器查询。如之前所讨论的,客户机设备511-513可实现对远程服务器(例如,服务器514中的一个)上执行的应用的访问。服务器可直接地或通过数据库服务器518来从数据存储519中检索或向数据存储519存储相关的数据。
网络510可包括服务器、客户机、因特网服务供应商以及通信介质的任何拓扑结构。根据各实施例的系统可以具有静态或动态拓扑结构。网络510可包括诸如企业网络等安全网络、诸如无线开放网络等非安全网络、或因特网。网络510还通过诸如公共交换电话网络(PSTN)或蜂窝网络等其他网络来协调通信。此外,网络510可包括诸如蓝牙或类似网络等短程无线网络。网络510提供此处描述的节点之间的通信。作为示例而非限制,网络510可以包括例如声学、RF、红外线和其它无线介质等无线介质。
可以使用计算设备、应用程序、数据源、以及数据分发系统的许多其他配置来提供管理对视图的访问的过滤器查询。此外,图5中所讨论的联网环境只是为了说明。各实施例不仅限于示例应用程序、模块,或过程。
图6及相关联讨论旨在提供对其中可实现各实施例的合适计算环境的简要概括描述。参考图6,该图示出了诸如计算设备600之类的根据各实施例的应用的示例计算操作环境的框图。在基本配置中,计算设备600可包括至少一个处理单元602和系统存储器604。计算设备600还可以包括在执行程序时协作的多个处理单元。取决于计算设备的确切配置和类型,系统存储器604可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存等)或是两者的某种组合。系统存储器604通常包括适于控制平台的操作的操作系统605,例如来自华盛顿州雷蒙德市的微软公司的和WINDOWS操作系统。系统存储器604也可以包括诸如程序模块606、应用程序622,以及过滤器查询模块624之类的一个或多个软件应用程序。
根据各实施例,应用程序622可以从用户界面组件接收过滤器查询。过滤器查询模块624可以在视图中实现过滤器查询。示例可包括确定访问视图的用户特权,以及响应于执行过滤器查询,确定要从视图中检索的数据元素。该基本配置在图6中通过虚线608内的那些组件示出。
计算设备600可以具有附加特征或功能。例如,计算设备600还可包括附加数据存储设备(可移动和/或不可移动),诸如,例如磁盘、光盘或磁带。在图6中通过可移动存储609和不可移动存储610示出这样的附加存储。计算机可读存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质是计算机可读存储器设备。系统存储器604、可移动存储609和不可移动存储610都是计算机可读存储介质的示例。计算机可读存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光学存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或能用于存储所需信息且能够由计算设备600访问的任何其它介质。任何这样的计算机可读存储介质都可以是计算设备600的一部分。计算设备600也可具有输入设备612,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备和类似输入设备。还可以包括输出设备614,诸如显示器、扬声器、打印机和其它类型的输出设备。这些设备在本领域中公知且无需在此处详细讨论。
计算设备600还可以包含允许该设备与其它设备618通信的通信连接616,诸如通过分布式计算环境中的无线网络、卫星链路、蜂窝链路和类似机制。其它设备618可包括执行通信应用的计算机设备、存储服务器和类似设备。通信连接616是通信介质的一个示例。通信介质可以包括计算机可读指令、数据结构、程序模块、或者诸如载波或其它传输机制等的已调制数据信号中的其它数据,并且包括任何信息传递介质。术语“已调制数据信号”指其一个或多个特征以这样的方式设置或改变以便在信号中对信息进行编码的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。
各示例实施例还包括各种方法。这些方法可以用任何数量的方式,包括本文中所描述的结构来实现。一种此类方式是通过本文中描述的类型的设备的机器操作。
另一可任选方式是该方法的各个操作中的一个或多个操作在结合一个或多个人类操作者执行该方法的各个操作中的某一些的情况下被执行。这些操作员不必彼此位于一处,而是每一个操作员都可以只与执行程序的一部分的机器在一起。
图7示出了根据各实施例的提供管理对视图的访问的过滤器查询的过程的逻辑流程图。在某些示例中,过程700可以通过诸如数据存储应用程序之类的应用程序来实现。
过程700可以从操作710开始,其中,可以由用户定义过滤器查询。在操作720中,可以由用户定义视图。根据某些实施例,操作710和720可以按任何顺序执行或一起执行。在操作710和720之后的下一个操作730中,可以通过将过滤器查询附接到视图,将过滤器查询与视图相组合。接下来,在操作740中,可以检测对视图的请求。此操作后面可以跟着操作750,其中,可以使用过滤器查询的结构和原始视图定义,将过滤器查询与视图相组合。
在操作750之后,可以在操作760中执行组合的过滤器查询和原始视图定义。在操作760中,还可以将该执行的结果提供给用户。
一些实施例可以以包括通信模块、存储器,以及处理器的计算设备实现,其中,处理器和存储在存储器中的指令一起执行如上文所描述的方法或类似的东西。其他实施例可以实现为在其上存储了用于执行如上文所描述的方法或类似的东西的指令的计算机可读存储介质。
过程700中包括的操作只是为了说明。根据各实施例的提供管理对视图的访问的过滤器查询可以使用此处所描述的原理,通过类似的过程来实现,步骤少一些或多一些,也可以按不同的操作顺序来实现。
以上说明书、示例和数据提供了对各实施例的组成的制造和使用的全面描述。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特定特征或动作。相反,上述具体特征和动作是作为实现权利要求和各实施方式的示例形式而公开的。

Claims (10)

1.一种计算设备上执行的用于提供管理对视图的访问的过滤器查询的方法,所述包括:
从用户接收所述过滤器查询;
通过将所述过滤器查询附接到所述视图,将所述过滤器查询与所述视图相关联;
检测对所述视图的请求;以及
提供所述过滤器查询的结果来代替所述视图。
2.如权利要求1所述的方法,其特征在于,进一步包括:
评估所述请求以确定满足预定准则来触发所述过滤器查询;以及
执行所述过滤器查询。
3.如权利要求2所述的方法,其特征在于,进一步包括:
认证发送所述请求的另一用户以确定确定所述另一用户的访问所述视图的特权作为所述预定准则;以及
确定所述另一用户具有访问所述视图的所述特权。
4.如权利要求2所述的方法,其特征在于,进一步包括:
认证发送所述请求的另一用户以确定所述另一用户的访问所述视图的特权作为所述预定准则;以及
确定所述另一用户缺乏访问所述视图的所述特权。
5.如权利要求1所述的方法,其特征在于,进一步包括:
确定所述视图与其他视图的关系;以及
根据所述关系,将所述过滤器查询与所述视图相关联。
6.如权利要求1所述的方法,其特征在于,进一步包括:
确定所述视图与其他视图的共同元素;以及
根据所述共同元素,将所述过滤器查询与所述视图相关联。
7.一种用于提供管理对视图的访问的安全性过滤器查询的计算设备,所述计算设备包括:
被配置为存储指令的存储器;以及
耦合到所述存储器的处理器,所述处理器结合存储在所述存储器中的指令来执行应用程序,其中所述应用程序被配置成:
从安全管理员接收安全性过滤器查询;
通过将所述安全性过滤器查询附接到所述视图,将所述安全性过滤器查询与所述视图相关联;
检测对所述视图的请求;
执行所述安全性过滤器;以及
提供所述安全性过滤器查询的结果来代替所述视图。
8.如权利要求7所述的计算设备,其特征在于,所述应用程序进一步被配置成:
从主存所述视图的数据存储检索所述安全性过滤器查询的元数据。
9.如权利要求8所述的计算设备,其特征在于,所述应用程序进一步被配置成:
从所述数据存储中提取所述视图的包括联接和过滤器的表结构定义。
10.一种在其上存储了用于提供管理对视图的访问的过滤器查询的指令的计算机可读存储器设备,所述指令包括:
从用户接收所述过滤器查询;
确定所述视图与其他视图的共同元素;
根据所述共同元素通过将所述过滤器查询附接到所述视图,将所述过滤器查询与所述视图相关联;
检测对所述视图的请求;
执行所述过滤器查询;以及
提供所述执行的过滤器查询的结果来代替所述视图。
CN201380058859.1A 2012-11-09 2013-11-09 利用预定义的查询来过滤视图 Active CN104769607B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/673,775 US9275112B2 (en) 2012-11-09 2012-11-09 Filtering views with predefined query
US13/673,775 2012-11-09
PCT/US2013/069358 WO2014074961A2 (en) 2012-11-09 2013-11-09 Filtering views with predefined query

Publications (2)

Publication Number Publication Date
CN104769607A true CN104769607A (zh) 2015-07-08
CN104769607B CN104769607B (zh) 2018-09-21

Family

ID=49679627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380058859.1A Active CN104769607B (zh) 2012-11-09 2013-11-09 利用预定义的查询来过滤视图

Country Status (6)

Country Link
US (1) US9275112B2 (zh)
EP (1) EP2917872A2 (zh)
JP (1) JP2015535622A (zh)
KR (1) KR20150084006A (zh)
CN (1) CN104769607B (zh)
WO (1) WO2014074961A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110168523A (zh) * 2016-10-28 2019-08-23 微软技术许可有限责任公司 改变监测跨图查询
US11748506B2 (en) 2017-02-27 2023-09-05 Microsoft Technology Licensing, Llc Access controlled graph query spanning

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720972B2 (en) 2013-06-17 2017-08-01 Microsoft Technology Licensing, Llc Cross-model filtering
US20170316052A1 (en) * 2016-05-01 2017-11-02 Microsoft Technology Licensing, Llc Analytics interface for a transactional data store
US10831784B2 (en) * 2016-05-09 2020-11-10 Sap Se Integration of relational calculation views into a relational engine
US11106427B2 (en) * 2017-09-29 2021-08-31 Intel Corporation Memory filtering for disaggregate memory architectures
US10430606B1 (en) * 2018-04-30 2019-10-01 Aras Corporation System and method for implementing domain based access control on queries of a self-describing data system
US11048815B2 (en) 2018-08-06 2021-06-29 Snowflake Inc. Secure data sharing in a multi-tenant database system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112796A (ja) * 1998-10-02 2000-04-21 Ncr Internatl Inc デ―タベ―ス管理システムにおけるデ―タプライバシ―管理の方法およびシステム
US20040015783A1 (en) * 2002-06-20 2004-01-22 Canon Kabushiki Kaisha Methods for interactively defining transforms and for generating queries by manipulating existing query data
US20050060647A1 (en) * 2002-12-23 2005-03-17 Canon Kabushiki Kaisha Method for presenting hierarchical data
CN1760791A (zh) * 2004-10-14 2006-04-19 微软公司 用于合并安全策略的方法和系统
US20060212470A1 (en) * 2005-03-21 2006-09-21 Case Western Reserve University Information organization using formal concept analysis
CN102314449A (zh) * 2010-07-05 2012-01-11 日电(中国)有限公司 后置数据访问过滤器和过滤方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6947903B1 (en) * 1999-08-06 2005-09-20 Elcommerce.Com.Inc. Method and system for monitoring a supply-chain
US7774220B2 (en) * 1999-11-29 2010-08-10 The Strategic Coach Inc. Project management system for aiding users in attaining goals
US6499029B1 (en) * 2000-03-29 2002-12-24 Koninklijke Philips Electronics N.V. User interface providing automatic organization and filtering of search criteria
US6850944B1 (en) * 2000-11-20 2005-02-01 The University Of Alabama System, method, and computer program product for managing access to and navigation through large-scale information spaces
JP2002175217A (ja) * 2000-12-07 2002-06-21 Toppan Printing Co Ltd データベースシステム及びデータベースのアクセス制御方法並びにデータベースのアクセス制御プログラムを記録した記録媒体
US20020095405A1 (en) * 2001-01-18 2002-07-18 Hitachi America, Ltd. View definition with mask for cell-level data access control
JP2002312220A (ja) * 2001-01-18 2002-10-25 Hitachi Ltd ユーザ定義機能を使用したセルレベルのデータアクセス制御
US7356840B1 (en) 2001-06-19 2008-04-08 Microstrategy Incorporated Method and system for implementing security filters for reporting systems
JP2003006194A (ja) * 2001-06-22 2003-01-10 Mitsubishi Electric Corp データベースアクセス制御システム
US7240046B2 (en) * 2002-09-04 2007-07-03 International Business Machines Corporation Row-level security in a relational database management system
US7661141B2 (en) * 2004-02-11 2010-02-09 Microsoft Corporation Systems and methods that optimize row level database security
US7562092B2 (en) * 2004-12-22 2009-07-14 Microsoft Corporation Secured views for a CRM database
US20060224692A1 (en) * 2005-03-29 2006-10-05 Bea Systems, Inc. Adhoc queries for services
US7720863B2 (en) * 2006-03-17 2010-05-18 Microsoft Corporation Security view-based, external enforcement of business application security rules
US7584178B2 (en) 2006-04-20 2009-09-01 International Business Machines Corporation Query condition building using predefined query objects
US7912875B2 (en) * 2006-10-31 2011-03-22 Business Objects Software Ltd. Apparatus and method for filtering data using nested panels
US8996542B2 (en) * 2006-12-13 2015-03-31 Adobe Systems Incorporated Navigation of hierarchical data sets
US8306999B2 (en) * 2007-03-23 2012-11-06 Sas Institute Inc. Computer-implemented systems, methods, and computer program product for providing row-level security in a database network
US8099446B2 (en) * 2007-12-12 2012-01-17 International Business Machines Corporation Digital content searching tool
JP2010282304A (ja) * 2009-06-03 2010-12-16 Mitsubishi Electric Corp データ管理検索システム
US9471648B2 (en) * 2010-03-01 2016-10-18 Salesforce.Com, Inc. System, method and computer program product for displaying one or more data sets to a user
EP2453368B1 (en) 2010-11-12 2017-05-31 Accenture Global Services Limited Custom web services data link layer
US9298764B2 (en) * 2012-05-23 2016-03-29 Oracle International Corporation Partial source verification of EDC data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112796A (ja) * 1998-10-02 2000-04-21 Ncr Internatl Inc デ―タベ―ス管理システムにおけるデ―タプライバシ―管理の方法およびシステム
US20040015783A1 (en) * 2002-06-20 2004-01-22 Canon Kabushiki Kaisha Methods for interactively defining transforms and for generating queries by manipulating existing query data
US20050060647A1 (en) * 2002-12-23 2005-03-17 Canon Kabushiki Kaisha Method for presenting hierarchical data
CN1760791A (zh) * 2004-10-14 2006-04-19 微软公司 用于合并安全策略的方法和系统
US20060212470A1 (en) * 2005-03-21 2006-09-21 Case Western Reserve University Information organization using formal concept analysis
CN102314449A (zh) * 2010-07-05 2012-01-11 日电(中国)有限公司 后置数据访问过滤器和过滤方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110168523A (zh) * 2016-10-28 2019-08-23 微软技术许可有限责任公司 改变监测跨图查询
US11748506B2 (en) 2017-02-27 2023-09-05 Microsoft Technology Licensing, Llc Access controlled graph query spanning

Also Published As

Publication number Publication date
US20140136552A1 (en) 2014-05-15
CN104769607B (zh) 2018-09-21
EP2917872A2 (en) 2015-09-16
US9275112B2 (en) 2016-03-01
JP2015535622A (ja) 2015-12-14
KR20150084006A (ko) 2015-07-21
WO2014074961A3 (en) 2014-10-16
WO2014074961A2 (en) 2014-05-15

Similar Documents

Publication Publication Date Title
CN104769607A (zh) 利用预定义的查询来过滤视图
CN101583952B (zh) 集成企业搜索系统与自定义访问控制应用程序编程接口
CN102254017B (zh) 数据可视化的智能默认
US9594609B2 (en) Multi-application workflow integration
US10061788B2 (en) Transformation of document flow to contributors network
EP3646226B1 (en) Access control manager configuration based on log files mining
US9020802B1 (en) Worldwide distributed architecture model and management
CA2798985C (en) Feature set differentiation by tenant and user
US9280381B1 (en) Execution framework for a distributed file system
CA3031884C (en) System and method for generating an informational packet for the purpose of marketing a vehicle to prospective customers
CN102378975A (zh) 将协作功能扩展到外部数据
AU2015204742B2 (en) Methods for generating an activity stream
EP3173951B1 (en) Integrated framework for secured data provisioning and management
JP2010529554A5 (zh)
CN101796752A (zh) 无限企业平台
CN102982050A (zh) 呈现基于时间的动作信息
CN1797449A (zh) 用于元数据驱动的商业逻辑进程的方法和装置
WO2012160381A2 (en) Platform for the delivery of content and services to networked connected computing devices
US8832030B1 (en) Sharepoint granular level recoveries
CN102132267B (zh) 动态元数据
Yao et al. Building architectures for data‐intensive science using the ADAGE framework
US20190190809A1 (en) Platform for Multi-Function Network Resource Analysis
US20150026218A1 (en) System and Method for Automated Document Linking
US10754838B1 (en) Registration framework for an analytics platform
Swain Catalyst: A Cloud-based Data Catalog System for a Swedish Mining Company

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20171023

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant