CN104508678A - 商业数据***中针对承租人的安全和数据隔离 - Google Patents

商业数据***中针对承租人的安全和数据隔离 Download PDF

Info

Publication number
CN104508678A
CN104508678A CN201380040713.4A CN201380040713A CN104508678A CN 104508678 A CN104508678 A CN 104508678A CN 201380040713 A CN201380040713 A CN 201380040713A CN 104508678 A CN104508678 A CN 104508678A
Authority
CN
China
Prior art keywords
data
lessee
user
manipulation request
given
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
CN201380040713.4A
Other languages
English (en)
Other versions
CN104508678B (zh
Inventor
V·乔日
A·那拉
M·G·那图
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 CN104508678A publication Critical patent/CN104508678A/zh
Application granted granted Critical
Publication of CN104508678B publication Critical patent/CN104508678B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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
    • 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
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

一种多承租人主控***从承租人接收商业数据以及承租人标识数据。来自多个不同承租人的数据被存储在单个数据库上,但是对应于每个承租人的数据在数据库中通过用分区标识符来标记该数据来被划分。因此,主控***仅允许各个承租人访问它们自己的数据。

Description

商业数据***中针对承租人的安全和数据隔离
背景
商业组织经常使用许多不同类型的商业计算机程序或应用。一些这样的程序包括企业资源规划(ERP)***、顾客资源管理(CRM)***、业务条线(LOB)应用以及许多其它商业相关的程序。
许多组织还对它们的商业程序实现基于角色的安全性。即,用户可在公司处履行特定的角色,并且具有该角色的用户可访问特定数据、但不可访问其它数据。例如,处于人力资源角色的用户可访问各个雇员的薪水和个人档案,但不可访问销售数据或其它类型的一般商业信息。相反,处于销售经理角色的用户可访问公司的跨各个产品线的多个级别的销售数据,但不可访问其他雇员的个人档案和薪水信息。
此外,许多公司将它们的商业相关数据中的大多数视为机密或专有的。例如,许多公司将销售记录、销售线索、个人档案信息以及一大堆其它商业信息视为机密并且专属于公司本身。公司不想要其它公司(诸如竞争对手或甚至相关公司)访问这些数据。
在这个上下文中,可产生以下情景:其中公司可按某些方式变得相互有关,但是它们依然不希望相互共享信息。例如,可能一公司是通过购置独立商业机构(或子公司)来增长的控股公司。各子公司维护对它们自身的重要管理和运营控制,并且针对每个子公司的数据和处理不要在其它子公司中共享。
一些当前的方案要求各子公司中的每一个都具有其自己分开的数据库来存储其自己的商业数据。在其它当前方案中,每个分开的子公司被给予其自己的、分开的数据库产品。存在针对各子公司中的每一个子公司的给定商业数据程序的完全分开的安装。例如,每个子公司可具有ERP***的其自己的、分开的安装。
然而,也可发生子公司希望采集它们的信息技术(IT)资源并利用单个商业软件应用。即,子公司(或子公司的子集)可能希望共享单个商业应用安装的花费,但是它们依然希望将它们的商业数据与其它共享相同商业应用的子公司完全分开并隔离。类似地,各子公司中的每一个可能希望实现其自己的基于角色的安全规则或其它安全规则。
提供以上讨论仅用作一般的背景信息,并不旨在帮助确定所要求保护的主题的范围。
发明内容
一种多承租人主控***从承租人接收商业数据以及承租人标识数据。来自多个不同承租人的数据被存储在单个数据库上,但是对应于每个承租人的数据在数据库中通过用分区标识符来标记该数据来被划分。因此,主控***仅允许各个承租人访问它们自己的数据。
提供本概述是为了以简化的形式介绍将在以下具体实施方式中进一步描述的概念选择。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。所要求保护的主题不限于解决在背景中提及的任何或所有缺点的实现。
附图说明
图1是商业数据***的一个实施例的框图。
图2是示出在设立承租人时图1所示的***的总体操作的一个实施例的流程图。
图2A-2E显示说明性用户界面显示。
图3示出了被划分的数据的数据结构的一个实施例。
图3A-3C显示了显示表中的被划分的数据的示例性用户界面显示。
图4是示出在主控对商业数据的多承租人访问时图1所示的***的总体操作的一个实施例的流程图。
图5是示出在提供数据访问和高速缓存操作时图1所示的***的操作的一个实施例的流程图。
图5A显示其中数据存储被划分、使得承租人的子集共享数据的体系架构。
图6是显示各个体系架构中图1中的***的一个实施例的框图。
图7-10示出了移动设备的各实施例。
图11显示了一个说明性计算环境的框图。
具体实施方式
图1显示了商业数据***100的一个实施例的框图。商业数据***100显示承租人102和104,它们中的每一个分别具有多个客户端(或用户)106、108和110、112。承租人102和104可访问服务器层114,该服务器层114本身具有多个服务器116、118和120。如图1中显示的,承租人102和104要么通过网络122要么直接访问服务器层114(如箭头124和126分别指示的)。服务器层114对(来自承租人102和104的)访问存储在数据存储128中的数据的请求进行服务。服务器层114还使用高速缓存130来实现高速缓存。
在一个实施例中,***100还包括管理员组件132,该管理员组件132可被管理员用于在商业数据***100中设立新的承租人。每个新的承租人都使用相同的***(诸如相同的ERP或CRM安装或其它商业应用安装)。此外,在一个实施例中,服务器层114访问针对承租人102和104中每一个的安全规则。安全规则由框134指示。由此,服务器层114可为每个承租人102和104实现安全性。在一个实施例中,安全规则定义当客户端登录到承租人102和104时的认证过程,并且它们还按照每承租人的基础来定义基于角色的安全性。当然,也可实现其它类型的安全规则或安全过程。
图1显示至少每个承租人102和104都具有处理器136和138。当然,应该注意到,每个客户端也可具有它自己的处理器,并且出于简明的目的,显示了针对每个承租人的一个处理器。图1还显示了每个服务器116、118和120可具有其自己的处理器140、142和144。还将注意到,服务器层114可具有被每个服务器访问的单个处理器,但是出于示例的目的,显示针对每个服务器的各个处理器。在一个实施例中,处理器中的每一个都包括具有相关联的存储器和定时电路***(未示出)的计算机处理器。处理器形成***100的功能部件,并且由***100中的其他组件激活,并且促进该其他组件的功能。
还应注意到,尽管数据存储128被显示为单个数据存储,但是也可被实现为多个不同的数据存储,并且它们可要么被定位在服务器层114本地要么被定位为服务器层114远程。数据存储128说明性地作为用于被***100中所有承租人使用的单个数据库安装的存储。类似地,高速缓存130被显示为单个存储器内高速缓存,但是它也可用其它方式来实现,诸如被实现在多个不同的存储器中。
此外,图1显示了,在一个实施例中,每个客户端106-112分别具有其自己的配置数据146、148、150和152。配置数据说明性地标识每个客户端的角色以及每个客户端所属于的特定承租人。将注意到,承租人也可具有针对其多个客户端的公共配置数据集,但是仅作为示例,示出针对每个客户端的分开的配置数据(或配置文件)。
尽管在以下关于剩余的附图给出对于***100的操作的详细描述,但是现在提供概览以增强对剩余描述的理解。***100说明性地表示以下场景:其中承租人102和104希望通过使用单个ERP应用(或其它商业相关应用)和通过将它们的所有数据存储在公共数据库128上来采集信息技术资源,但依然维持它们自己的各个数据的划分使得这些数据不能被其它承租人查看或访问。例如,在一个示例中,承租人102和104两者均是共同拥有的企业(诸如控股母公司的子公司)。在这种情况下,每个承租人102和104说明性地维持其自己的管理和运营控制,并且它希望将它的数据安全地与其它承租人划分开。在这种情况下,客户端106-108对应于由承租人102使用的商业相关应用(诸如例如,ERP应用)的用户,并且客户端110和112对应于由承租人104使用的相同应用的用户。承租人102和104两者均使用商业相关应用的相同安装。
当新的组织被添加到控股公司时(即,当新的承租人被添加到***100时),管理员133说明性地通过管理员组件132访问服务器层114。组件132说明性地具有用户界面组件,该用户界面组件生成被提供到管理员133的用户界面显示135。用户界面显示135说明性地包括用户输入机制,该用户输入机制允许管理员133提供用户输入来操纵由服务器层114实现的并由***的各个承租人的各个客户端使用的商业相关应用。用户输入机制可接收来自点击设备(诸如鼠标或轨迹球)、来自键盘(虚拟或硬件)的用户输入、在显示屏是触敏屏的情况下的触摸手势、语音输入等。图2A显示了允许管理员设立新的承租人的用户界面显示179的一个实施例。管理员使用用户输入机制181和183来标识并设立(或创建)新的承租人。
为了设立新的承租人,管理员133说明性地将新的承租人的客户端之一标识为安全管理员。例如,假设承租人102是要被添加的新的承租人。管理员133可将客户端106标识为针对承租人102的安全管理员。
图2B显示了用户界面显示125的另一实施例。显示125可被呈现给管理员以供创建新的承租人。显示125包括一组列,包括分区键列127和名称列129。用户可选择分区键列127中的单元格并输入分区键并在列129中相邻的单元格中输入对应的分区名称。通过这种方式,管理员可设立可在数据存储128中和高速缓存130中使用的承租人(即,分区)以对各个客户端的数据进行划分。可在图2B中看到,分区键列127包括三个分区键“初始”、“P1”和“P2”。对应的名称分别是“初始分区”、“P1”和“P2”。
图2C是允许管理员133将新的承租人的客户端指定为安全管理员的用户界面显示185的一个实施例。管理员可使用用户输入机制187来完成此操作。
这将安全组件分发到客户端106,使得客户端106能登录并设立将使用承租人102来访问数据存储128中的信息的其它用户(诸如客户端108)。安全管理员(现在是客户端106)还可标识安全规则和承租人102的每个用户的角色。图2D显示了允许安全管理员(例如,现在是客户端106)来完成此操作的用户界面显示189的一个实施例。可使用用户输入机制191来设立承租人的用户或客户端,并且可使用输入机制193来设立安全规则。安全规则角色和用户被存储为在图1中的134处指示的用于每个承租人的安全规则。对应于客户端108的角色信息以及客户端108属于承租人102的事实被存储在对应于该客户端108的配置文件(或配置数据)148中。当安全管理员致动用户输入机制(诸如图2D中的机制195)时,配置文件可被自动地分发到客户端或被发送。
图2E显示了管理员可用来在给定承租人上设立用户的用户界面显示131的另一实施例。可以看到,管理员选择了用户选项卡133,该用户选项卡133允许管理员在一组文本框和复选框中键入关于用户的各种信息。例如,管理员可在文本框135中键入用户ID,在框137中键入用户名称,在框139中键入网络域并在框141中键入别名用户还可说明性地使用下拉菜单143来定义帐户类型以及使用另一下拉菜单145来选择默认公司。管理员接着可通过对复选框147打勾来启用这个用户并且用户可通过对框149打勾来将这个用户分配到默认分区。
管理员可通过在框151中输入信息来说明性地建立针对这个用户的简档。管理员还可通过致动按钮153来将一个或多个角色分配到这个用户。这个说明性地带出可被管理员选择或以其它方式分配到这个用户的一组角色155。类似地,通过致动下拉框157,管理员可审阅所选角色的特权,并且通过致动下拉框159,管理员可审阅已经被分配到所选角色的其他用户。当然,图2E中显示的用户界面显示131仅仅是说明性的并且也可使用标识用户和分配角色的其它方式。
当客户端108希望访问数据存储128上的信息或在数据存储128上存储信息时,客户端108首先登录到承租人102。配置数据148向服务器层114指示客户端108的角色以及客户端108属于哪个承租人。因此,当客户端108提供要被存储在数据存储128上的信息时,例如,服务器层114将该数据作为承租人数据154存储在数据存储128中。服务器层114还说明性地将承租人数据154标识为来自承租人102。由此,服务器层114将所有承租人数据154、156和158标识为专用于给定承租人。当客户端随后登录并请求访问数据存储128上的数据时,服务器层114将特定客户端限于仅访问对应于客户端通过其进行登录的承租人102或104的数据154、156和158。例如,如果客户端110随后通过客户端104登录,则服务器层114通过配置数据150标识客户端110具有给定角色并通过承租人104进行了登录。因此,在给定承租人104中客户端110的角色的情况下,服务器层114将客户端110的访问限为仅对对应于承租人104的数据。
当然,也将注意到,***100显示具有其自己分开的承租人数据154-156的每个单独的承租人102-104。然而,可能是承租人102-104的子集可想要它们的数据与承租人102-104的另一子集划分开。在这种情况下,每个子集都使其数据被服务器层114划分,使得这些数据能被该子集中的任一承租人访问。然而,这些数据将不能被该子集外部的任一承租人访问。仅出于示例的目的,数据在图1中被显示为按照逐承租人的基础(而非按照逐子集的基础)被划分。
由于对于服务器层114而言作出到数据存储128的多次往返可能不是理想的,所以服务器层114实现高速缓存130。为了即使在存储器内高速缓存130中也维持数据分隔,服务器层114为***100中的每个承租人建立被高速缓存的数据的分开的副本。因此,作为示例,被高速缓存的承租人数据160是承租人102的被高速缓存的存储器的副本。被高速缓存的承租人数据162是承租人104的被高速缓存的数据的副本,并且被高速缓存的承租人数据164是***100中另一承租人的被高速缓存的数据的副本。服务器层114维护与***100中的每个单独的承租人102-104相对应的被高速缓存的数据162-164的分开的副本。
可能的情况是一些共享数据166对于所有承租人102-104而言是公共的。例如,共享数据166可包括关于承租人中的每一个承租人的控股母公司的一般信息。在这种情况下,服务器层114存储共享数据166,使得它能被任一承租人(或承租人的任一子集)访问。共享数据166被显示在虚线框中,因为它是任选的,并且在另一实施例中,在承租人之中没有数据被共享。
现在将给出对于***100的操作的更详细的讨论。现在作出对附图2-11的参考。
图2是示出让管理员133设立新的承租人的***100的操作的一个实施例的流程图。图2显示管理员133首先登录到***中并且管理员组件132生成用户界面显示(诸如图2A中的显示179或图2B中的显示125),该用户界面显示具有允许管理员133创建新的承租人或分区的用户输入机制181、183、127和129。这由图2中的框170指示。管理员组件132接着接收来自管理员133的创建新的承租人的输入。
一旦新的承租人被创建,管理员组件132就显示具有用户输入机制187的用户界面显示(诸如图2C中的显示185),该用户输入机制187接收来自管理员133的将另一用户(诸如客户端106)分配为针对新的承租人(例如,针对承租人102)的安全管理员的输入。由图2中的框174指示将客户端106分配为针对承租人102的安全管理员。这导致服务器层114允许客户端106登录到商业数据***(诸如ERP应用)中并为新的承租人102设立用户(例如,使用图2D中显示的显示189或图2E中的显示131)。这由图2的框176指示。例如,这允许安全管理员(例如,客户端106)加载承租人102的用户中的每一个用户的配置文件146-148。加载配置文件由图2的框178指示。安全管理员接着还可将角色分配到承租人102中的每个客户端。这由框180指示。因此,安全管理员可将各种基于角色的安全规则、认证规则或其它类型的安全规则输入到商业数据***中并且它们可在134处被服务器层114访问。当然,安全管理员也可执行其它任务,并且这由图2中的框182指示。
可能的情况是,一旦新的承租人102被设立在商业数据***上,承租人102就希望将商业数据存储在数据存储128上。当这个发生时,特定客户端106-108的指示数据传输的配置数据146-148也与对将数据存储在数据存储128中的请求一起包括。
服务器层114接着通过将新的承租人102的数据标识为属于承租人102的承租人数据154来在数据存储128上实现的数据库中对该数据进行划分。用这种方式对数据进行划分由图2中的框184指示。服务器层114可用各种不同的方式来这么作。例如,服务器层114可在承租人154中的每个表上提供将其标识为属于特定承租人的分区标识符。按照逐表格的基础对数据进行划分由图2中的框186指示。此外,服务器层114可在每个表中的每个单独的行上对数据进行划分。即,在每个属于承租人102的表中,服务器层可将属于承租人102的每行数据用指示该行中的该数据属于承租人102的分区标识符来打上条纹。按照逐行的基础进行划分由框188指示。服务器层114还可用其它方式来进行划分。例如,它可根据只能被承租人102访问的模式来对承租人数据154中的表中的数据进行安排。按基于模式的方式对数据进行划分由框190指示。服务器层114也可用其它方式对数据进行划分,并且这由框192指示。
图3显示了一组表194和196的一个实施例,表194和196是承租人数据154和156如何被存储在承租人102和104的数据库128中的说明性示例。在图3中的实施例中,表194具有分区标识符,该分区标识符可处于表水平、处于行水平或其可以是基于模式的。分区标识符198将数据200标识为属于承租人102。类似地,表196具有将数据204标识为属于承租人104的分区标识符202。在此也构想了其它划分数据的方式。
图3A-3C显示了作为示例示出表内部经划分的数据的用户界面显示。图3A显示了用户界面显示211,该用户界面显示211在属性选项卡213被选择时显示顾客(customer)表的属性。示出了各种属性,并且由框215勾勒出的那些属性显示数据不仅仅是基于分区标识符被划分的,而且还是按照每公司的基础被划分的。因此,访问数据的承租人必须不仅仅属于相关分区,还必须也属于相关公司。
图3B显示了示出不同表的属性的用户界面显示217。框215现在显示数据仅基于分区标识符被划分。即,分配到相关分区的任一承租人可访问所示出的表。因此,(例如)公司的子集可访问相同的数据。
图3C显示了显示另一表的属性的用户界面显示219。显示在用户界面显示219中框221内的表的属性示出表包括***数据。通过指示表既不是按照每公司的基础被划分,也不是按照每分区的基础被划分,以及通过指示它属于框架表分组,框223中的属性显示表包括在***中共享的共享数据。
图4示出允许承租人102在数据存储128上执行数据操纵请求的***100的操作的一个实施例。在一个实施例中,客户端108登录到承租人102。这在图4中由框210指示。客户端108通过经历在承租人102的安全管理员设立客户端108时建立的认证过程来这么做。认证在图4中由框212指示。服务器层114接着确定客户端108所属于的特定承租人。这可按各种不同的方式来完成。例如,服务器层114可提供要求客户端108验证客户端108所属于的承租人的用户界面显示。类似地,服务器层114可展示客户端108向其进行写的应用编程接口,以标识客户端108所属于的特定承租人。这由图4的框214指示。当然,客户端108也可自动地向服务器层114提供配置数据148,并且配置数据说明性地不仅包括针对承租人102的客户端108的角色,还包括客户端108通过其登录到***的承租人102的身份。这由图4的框216指示。服务器层114还可使用标识客户端108所属于的特定承租人102的其它方式,并且这由图4中的框218指示。
一旦通过承租人登录,客户端108就提交数据操纵请求,并且配置数据148与该请求一起被发送。这在图4中由框220指示。数据操纵请求可以是对在数据库128中操纵或添加数据的任意种类的请求。例如,数据操纵请求可创建要被存储在数据库128中的新的数据,如图4中的框222指示的。请求可以是对从数据存储128中删除数据的请求,如框224指示的。其可以是对更新数据存储128中的数据的数据修改请求。这由框226指示。其还可简单的是对检索和读取数据存储128中的数据的请求,如框228指示的。当然,数据操纵请求也可以是其它任意种类的请求,并且这由框230指示。
服务器层114接着读取与请求一起提交的配置数据,来确定客户端108所属于的特定承租人102,并还确定(例如)客户端108在承租人102中所持有的角色。服务器层114接着通过将客户端108对存储128中的数据的访问限为在配置数据148中标识的特定承租人102的数据来对数据操纵请求进行服务。服务器层114还说明性地访问承租人102的安全规则134,以标识客户端108的角色并根据这些角色来实现安全性。仅使用对应的承租人数据来对请求进行服务以及实现针对该承租人的安全性由图4中的框232指示。
为了更详细地示出***100的操作,图5是示出由客户端108提交的用于从数据存储128获得数据的特定数据访问请求的流程图。再次,客户端108说明性地使用认证或其它期望登录过程来登录到承租人102中。这由图5的框240指示。客户端108接着提交对于数据存储128中的承租人数据的查询。这由图5中的框242指示。如果未被限定,查询可能涵盖存储128中其它承租人的承租人数据。例如,如果查询正在寻找十一月份中生成的所有销售线索,则该查询将涵盖数据库128中所有承租人的承租人数据。客户端108将配置数据148与查询一起发送到服务器层114。这在图5中由框244指示。服务器层114接收该查询以及对应的配置数据,如框246指示的。服务器层114检查配置数据148以确定查询源自哪个承租人以及客户端108在该承租人中所持有的角色。服务器层114接着基于配置数据来修改查询以仅请求属于承租人102的数据,并且为承租人102实现基于角色的安全性(或由安全规则134定义的其它安全性)。这由图5的框148指示。服务器层114有效地将数据请求限为仅涵盖属于客户端108所属于的承租人(在这个示例中,客户端102)的数据。
在一个实施例中,服务器层114确定它是否能根据高速缓存130来服务数据请求。在这么做时,服务器层114首先确定是否实际存在该特定承租人102的被高速缓存的承租人数据160的副本。这由图5的框250指示。如果不是,则服务器层114创建承租人102的高速缓存的副本,如框252指示的,并接着访问数据存储128来获得所请求的数据。这由框254指示。
然而,如果服务器层114在框250确定存在承租人102的高速缓存的副本,则服务器层114检查该被高速缓存的承租人数据来寻找所请求的数据。这由图5的框256指示。如果服务器层114能根据高速缓存130来服务请求,则它就这么做。然而,如果它不能,则它还必须访问数据库128中的数据。确定请求是否能从高速缓存130被服务由图5中的框258指示。
在以上任一种情况下,无论服务器层114是从高速缓存130还是从数据存储128获得了数据,对查询进行响应的数据被返回到承租人102中的客户端108。这由图5的框260指示。服务器层114接着进行任何其它期望高速缓存操作。例如,如果已经从数据存储128中检索了新的数据(其不在高速缓存的承租人的副本中),则服务器层114将该数据添加到承租人102的被高速缓存的承租人数据。当然,服务器层114也可用其它方式来更新高速缓存的承租人的副本,并且进行高速缓存操作来维护高速缓存130,如由图5中的框262指示。由此,服务器层114不仅仅对数据库128进行划分使得其能(以安全和分区的方式)存储多个承租人数据,而且它还控制高速缓存130使得其能完成相同操作。被高速缓存的数据的每个副本被标记为属于给定的承租人并且没有其它承租人能访问被高速缓存的数据的该副本。它被与其它承租人的被高速缓存的数据分开地维护,并且它与其它承租人的被高速缓存的数据划分开。
图5A显示了其中承租人的子集被划分在一起、但与其它承租人分开的另一实施例。图5A显示了***100,其与图1中显示的***类似,并且类似的项被类似地编号。然而,图5A中的***100显示承租人102和104是说明性地被分组在一起作为子集161的两个商业机构。因此,子集161的承租人希望访问彼此的数据,但是它们希望将数据与其它承租人(诸如承租人105)的数据分开并隔开。管理员由此将承租人102和104两者分配到相同的分区。通过这种方式,服务器层114将存储为承租人102和104划分的数据163,使得承租人102和104两者均能访问所有的该数据。然而,数据163与被分配到承租人105的分区的数据165分开地划分。由此,承租人105不可访问数据163并且承租人102和104的子集161不可访问数据165。
将注意到,在一个实施例中,高速缓存130还以与数据存储128相同的方式被分开地划分。因此,高速缓存130包括承租人102和104的子集161的分开的被高速缓存的数据的副本以及承租人105的被分开划分的被高速缓存的数据的副本。由此,高速缓存130以与数据存储128相同的方式被划分,使得向高速缓存130请求的任何数据也将以相同的方式被划分。
还将注意到,在此讨论的商业数据可包括各种各样的商业数据,诸如客户记录、销售订单、供应商、线索、提议、报价、销售数据、产品数据、位置数据、公司财务和市场数据和策略、个人数据、工资或其它人力资源信息等。也可使用其它商业数据或商业记录。
图6是图1中显示的***100的框图,除了它被置于云计算架构体系500中。云计算提供了不要求最终用户知晓交付服务的***的物理位置或配置的计算、软件、数据访问和存储服务。在各个实施例中,云计算通过诸如因特网之类的广域网使用合适的协议来交付服务。例如,云计算提供者通过广域网交付应用,并且它们可以通过web浏览器或任何其他计算组件被访问。***100的软件或组件以及相对应的数据可被存储在远程位置处的服务器上。云计算环境中的计算资源可以被整合在远程数据中心位置处或者它们可以是分散的。云计算基础架构可以通过共享数据中心来交付服务,即使在用户看来它们是单个访问点。因此,在此所述的组件和功能可以从远程位置处的服务提供者使用云计算体系结构来提供。可替代地,它们可以从常规的服务器中提供,或者它们可以直接地或以其他方式安装在客户端设备上。
本说明书旨在包括公共云计算和私有云计算两者。云计算(公共和私有两者)提供了基本无缝的资源联营以及对管理和配置底层硬件基础结构的降低的需求。
公共云由供应商管理,并且通常支持使用同一基础结构的多个消费者。此外,与私有云相反,公共云能够将终端用户从管理硬件中释放出来。私有云可由组织本身管理,并且基础结构通常不与其他组织共享。该组织在某种程度上仍然维护着硬件,诸如安装和维修等。
在图6中显示的实施例中,一些项与图1中显示的那些是类似的,并且它们被类似地编号。图6具体地显示服务器层114、数据存储128、高速缓存130和安全规则134位于云502(其可以是公共的、私有的或其中部分是公共的、而其它是私有的组合)中。因此,承租人102中的客户端108(或用户103)使用用户设备504来通过云502访问那些***。
图6还描绘了云架构的另一实施例。图6示出还构想了***100中的某些元素被置于云502中而其他元素没有被置于云502中。作为示例,数据存储128可被置于云502的外部,并且通过云502来访问。在另一实施例中,安全规则134也在云502的外部。无论它们位于哪里,它们都可直接由设备504通过网络(广域网或局域网)访问,它们可由服务主存在远程站点处,或者它们可作为服务通过云来提供或通过驻留在云中的连接服务来访问。本文构想了所有这些体系结构。
还要注意,***100或其部分可被置于各种不同的设备上。这些设备中的某些包括:服务器、台式计算机、膝上型计算机、平板计算机、或其他移动设备,诸如掌上计算机、蜂窝电话、智能电话、多媒体播放器、个人数字助理等。
图7是可被用作其中可部署本***(或其部分)的用户或客户机的手持式设备16的手持式或移动计算设备的一个说明性实施例的简化框图。图8-10是手持式或移动设备的示例。
图7提供了客户端设备16的组件的大体框图,该客户端设备16可以运行***100的组件(诸如承租人或客户端或其它组件)或者与***100交互、或二者。在设备16中,提供了通信链路13,该通信链路允许手持设备与其它计算设备通信,并且在一些实施例中提供用于诸如通过扫描来自动接收信息的信道。通信链路13的示例包括:红外端口、串行/USB端口、诸如以太网端口之类的电缆网络端口、以及允许通过一个或多个通信协议的通信的无线网络端口,所述通信协议包括作为用于提供对网络的蜂窝接入的无线服务的通用分组无线服务(GPRS)、LTE、HSPA、HSPA+、以及其他3G和4G无线电协议、1Xrtt和短消息服务,并包括提供对网络的无线连接的802.11和802.11b(WiFi)协议、和蓝牙协议。
根据其他实施例,应用或***(如***100的ERP应用)在连接到SD卡接口15的可移动安全数字(SD)卡上被接收。SD卡接口15和通信链路13沿总线19与处理器17(也可实现来自图1的处理器136或138)进行通信,该总线19还连接到存储器21和输入/输出(I/O)组件23、以及时钟25和定位***27。
在一个实施例中,提供了I/O组件23以促进输入和输出操作。针对设备16的各个实施例的I/O组件23可以包括:输入组件,比如按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、邻近传感器、话筒、倾斜传感器以及重力开关;以及输出组件,比如显示设备、扬声器和或打印机端口。也可以使用其他I/O组件23。
时钟25说明性地包括输出时间和日期的真实时间时钟组件。时钟还可以说明性地为处理器17提供定时功能。
定位***27说明性地包括输出设备16的当前地理位置的组件。这例如可以包括全球定位***(GPS)接收机、LORAN***、航位推算***、蜂窝三角测量***、或者其他定位***。这例如还可以包括生成所期望的地图、导航线路和其它地理功能的测绘软件或导航软件。
处理器21存储操作***29、网络设定31、应用33、应用配置设定35、数据存储37、通信驱动程序39以及通信配置设定41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。其还可以包括计算机存储介质(下面描述)。存储器21存储计算机可读指令,所述指令在被处理器17执行时致使处理器根据所述指令执行计算机实现的步骤或功能。***100或数据存储128或高速缓存130中的项例如可驻留在存储器21中。类似地,设备16可具有客户端商业***24,该客户端商业***可运行各种商业应用或实现商业***100的部分或全部。处理器17可以也被其他组件激活以促进它们的功能。
网络设定31的示例包括诸如代理信息、因特网连接信息以及测绘之类的事物。应用配置设定35包括为特定企业或用户定制应用的设定。通信配置设定41提供了用于与其他计算机进行通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和口令之类的项目。
应用33可以是之前已经存储在设备16上的应用或是在使用期间安装的应用,但是这些应用可以是操作***29的一部分,或者也可以在设备16之外被托管。
图8示出其中设备16是平板计算机600的一个实施例。在图8中,计算机600被显示为具有在显示屏幕602上显示的用户界面显示179(被用于创建新的承租人)。屏幕602可以是触摸屏(使得来自用户手指604的触摸姿势可以用于与应用交互)或者启用笔的界面,其接收来自笔或指示笔的输入。其还可以使用屏幕上虚拟键盘。当然,其还例如可以通过诸如无线链路或USB端口之类的合适的附连机制附连到键盘或其他用户输入设备。计算机600还可以说明性地接收语音输入。
图9和图10提供了可被使用的设备16的附加示例,尽管也可以使用其他设备。在图9,提供智能电话或移动电话45作为设备16。电话45包括:一组小键盘47,其用于拨打电话号码;显示器49,其能够显示包括应用图像、图标、网页、照片和视频在内的图像;以及控制按钮51,其用于选择在显示器上示出的项目。电话包括天线53,该天线53用于接收诸如通用分组无线服务(GPRS)和1Xrtt之类的蜂窝电话信号以及短消息服务(SMS)信号。在一些实施例中,电话45还包括容纳安全数字(SD)卡57的SD卡槽55。
图10的移动设备是个人数字助理(PDA)59或多媒体播放器或平板计算设备等等(在此称为PDA 59)。PDA 59包括电感屏61,所述电感屏感测指示笔63(或其他指示器,诸如用户的手指)在该指示笔被置于屏幕之上时的位置。这允许用户在屏幕上选择、突出显示和移动项目以及绘图和书写。PDA 59还包括多个用户输入键或按钮(比如按钮65),其允许用户将显示器61上所显示的菜单选项或其他显示选项滚屏,并且允许用户在没有接触显示器61的情况下改变应用或选择用户输入功能。尽管未被示出,但是PDA 59可以包括允许与其他计算机进行无线通信的内置天线和红外发射机/接收机、以及允许对其他计算设备的硬件连接的连接端口。这样的硬件连接通常是通过经由串行或USB端口连接到其他计算机的支架来进行的。因此,这些连接是非网络连接。在一个实施例中,移动设备59还包括容纳SD卡69的SD卡槽67。
注意,设备16的其他形式是可能的。
图11是其中可采用(例如)***100的计算环境的一个实施例。参考图11,用于实现一些实施例的示例性***包括计算机810形式的通用计算设备。计算机810的组件可以包括,但不限于,处理单元820(其可以包括服务器或承租人的处理器)、***存储器830和将包括***存储器在内的各种***组件耦合至处理单元820的***总线821。***总线821可以是若干类型的总线结构中的任一种,包括使用各种总线体系结构中的任一种的存储器总线或存储器控制器、***总线、以及局部总线。作为示例而非限制,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和***部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。参考图1描述的存储器和程序可被部署在图11的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是能由计算机810访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质不同于且不包括已调制数据信号或载波。计算机存储介质包括硬件存储介质,该硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机810访问的任何其它介质。通信介质通常具体化计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并包括任何信息递送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述任何组合也应该包括在计算机可读的介质范围内。
***存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)831和随机存取存储器(RAM)832。包含诸如在启动期间帮助在计算机810内的元件之间传输信息的基本例程的基本输入/输出***833(BIOS)通常存储在ROM 831中。RAM 832通常包含处理单元820可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图11示出了操作***834、应用程序835、其他程序模块836和程序数据837。
计算机810还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图11示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器841,从可移动、非易失性磁盘852中读取或向其写入的磁盘驱动器851,以及从诸如CD ROM或其他光学介质等可移动、非易失性光盘856中读取或向其写入的光盘驱动器855。可在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840之类的不可移动存储器接口连接到***总线821,并且磁盘驱动器851和光盘驱动器855通常通过诸如接口850之类的可移动存储器接口连接到***总线821。
以上讨论并在图11中示出的驱动器及其相关联的计算机存储介质为计算机810提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。在图11中,例如,硬盘驱动器841被示为存储操作***844、应用程序845、其他程序模块846和程序数据847。注意,这些组件可与操作***834、应用程序835、其它程序模块836和程序数据837相同,也可与它们不同。在此操作***844、应用程序845、其它程序模块846以及程序数据847被给予了不同的编号,以说明至少它们是不同的副本。
用户可以通过诸如键盘862、话筒863以及诸如鼠标、跟踪球或触摸垫等定点设备861等输入设备来将命令和信息输入至计算机810中。其它输入设备(未示出)可以包括操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其它输入设备通常通过耦合到***总线的用户输入接口860连接到处理单元820,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其它接口和总线结构来连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890之类的接口连接至***总线821。除了监视器以外,计算机还可包括诸如扬声器897和打印机896之类的其它***输出设备,它们可通过输出***接口895来连接。
计算机810使用到诸如远程计算机880等一个或多个远程计算机的逻辑连接在网络化环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它常见的网络节点,且一般包括以上关于计算机810描述的多个或所有的元件。图8中所描绘的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但还可包括其他网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机810通过网络接口或适配器870连接到LAN 871。当在WAN联网环境中使用时,计算机810通常包括调制解调器872或用于通过诸如因特网等WAN 873建立通信的其它手段。调制解调器872可以是内置的或外置的,可经由用户输入接口860或其它适当的机制连接到***总线821。在联网环境中,相关于计算机810所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例,而非限制,图11示出了远程应用程序885驻留在远程计算机880上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其它手段。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (10)

1.一种服务多承租人数据存储的计算机实现的方法,每个承租人是具有多个用户的组织,所述方法包括:
显示具有接收用户输入以在商业数据应用中创建给定承租人的用户输入机制的承租人创建管理员显示,所述商业数据应用除了所述给定承租人之外还具有至少一个其它承租人;
显示具有接收将所述给定承租人处的客户端标识为安全管理员的用户输入的用户输入机制的安全管理员指定显示;
在所述商业数据应用中接收来自进行请求的客户端的数据操纵请求,所述数据操纵请求包括将所述进行请求的客户端标识为来自所述给定承租人的承租人标识数据;以及
使用所述商业数据应用从所述多承租人数据存储对所述数据操纵请求进行服务,所述多承租人数据存储存储所述给定承租人和所述至少一个其它承租人的数据,所述给定承租人的数据在所述多承租人数据存储中与其它承租人的数据划分,通过基于所述承租人标识数据将所述数据操纵请求限为对所述给定承租人的数据来对所述数据操纵请求进行服务。
2.如权利要求1所述的计算机实现的方法,其特征在于,接收所述数据操纵请求包括接收对将数据存储在所述多承租人数据存储上的请求,并且其中对所述书数据操纵请求进行服务包括:
将所述请求中的数据存储在所述多承租人数据存储中;以及
用指示存储在所述多承租人数据存储中的数据属于所述给定承租人的分区标识符来对所述数据进行标记。
3.如权利要求1所述的计算机实现的方法,其特征在于,所述数据操纵请求标识所述多承租人数据存储中要被访问的数据,所标识的数据被定义以包括来自所述其它承租人中的一个或多个承租人的数据。
4.如权利要求3所述的计算机实现的方法,其特征在于,对所述数据操纵请求进行服务包括:
修改所述数据操纵请求以获得仅定义属于所述给定承租人的数据的经修改的数据操纵请求;以及
对所述经修改的数据操纵请求进行服务。
5.如权利要求4所述的计算机实现的方法,其特征在于,接收数据操纵请求包括:
接收对于涵盖来自所述其它承租人中的一个或多个承租人的数据的数据的查询,其中修改所述数据操纵请求包括:
修改所述查询以仅返回根据所述分区标识符标识为属于所述给定承租人的数据。
6.如权利要求1所述的计算机实现的方法,其特征在于,接收安全规则包括:
显示具有用户输入机制的安全规则显示;以及
通过所述安全规则显示上的所述用户输入机制来接收要针对所述给定承租人来实现的安全规则,其中对所述数据操纵请求进行服务包括:
基于所述数据操纵请求中的所述承租人标识数据来访问针对所述给定承租人的所述安全规则;以及
在对所述数据操纵请求进行服务的同时实现针对所述给定承租人的所述安全规则。
7.如权利要求1所述的计算机实现的方法,其特征在于,对所述数据操纵请求进行服务包括:
在高速缓存存储器中为每个承租人维护被高速缓存的数据的分开的副本,其中所述数据操纵请求包括查询请求数据,并且其中维护被高速缓存的数据的分开的副本包括:
将所请求的数据存储在仅存储所述给定承租人的被高速缓存的数据的高速缓存存储器中。
8.一种商业数据***,包括:
主控用于第一承租人和第二承租人的相同商业数据应用的服务器层,每个承租人是具有多个不同客户端的组织,所述服务器层接收来自所述第一承租人的第一数据以及来自所述第二承租人的第二数据,所述服务器层将所述第一数据和所述第二数据存储在多承租人数据存储上,将所述第一数据与所述第二数据划分开,使得所述第一数据不能被所述第二承租人访问并且所述第二数据不能被所述第一承租人访问;以及
计算机处理器,所述计算机处理器形成所述***的功能部分并且被所述服务器层激活并促进所述服务器层的功能。
9.如权利要求8所述的商业数据***,其特征在于,所述服务器层接收来自所述第一承租人和所述第二承租人的配置数据并存储所述第一数据,基于将所述第一数据标识为仅能被所述第一承租人访问的配置数据来用分区标识符标记所述第一数据。
10.如权利要求9所述的商业数据***,其特征在于,还包括:
高速缓存存储器,所述服务器层维护所述高速缓存存储器,使得所述高速缓存存储器具有对应于所述第一承租人的被高速缓存的数据的第一副本以及对应于所述第二承租人的被高速缓存的数据的第二副本,被高速缓存的数据的所述第一副本和所述第二副本在所述高速缓存存储器中被相互划分开,使得被高速缓存的数据的所述第一副本不能被所述第二承租人访问并且被高速缓存的数据的所述第二副本不能被所述第一承租人访问。
CN201380040713.4A 2012-07-30 2013-07-30 商业数据***中针对承租人的安全和数据隔离 Active CN104508678B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/561,113 2012-07-30
US13/561,113 US9959423B2 (en) 2012-07-30 2012-07-30 Security and data isolation for tenants in a business data system
PCT/US2013/052601 WO2014022323A1 (en) 2012-07-30 2013-07-30 Security and data isolation for tenants in a business data system

Publications (2)

Publication Number Publication Date
CN104508678A true CN104508678A (zh) 2015-04-08
CN104508678B CN104508678B (zh) 2018-10-16

Family

ID=48948545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380040713.4A Active CN104508678B (zh) 2012-07-30 2013-07-30 商业数据***中针对承租人的安全和数据隔离

Country Status (6)

Country Link
US (2) US9959423B2 (zh)
EP (1) EP2880591A1 (zh)
JP (1) JP6633913B2 (zh)
KR (1) KR102117727B1 (zh)
CN (1) CN104508678B (zh)
WO (1) WO2014022323A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103595551B (zh) * 2012-08-17 2016-12-21 杭州华三通信技术有限公司 基于mqc实现网络虚拟化的网络管理方法和装置
US9830385B2 (en) * 2012-09-04 2017-11-28 Salesforce.Com, Inc. Methods and apparatus for partitioning data
US9342353B2 (en) * 2012-10-06 2016-05-17 International Business Machines Corporation Techniques for implementing information services with tenant specific service level agreements
US10146850B2 (en) 2012-10-30 2018-12-04 FHOOSH, Inc. Systems and methods for collecting, classifying, organizing and populating information on electronic forms
US20140331337A1 (en) * 2013-05-02 2014-11-06 International Business Machines Corporation Secure isolation of tenant resources in a multi-tenant storage system using a gatekeeper
CN104216725B (zh) * 2013-06-04 2019-04-19 Sap欧洲公司 用于软件解决方案托管的存储库层策略调整
US9578009B2 (en) * 2014-06-23 2017-02-21 Oracle International Corporation System and method for supporting security in a multitenant application server environment
US11477278B2 (en) * 2014-06-24 2022-10-18 Oracle International Corporation System and method for supporting partitions in a multitenant application server environment
US9471803B2 (en) * 2014-08-07 2016-10-18 Emc Corporation System and method for secure multi-tenancy in an operating system of a storage system
US10579823B2 (en) 2014-09-23 2020-03-03 Ubiq Security, Inc. Systems and methods for secure high speed data generation and access
CA2962432C (en) 2014-09-23 2023-04-18 FHOOSH, Inc. Secure high speed data storage, access, recovery, and transmission
US10079720B2 (en) * 2015-06-23 2018-09-18 Microsoft Technology Licensing, Llc Dynamically managing different versions of a service
US11018947B2 (en) 2016-01-27 2021-05-25 Oracle International Corporation System and method for supporting on-demand setup of local host channel adapter port partition membership in a high-performance computing environment
US10326860B2 (en) 2016-01-27 2019-06-18 Oracle International Corporation System and method for defining virtual machine fabric profiles of virtual machines in a high-performance computing environment
US10972375B2 (en) 2016-01-27 2021-04-06 Oracle International Corporation System and method of reserving a specific queue pair number for proprietary management traffic in a high-performance computing environment
US10305861B2 (en) * 2016-08-29 2019-05-28 Microsoft Technology Licensing, Llc. Cross-tenant data leakage isolation
US10558641B2 (en) 2017-04-21 2020-02-11 Microsoft Technology Licensing, Llc Trigger system for databases using proxy
US10848494B2 (en) * 2017-08-14 2020-11-24 Microsoft Technology Licensing, Llc Compliance boundaries for multi-tenant cloud environment
US11349656B2 (en) 2018-03-08 2022-05-31 Ubiq Security, Inc. Systems and methods for secure storage and transmission of a data stream
US20190278930A1 (en) * 2018-03-08 2019-09-12 FHOOSH, Inc. Integrated circuits for secure data storage and retrieval
US11650749B1 (en) 2018-12-17 2023-05-16 Pure Storage, Inc. Controlling access to sensitive data in a shared dataset
US11354168B2 (en) * 2019-01-18 2022-06-07 Salesforce.Com, Inc. Elastic data partitioning of a database
RU2737601C2 (ru) * 2019-03-13 2020-12-01 Анастасия Надеровна Рубцова Автоматизированная информационная система для размещения расширяемых служб с множеством арендаторов и субъектов (потребителей)
US10873586B2 (en) 2019-03-19 2020-12-22 Capital One Services, Llc Systems and methods for secure data access control
WO2021042121A1 (en) * 2019-08-29 2021-03-04 Schlumberger Technology Corporation System and method for managing external processing in a web-based computing system
CN111694682B (zh) * 2020-06-11 2023-10-03 深圳市铱云云计算有限公司 多层级租户的管理方法、装置、设备及存储介质
US11809591B1 (en) * 2023-02-22 2023-11-07 Snowflake Inc. Column hiding management system

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587854B1 (en) * 1998-10-05 2003-07-01 Oracle Corporation Virtually partitioning user data in a database system
US6732100B1 (en) * 2000-03-31 2004-05-04 Siebel Systems, Inc. Database access method and system for user role defined access
CN101639835A (zh) * 2008-07-30 2010-02-03 国际商业机器公司 多租户场景中应用数据库分区的方法和装置
US20100138830A1 (en) * 2008-05-02 2010-06-03 Skytap Multitenant hosted virtual machine infrastructure
US20110270832A1 (en) * 2010-05-03 2011-11-03 Guillaume Le Stum Report preview caching techniques in a multi-tenant database
CN103177059A (zh) * 2011-12-23 2013-06-26 Sap股份公司 用于数据库计算引擎的分离处理路径
CN103177061A (zh) * 2011-12-23 2013-06-26 Sap股份公司 分区表中的唯一值估计
CN103177063A (zh) * 2011-12-23 2013-06-26 Sap股份公司 用于时间数据聚合的时间滑动操作器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000076193A (ja) 1998-08-27 2000-03-14 Fujitsu Ltd 電子情報共有セキュリティシステム及び電子情報共有セキュリティプログラムを記録したコンピュータ読み取り可能記録媒体
US6487552B1 (en) 1998-10-05 2002-11-26 Oracle Corporation Database fine-grained access control
US7779039B2 (en) 2004-04-02 2010-08-17 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
US20070143546A1 (en) * 2005-12-21 2007-06-21 Intel Corporation Partitioned shared cache
US8533155B2 (en) 2009-10-30 2013-09-10 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform, with replication
US8782047B2 (en) 2009-10-30 2014-07-15 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform using namespaces
US8095618B2 (en) 2007-03-30 2012-01-10 Microsoft Corporation In-memory caching of shared customizable multi-tenant data
JP4778500B2 (ja) 2007-12-11 2011-09-21 株式会社日立情報システムズ データべースシステム及びデータべースシステムの制御方法
JP5200721B2 (ja) 2008-07-16 2013-06-05 富士通株式会社 制御方法、制御装置、及びプログラム
US8271536B2 (en) 2008-11-14 2012-09-18 Microsoft Corporation Multi-tenancy using suite of authorization manager components
JP2011019129A (ja) * 2009-07-09 2011-01-27 Nec Corp データ管理システム及びデータ管理方法
US8364722B2 (en) 2010-01-19 2013-01-29 Microsoft Corporation Hosting multiple logical databases contained in physical database
WO2011111532A1 (ja) * 2010-03-10 2011-09-15 日本電気株式会社 データベースシステム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6587854B1 (en) * 1998-10-05 2003-07-01 Oracle Corporation Virtually partitioning user data in a database system
US6732100B1 (en) * 2000-03-31 2004-05-04 Siebel Systems, Inc. Database access method and system for user role defined access
US20100138830A1 (en) * 2008-05-02 2010-06-03 Skytap Multitenant hosted virtual machine infrastructure
CN101639835A (zh) * 2008-07-30 2010-02-03 国际商业机器公司 多租户场景中应用数据库分区的方法和装置
US20110270832A1 (en) * 2010-05-03 2011-11-03 Guillaume Le Stum Report preview caching techniques in a multi-tenant database
CN103177059A (zh) * 2011-12-23 2013-06-26 Sap股份公司 用于数据库计算引擎的分离处理路径
CN103177061A (zh) * 2011-12-23 2013-06-26 Sap股份公司 分区表中的唯一值估计
CN103177063A (zh) * 2011-12-23 2013-06-26 Sap股份公司 用于时间数据聚合的时间滑动操作器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郭郑州,陈军红: "《Oracle完全学习手册 》", 31 December 2011 *

Also Published As

Publication number Publication date
KR20150036323A (ko) 2015-04-07
JP2015524592A (ja) 2015-08-24
KR102117727B1 (ko) 2020-06-01
EP2880591A1 (en) 2015-06-10
WO2014022323A1 (en) 2014-02-06
CN104508678B (zh) 2018-10-16
JP6633913B2 (ja) 2020-01-22
US20140032228A1 (en) 2014-01-30
US9959423B2 (en) 2018-05-01
US20180218169A1 (en) 2018-08-02

Similar Documents

Publication Publication Date Title
CN104508678A (zh) 商业数据***中针对承租人的安全和数据隔离
CN105229634B (zh) 数据迁移框架
EP1220510B1 (en) Method and system for context-aware network policy determination and enforcement
CN105264492B (zh) ***行为的自动发现
CN107710157A (zh) 多租户、租户特定的应用程序
CN110569657A (zh) 一种数据访问方法、装置、设备及存储介质
CN104995616A (zh) 基于云的虚拟移动设备
CN106062793B (zh) 已被呈现的企业内容的检索
US11218558B2 (en) Machine learning for personalized, user-based next active time prediction
CN105229614A (zh) 多承租人数据中心内的诊断存储
US20200233907A1 (en) Location-based file recommendations for managed devices
CN105229679A (zh) 生存周期产品分析
CN105408922A (zh) 过程流基础结构和配置界面
US9939985B2 (en) Online wizard for facilitating methodology implementation
CN102281302A (zh) 资源访问处理方法及***
US11947638B2 (en) Methods and apparatus for automatic permission assignment
CN104769579A (zh) 文档管理***中的列表管理
CN106062689A (zh) 知晓上下文的命令
EP3218802B1 (en) Using sections for customization of applications across platforms
CN114996577A (zh) 服务管理方法、装置、设备、存储介质和程序产品
CN105940419A (zh) 具有可选工作空间表示的控制板
KR20180060360A (ko) 클라우드 컴퓨팅 환경에서 제공되는 총무 관리 프로그램에서 사용자 정의에 따른 사용자 인터페이스 제공 방법 및 장치
US20220180264A1 (en) Enterprise workforce management platform
TWM505015U (zh) 應用於企業或團體組織之複合式管理系統
CN105339882A (zh) 在经角色定制的工作空间上过滤内容

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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: 20171016

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