CN113950677A - 子范围同步 - Google Patents

子范围同步 Download PDF

Info

Publication number
CN113950677A
CN113950677A CN202080043430.5A CN202080043430A CN113950677A CN 113950677 A CN113950677 A CN 113950677A CN 202080043430 A CN202080043430 A CN 202080043430A CN 113950677 A CN113950677 A CN 113950677A
Authority
CN
China
Prior art keywords
data
data set
protected
space
online
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
CN202080043430.5A
Other languages
English (en)
Inventor
C-P·高
童熙
赵科平
L·王
G·P·杨
D·S·佩马拉朱
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 Technology Licensing LLC
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 Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN113950677A publication Critical patent/CN113950677A/zh
Pending legal-status Critical Current

Links

Images

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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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
    • 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
    • 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/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

用于在在线数据源与客户端应用之间同步数据的系统和方法。该方法包括,响应于与用户相关联的、对包括在在线数据源的共享数据空间中的受保护数据集的权限的变化,利用与用户相关联的客户端应用来接收由在线数据源发布的与受保护数据集相关联的受保护数据同步令牌,以及利用客户端应用,使用受保护数据同步令牌来将包括在共享数据空间中的受保护数据集从在线数据源下载到客户端应用,而不重新下载包括在共享数据空间中的公共数据集。在下载了受保护数据集之后,该方法包括使用存储的数据空间同步令牌来同步包括受保护数据集和公共数据集的共享数据空间。

Description

子范围同步
技术领域
本文描述的实施例总体上涉及在在线数据源与客户端设备之间同步数据,特别是同步与变化的用户权限相关联的受保护数据,同时限制数据下载要求和相关联的计算资源。
发明内容
许多计算设备,例如个人计算机、智能电话和膝上型电脑,可以访问远程在线数据源,包括例如存储在诸如Microsoft
Figure BDA0003407055660000011
之类的文件管理系统中的数据。这些在线数据源存储可供可以访问在线数据源的各种计算设备下载和修改的数据(文件)。这些计算设备还可以安装本地客户端软件应用,这些应用允许计算设备访问在线数据源,并且在一些情况下,下载和缓存可以经由在线数据源访问的数据的本地副本。
例如,在线数据源可以存储可由一个或多个用户访问的共享数据空间,其中,共享数据空间包括公共数据和受保护数据(或轻度保护数据和强保护数据)。用户必须具有访问受保护数据的权限,并且必须提供认证信息,例如执行多因素认证,才能访问受保护数据。特别地,当用户被授予共享数据空间内受保护数据的权限(并且用户提供经过验证的认证信息)时,在线数据源会提供令牌,该令牌允许安装在用户的计算设备上的本地客户端软件应用下载存储在共享数据空间内的、基于用户的当前权限用户可以访问的数据(包括公共信息和用户有权限访问的受保护信息)。因此,随着用户权限的变化(例如,允许用户访问另外的受保护数据),用户的计算设备使用所接收的令牌下载包括受保护数据和公共数据二者的所有适用数据。因此,认证令牌的使用增加了计算设备、通信网络、在线数据源或其组合的计算资源负担。当下载的信息包括比受保护数据更多的公共数据时尤其如此,这是因为随着权限的变化,这些公共数据也会被重新下载。
因此,本文描述的实施例提供了用于在在线数据源与客户端设备之间同步数据以更有效地使用客户端设备、通信网络和在线数据源的计算资源以及防止用户访问所需数据的延迟的系统和方法等。特别地,本文描述的实施例执行子范围同步,其中,响应于权限变化和有效认证,用户接收认证令牌,该认证令牌允许用户在共享数据空间内下载用户可访问的新的受保护数据,而不重新下载(或以其他方式同步)其他部分或共享数据空间,例如公共数据。在该下载完成之后,用户使用存储的同步令牌同步来自包括新的受保护数据集和任何公共数据的共享数据空间的下载的数据。
例如,一个实施例提供了一种用于在在线数据源与客户端软件应用之间同步数据的方法。该方法包括,响应于与用户相关联的、对包括在在线数据源的共享数据空间中的受保护数据集的权限的变化,利用与用户相关联的客户端应用来接收由在线数据源发布的与受保护数据集相关联的受保护数据同步令牌,以及利用客户端应用,使用受保护数据同步令牌来将包括在共享数据空间中的受保护数据集从在线数据源下载到客户端应用,而不重新下载包括在共享数据空间中的公共数据集。在下载了受保护数据集之后,该方法包括使用存储的数据空间同步令牌,在在线数据源与客户端应用之间同步包括受保护数据集和公共数据集的共享数据空间。
另一个实施例提供了一种用于在在线数据源与客户端软件应用之间同步数据的系统。该系统包括用户设备,该用户设备包括存储客户端应用的存储器和电子处理器,该电子处理器被配置为执行客户端应用以响应于与用户相关联的、对包括在在线数据源的共享数据空间中的受保护数据集的权限的变化,从在线数据源接收受保护数据同步令牌,以及使用受保护数据同步令牌来将包括在共享数据空间中的受保护数据集从在线数据源下载到客户端应用,而不重新下载包括在共享数据空间中的公共数据集。在下载了受保护数据集之后,系统被配置为使用存储的数据空间同步令牌和受保护数据同步令牌,在在线数据源与客户端应用之间同步包括受保护数据集和公共数据集的共享数据空间。
另一个实施例提供了一种存储指令的非暂时性计算机可读介质,所述指令当由电子处理器执行时执行一组功能。该组功能包括,响应于与用户相关联的、对包括在在线数据源的共享数据空间中的数据的权限的变化,该权限的变化包括对包括在存储的数据空间中的受保护数据集的权限的撤回,从在线数据源接收对于与受保护数据集相关联的先前接收的受保护数据同步令牌的撤销通知;以及响应于撤销通知,删除受保护数据同步令牌,从共享数据空间的本地存储副本中删除受保护数据集,而不从共享数据空间的本地存储副本中删除公共数据集,以及在删除了受保护数据集之后,使用存储的数据空间同步令牌,在在线源与客户端应用之间同步包括公共数据集并且排除受保护数据的共享数据空间。
附图说明
图1示意性地示出了根据一个实施例的用于在在线数据源与客户端软件应用之间同步数据的系统。
图2示意性地示出了根据一个实施例的包括在图1的系统中的在线数据源。
图3示意性地示出了根据一个实施例的包括在图1的系统中的用户设备。
图4示出了根据一个实施例的由图1的系统执行的用于同步数据的方法的流程图。
具体实施方式
在以下描述和附图中描述和示出了一个或多个实施例。这些实施例不限于本文提供的具体细节并且可以以各种方式修改。此外,可以存在本文没有描述的其他实施例。而且,本文描述为由一个组件执行的功能可以由多个组件以分布式方式执行。同样,由多个组件执行的功能可以由单个组件合并和执行。类似地,被描述为执行特定功能的组件也可以执行本文未描述的另外的功能。例如,以某种方式“配置”的设备或结构至少以该方式被配置,但也可以以未列出的方式被配置。此外,本文描述的一些实施例可以包括一个或多个电子处理器,其被配置为通过执行存储在非暂时性计算机可读介质中的指令来执行所描述的功能。类似地,本文描述的实施例可以被实现为存储指令的非暂时性计算机可读介质,该指令可由一个或多个电子处理器执行以执行所描述的功能。如在本申请中使用的,“非暂时性计算机可读介质”包括所有计算机可读介质但不包括暂时性、传播信号。因此,非暂时性计算机可读介质可以包括例如硬盘、CD-ROM、光存储设备、磁存储设备、ROM(只读存储器)、RAM(随机存取存储器)、寄存器存储器、处理器高速缓存或它们的任意组合。
此外,本文使用的措辞和术语是为了描述的目的,不应被视为限制。例如,“包括”、“含有”、“包含”、“具有”及其变体在本文中的使用意在涵盖其后列出的项目及其等价物以及另外的项目。术语“连接”和“耦合”被广泛使用,包括直接和间接的连接和耦合。此外,“连接”和“耦合”不限于物理或机械连接或耦合并且可以包括直接或间接的电连接或耦合。此外,电子通信和通知可以使用有线连接、无线连接或它们的组合来执行,并且可以通过各种类型的网络、通信信道和连接,直接或通过一个或多个中间设备发送。此外,诸如第一和第二、顶部和底部等的关系术语在本文中可以仅用于将一个实体或动作与另一个实体或动作区分开来,而不必要求或暗示这些实体或动作之间的任何实际的这种关系或顺序。
如上所述,用户在同步受保护数据时经常需要同步大量公共数据,包括当用户被授权访问先前未下载到用户的设备的新的受保护数据时。这个过程浪费了计算资源和用户时间。因此,本文描述的实施例执行子范围同步,其中,新的受保护数据是使用专用于该新的受保护数据的认证令牌来下载的,并且该认证令牌与现有同步令牌相组合地随后被用于维持在线数据源与用户的设备之间的同步,包括新的受保护数据和任何公共数据二者。换言之,仅下载新添加的受保护数据,而不重新下载(或以其他方式同步)包括新的受保护数据的整个数据空间,包括例如公共数据。
图1示意性地示出了用于在在线数据源与客户端软件应用之间同步数据的系统10。如图1所示,系统10包括在线数据源12、多个客户端或用户设备14(也单独称为用户设备14)和通信网络16。应当理解,系统10被提供作为示例,并且在一些实施例中,系统10包括另外的组件。例如,系统10可以包括更少或额外的用户设备14、多于一个的在线数据源12、多于一个的通信网络16等。
在线数据源12和多个用户设备14通过通信网络16进行通信。通信网络16的部分可以使用无线网络来实现,例如广域网(例如,互联网),局域网(例如,蓝牙TM网络或Wi-Fi),或其组合或衍生物。替代地或另外地,通信网络16的部分可以使用专用连接(例如有线或无线连接)来实现。还应当理解,在一些实施例中,在线数据源12和多个用户设备14可以通过图1中未示出的一个或多个中间设备进行通信。
在线数据源12包括一个或多个计算设备,例如一个或多个服务器。例如,如图2所示,在一些实施例中,在线数据源12包括至少一个服务器,该服务器包括电子处理器20、存储器22和通信接口24。电子处理器20、存储器22和通信接口24通过一个或多个通信线路或总线,以无线方式,或它们的组合进行通信。在一些实施例中,在线数据源12包括除了图2中所示的那些组件之外的另外的组件,并且包括在在线数据源12中的组件可以以各种配置布置。例如,如前所述,在一些实施例中,在线数据源12包括多个服务器、数据库等以提供在线数据源。
可以包括无线收发器的通信接口24允许在线数据源12通过通信网络16与外部设备通信,例如多个用户设备14,进行通信。
存储器22包括非暂时性计算机可读的存储介质。电子处理器20包括微处理器、专用集成电路(ASIC)或其他合适的电子设备。电子处理器20被配置为从存储器22中取回数据,并且执行与本文描述的方法相关的软件(指令)等。
例如,如图2所示,存储器22存储认证软件25和令牌生成软件26。应当理解,本文描述的由软件25和26执行的功能可以在各种配置中组合和分布。例如,在一些实施例中,本文描述的经由令牌生成软件26执行的功能由认证软件25执行,反之亦然。此外,在一些实施例中,在线数据源12使用的软件应用可以被存储在相同或不同服务器或其他类型的计算设备上的不同存储器中。因此,图2所示的软件的配置被提供作为一种示例配置并且不应被认为是限制性的。
认证软件25在由电子处理器20执行时,基于认证信息来认证用户或与用户相关联的用户设备14,目的是授予对在线数据源12的访问权,特别是,授予对存储在在线数据源12内的受保护数据的访问权。在一些实施例中,认证软件25被配置为执行多因素认证以认证用户(例如经由电子邮件、文本消息等向用户发送带有验证码的电子通信)。然而,可以使用其他认证技术。
令牌生成软件26在由电子处理器20执行时生成受保护数据同步(“受保护数据同步(protected data sync)”)令牌,其授权用户设备14的用户访问受保护数据,如下所述。在一些实施例中,令牌生成软件26在用户经由认证软件25被认证之后生成这样的令牌。由令牌生成软件26生成的受保护数据同步令牌例如是不可变的(例如,文本)字符串,其包含可解析以标识用户、用户设备14、安装在用户设备14上的客户端应用或其组合的唯一标识符,并授予对以其他方式受保护而无法进行公共访问的数据的访问权。例如,受保护数据同步令牌可以标识存储在用户被授权访问和下载的在线数据源12内的受保护数据。认证令牌还可以包括定时信息,例如指示特定受保护数据集的最后下载或同步的时间戳。
在一些实施例中,令牌生成软件26还生成数据空间同步(“数据空间同步(dataspace sync)”)令牌。数据空间令牌用于同步先前下载的数据以捕获对利用在线数据源12维护的数据所做的更改。数据空间同步令牌可以标识用户、用户设备14、安装在用户设备14上的客户端应用、或它们的组合。在一些实施例中,数据空间同步令牌还包括标识要同步的数据的信息,包括用户被授权访问的受保护数据集。在一些实施例中,数据空间同步令牌还包括定时信息(时间戳),例如执行最近同步的时间等。
例如,数据空间同步令牌可以用于跟踪由在线数据源12维护的共享数据空间内的变化。例如,当用户第一次访问在线数据源12时,在线数据源12可以提供初始数据空间同步令牌,其可以是空字符串。当用户随后请求同步(其可以周期性地执行或响应于用户请求或其他触发动作或事件而执行)时,用户将数据空间同步令牌提交给在线数据源12(例如,作为同步请求的一部分)。在线数据源12使用所接收的数据空间同步令牌来确定表示上次下载或同步的时间的适用时间戳,在线数据源12使用该时间戳来识别(通过查询一个或多个数据库)包括在共享数据空间中的、修改日期大于(超过)适用时间戳的数据项。在线数据源12对所识别的数据项(按修改日期)进行排序,并且将所识别的数据项(按排序)连同包括更新的时间戳的更新的数据空间同步令牌返回给用户。时间戳可以被设置为当前时间和日期,或者紧接在最后识别的修改之后的时间。用户(用户设备14)将所接收的修改应用到共享空间的本地存储副本以保持本地副本与在线数据源12一致。因此,在一些实施例中,用户接收应用到共享数据空间的一个数据空间同步令牌,但将为包括在共享数据空间中的每个受保护数据集接收单独的受保护数据同步令牌。在一些实施例中,每个受保护数据同步令牌的功能类似于如上所述的数据空间同步令牌,但仅用于识别受保护数据集内的修改(与整个共享数据空间相比)。
如图2所示,在线数据源12还包括共享数据空间27,其包括公共数据集28和一个或多个受保护数据集29A、29B和29C(也统称为受保护数据集29)。如上所述,一个或多个用户与共享数据空间27相关联,并且这些用户可以访问共享数据空间27以下载存储在空间27中的数据以用于用户设备14上的本地存储。为了维护本地存储的数据与存储在共享数据空间27中的数据一致,用户设备14周期性地(以自动频率,响应于用户请求或其他触发事件,或其组合)将本地存储的数据与包含在共享数据空间27中的数据同步,例如通过使用如上所述的数据空间同步令牌。还如上所述,与共享数据空间27相关联的每个用户都可以访问和下载存储在空间27中的公共数据集28。然而,对于受保护数据集29,必须授予用户访问受保护数据集29的权限,并且必须提供认证信息以根据用户的当前权限访问受保护数据。在一些实施例中,公共数据集28和受保护数据集29二者都受到保护并且需要访问授权。在这些实施例中,受保护数据集29比公共数据集28受到更多保护。例如,公共数据集28可能需要登录帐户或执行访问授权,而受保护数据集29可能需要这两者,并且另外,每次用户希望访问受保护数据集29时都需要多因素授权。
在一些实施例中,公共数据集28和受保护数据集29可以包括需要不同授权级别的多层数据。例如,受保护数据集29可以包括由进一步授权保护的第二级数据(例如,仅对管理者或有权访问受保护数据集29的某些许可的人可用的更受保护数据集)。很像受保护数据集29需要比公共数据集28更进一步的访问权限,即使用户有权访问受保护数据集29,该第二层也需要比受保护数据集29更进一步的访问权限。而且,在单个层中,可能有多个范围(例如,文件夹),每个范围都需要不同的认证(例如,不同的密码、代码等)。
在一些实施例中,存储在共享数据集27中的数据的至少一部分(例如,受保护数据集29A-C中的至少一个)可以被加密。如果用户被授予对受保护数据集的权限并且用户设备14具有可能破坏受保护数据集29的恶意软件或其他有害软件,则这尤其有利。
应当理解,由在线数据源12托管的共享数据空间27可以分布在包括在单个服务器或多个服务器或其他计算设备中的多个存储器上,例如一个或多个数据库。
多个用户设备14中的每一个用户设备14都远离在线数据源12(与其分离)并且包括计算设备,例如台式计算机、膝上型计算机、平板计算机、终端、服务器、智能电视、电子白板、平板电脑、智能手机、可穿戴设备等。如图3所示,在一些实施例中,用户设备14包括电子处理器30、存储器32、人机接口(HMI)34和通信接口36。电子处理器30、存储器32、HMI 34和通信接口36通过一条或多条通信线路或总线、以无线方式或其组合进行通信。在一些实施例中,用户设备14包括除了图3中所示的那些组件之外的另外的组件,例如另外的存储器、处理器等。此外,图3所示的包括在用户设备14中的组件可以以各种配置布置。
可以包括无线收发器的通信接口36允许用户设备14通过通信网络16与诸如在线数据源12之类的外部设备通信。
HMI 34包括输入设备、输出设备或它们的组合。例如,HMI 34可以包括显示设备、触摸屏、键盘、小键盘、按钮、光标控制设备、打印机、扬声器、虚拟现实耳机、麦克风等。在一些实施例中,用户设备14包括多个HMI。例如,用户设备14可以包括触摸屏和小键盘。在一些实施例中,HMI 34被包括在与用户设备14相同的外壳中。然而,在其他实施例中,HMI 34可以在用户设备14的外部,但是可以通过有线或无线连接与用户设备14通信。例如,在一些实施例中,用户设备14包括经由线缆或其他类型的有线或无线连接连接到用户设备14的显示设备。
存储器32包括非暂时性计算机可读存储介质。电子处理器30包括微处理器、专用集成电路(ASIC)或其他合适的电子设备。电子处理器30被配置为从存储器32取回数据,并且执行软件指令以执行各种功能等。
如图3所示,存储器32存储客户端软件应用37。客户端软件应用37在由电子处理器30执行时管理对在线数据源12中存储的数据(例如,共享数据空间27)的访问、下载和同步。例如,客户端软件应用37可以提供用户接口,其允许用户查看和访问存储在共享数据空间27中的数据,选择数据以下载以用于用户设备14(存储器32)上的本地存储,对下载的数据进行更改,并且同步在用户设备14和在线数据源12处对数据所做的任何更改。应当理解,客户端软件应用37也可以执行本文没有描述的另外的功能。例如,在一些实施例中,客户端软件应用37还执行数据处理功能,例如经由电子表格应用、文字处理应用、演示应用、数据库应用等提供的功能。
在一些实施例中,由令牌生成软件26生成的受保护数据同步令牌和数据空间同步令牌被发布到客户端软件应用37并由其接收。在一些实施例中,所接收的令牌链接到特定客户端软件应用。然而,在其他实施例中,此类令牌可由不同的客户端软件应用使用。例如,在一些实施例中,用户设备14存储多个客户端软件应用,其中,不同的应用可以访问不同的空间27、同一空间27内的不同数据集或它们的组合。在这种情况下,可以生成唯一的令牌来控制可通过每个客户端软件应用访问的数据。
如上所述,不是每次用户对空间27的权限变化时都重新下载共享数据空间27(包括任何公共数据集28),令牌生成软件26可以被配置为生成针对新的受保护数据的受保护数据同步令牌。用户设备14(客户端软件应用37)使用令牌来下载新的受保护数据,而无需还下载(或以其他方式同步)共享数据空间27的其他部分,例如公共数据集28。在完成了下载之后,客户端软件应用37基于数据空间同步令牌执行与共享数据空间的同步,以同步包括新的受保护数据的共享数据空间27。
例如,图4是示出根据一个实施例的用于在在线数据源12和客户端软件应用37之间同步数据的方法40的流程图。方法40被描述为由用户设备14(由电子处理器30执行的客户端软件应用37)执行。然而,在一些实施例中,方法40或其部分可以由其他设备或硬件或软件组件来执行。
如图4所示,方法40包括,响应于用户设备14的用户关于共享数据空间27的权限的变化,在用户设备14处接收用于与变化的用户权限相关联的受保护数据的受保护数据同步令牌(在框42处)。例如,用户设备14的用户可以加入新团队,开始新项目或在现有项目中担任新角色并且需要访问某个受保护数据集,例如受保护数据集29A。类似地,随着新的受保护数据被添加到共享数据空间27,与用户相关联的权限可以被更新以授予对该受保护数据的访问,这代表用户权限的变化。在一些实施例中,管理者或其他管理员控制对受保护数据的权限。如上所述,所接收的受保护数据同步令牌可以标识用户已被授予访问权限的一个或多个受保护数据集。受保护数据同步令牌还可以标识用户、用户设备14、客户端软件应用37或它们的组合。
在一些实施例中,在用户被认证之后生成受保护数据同步令牌。例如,认证软件25可以执行用户的多因素认证,并且该认证过程的成功完成可以触发合适的受保护数据同步令牌的生成。
在用户设备14接收并存储了发布的受保护数据同步令牌之后(在框42处),在线数据源12和客户端软件应用37之间的任何正在进行的同步动作停止(这包括更新的数据空间同步令牌的存储),并且客户端软件应用37使用所接收的受保护数据同步令牌下载新的受保护数据集(例如,受保护数据集29A),而不下载(或以其他方式同步)共享数据空间27的其他部分,例如公共数据集28(在框43处)。
在下载了新的受保护数据集29A之后(在框43处),包括使用受保护数据同步令牌下载的受保护数据29的共享数据空间27被同步(在框44处)。同步空间27可以包括向在线数据源12提交包括存储的数据空间同步令牌的请求。如上所述,在线数据源12使用所接收的数据空间同步令牌来识别需要应用于用户设备14上的、共享数据空间27的本地存储副本的修改。如上所述,与对于每个同步以及可供用户访问的每个新的受保护数据集都将共享数据空间27(包括公共数据集28)完全重新下载到用户设备14相比,以此方式执行同步提供了对计算资源(处理周期、带宽、电池寿命等)的更有效使用。
在一些实施例中,每个受保护数据同步令牌与数据空间同步令牌一起存储以指示用户可以同步哪些受保护数据集。然而,在其他实施例中,在下载了相关联的受保护数据集和同步了共享数据空间27(包括新下载的受保护数据集)之后,每个受保护数据同步令牌用于更新数据空间同步令牌以指示:用户现在可以同步受保护数据集。例如,可以修改数据空间同步令牌以包括允许用户访问的受保护数据集的唯一标识符。在更新了数据空间同步令牌之后,可以丢弃受保护数据同步令牌,这实现了有效的存储器使用。
如上所述,如上所述的用户权限的变化可以包括授予对共享数据空间27中的新的(对于用户而言是新的或对于共享数据空间27而言是新的)受保护数据集的访问权。类似地,在一些实施例中,用户权限的变化可以包括撤回对包括在共享数据空间27中的现有受保护数据集的访问权。例如,当用户对特定受保护数据集29的权被撤销时,先前提供的受保护数据同步令牌可以被撤销,这可以触发用户设备14的先前下载的受保护数据的删除(作为如上所述的同步的一部分),或者可以修改数据空间同步令牌以移除受保护数据集29的标识符。例如,可以向客户端软件应用37提供撤销通知,以触发先前提供的受保护数据同步令牌的删除,或受保护数据集29的标识符从数据空间同步令牌的移除。类似地,在一些实施例中,认证令牌的撤销可以单独触发与被撤销的权限相关联的任何下载数据的删除,以在如上所述执行空间27的一般同步之前无延迟地执行该删除并实施数据完整性。因此,不是删除所有先前下载的数据并随后从共享数据空间27重新下载适用数据(这浪费计算资源并引入延迟),而是仅删除撤销的受保护数据而不删除先前下载到用户设备14的、共享数据空间的其他部分,例如公共数据集。
因此,如上所述,通过使用子范围同步,新的受保护数据被快速下载并在客户端设备处可用,而不重新下载(或以其他方式同步)整个共享数据空间,除了受保护数据外,该共享数据空间还可以包括公共数据。因此,所公开的同步过程更有效地使用计算资源并减少完成同步的延迟,尤其是在提供新的受保护数据集时。
在所附权利要求中阐述了一些实施例的各种特征和优点。

Claims (15)

1.一种用于在在线数据源与客户端应用之间同步数据的系统,所述系统包括:
用户设备,其包括存储所述客户端应用的存储器和电子处理器,所述电子处理器被配置为执行所述客户端应用以进行以下操作:
响应于与用户相关联的、对包括在所述在线数据源的共享数据空间中的第一数据集的权限的变化,
从所述在线数据源接收与所述第一数据集关联的数据同步令牌,
使用所述数据同步令牌,将包括在所述共享数据空间中的所述第一数据集从所述在线数据源下载到所述客户端应用,而不重新下载包括在所述共享数据空间中的第二数据集,以及
在下载了所述第一数据集之后,使用存储的数据空间同步令牌和与所述第一数据集相关联的所述数据同步令牌,在所述在线数据源与所述客户端应用之间同步包括所述第一数据集和所述第二数据集的所述共享数据空间。
2.如权利要求1所述的系统,其中,所述电子处理器还被配置为:在接收到所述数据同步令牌之前,向所述在线数据源提供认证信息。
3.如权利要求1所述的系统,其中,所述第一数据集是受保护数据集,并且所述第二数据集是公共数据集。
4.如权利要求1所述的系统,其中,所述第一数据集和所述第二数据集中的至少一个数据集的至少一部分被加密。
5.如权利要求1所述的系统,其中,所述第一数据集和所述第二数据集中的至少一个数据集包括需要不同认证级别的多层数据。
6.如权利要求1所述的系统,其中,所述第一数据集和所述第二数据集中的至少一个数据集包括含有多个范围的数据层,其中,所述多个范围中的每个范围都需要不同的认证级别。
7.存储指令的计算机可读介质,所述指令当由电子处理器执行时执行一组功能,所述一组功能包括:
响应于与用户相关联的、对包括在在线数据源的共享数据空间中的数据的权限的变化,所述权限的变化包括对包括在存储的数据空间中的受保护数据集的权限的撤回,
在客户端应用处,从所述在线数据源接收对于与所述受保护数据集相关联的先前接收到的受保护数据同步令牌的撤销通知;以及
响应于所述撤销通知,
删除所述受保护数据同步令牌,
从所述共享数据空间的本地存储副本中删除所述受保护数据集,而不从所述共享数据空间的所述本地存储副本中删除公共数据集,以及
在删除了所述受保护数据集之后,使用存储的数据空间同步令牌,在所述在线源与所述客户端应用之间同步包括所述公共数据集并且排除所述受保护数据集的所述共享数据空间。
8.一种在在线数据源与客户端应用之间同步数据的方法,所述方法包括:
响应于与用户相关联的、对包括在所述在线数据源的共享数据空间中的受保护数据集的权限的变化,
利用与所述用户相关联的所述客户端应用来接收由所述在线数据源发布的与所述受保护数据集相关联的受保护数据同步令牌;
利用所述客户端应用,使用所述受保护数据同步令牌来将包括在所述共享数据空间中的所述受保护数据集从所述在线数据源下载到所述客户端应用,而不重新下载包括在所述共享数据空间中的公共数据集;以及
在下载了所述受保护数据集之后,使用存储的数据空间同步令牌,在所述在线数据源与所述客户端应用之间同步包括所述受保护数据集和所述公共数据集的所述共享数据空间。
9.如权利要求8所述的方法,还包括:在接收到所述受保护数据同步令牌之前,从所述客户端应用向所述在线数据源提供认证信息。
10.如权利要求9所述的方法,其中,提供认证信息包括:完成多因素认证。
11.如权利要求8所述的方法,其中,下载所述受保护数据集包括:下载包括在所述共享数据空间中的新的受保护数据集,其中,所述权限的变化包括所述用户被授予访问所述新的受保护数据集的权限,并且其中,所述受保护数据数据同步令牌包括所述新的受保护数据集的标识符。
12.如权利要求8所述的方法,其中,同步所述共享数据空间包括:使用所存储的数据空间同步令牌和所述受保护数据同步令牌来同步所述共享数据空间。
13.如权利要求8所述的方法,其中,同步所述共享数据空间包括:识别自先前同步以来对所述共享数据空间所做的更改,并且将所述更改应用于所述共享数据空间的本地存储副本。
14.如权利要求13所述的方法,其中,应用所述更改包括:在所述受保护数据集正在被下载的同时,应用对所述受保护数据集所做的更改。
15.如权利要求8所述的方法,还包括:在下载所述受保护数据集之前,存储所述数据空间同步令牌。
CN202080043430.5A 2019-06-18 2020-04-28 子范围同步 Pending CN113950677A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/444,864 2019-06-18
US16/444,864 US11226983B2 (en) 2019-06-18 2019-06-18 Sub-scope synchronization
PCT/US2020/030323 WO2020256834A1 (en) 2019-06-18 2020-04-28 Sub-scope synchronization

Publications (1)

Publication Number Publication Date
CN113950677A true CN113950677A (zh) 2022-01-18

Family

ID=70779889

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080043430.5A Pending CN113950677A (zh) 2019-06-18 2020-04-28 子范围同步

Country Status (4)

Country Link
US (1) US11226983B2 (zh)
EP (1) EP3983919A1 (zh)
CN (1) CN113950677A (zh)
WO (1) WO2020256834A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535662B (zh) * 2020-07-09 2023-04-07 抖音视界有限公司 一种信息位置的指示方法、装置、电子设备及存储介质

Family Cites Families (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006274A (en) * 1997-01-30 1999-12-21 3Com Corporation Method and apparatus using a pass through personal computer connected to both a local communication link and a computer network for indentifying and synchronizing a preferred computer with a portable computer
US6510210B1 (en) * 1999-12-14 2003-01-21 Nortel Networks Limited Communication enabled consumer products and controller
US7412462B2 (en) * 2000-02-18 2008-08-12 Burnside Acquisition, Llc Data repository and method for promoting network storage of data
US7478434B1 (en) 2000-05-31 2009-01-13 International Business Machines Corporation Authentication and authorization protocol for secure web-based access to a protected resource
EP1309153A1 (en) * 2001-11-02 2003-05-07 BRITISH TELECOMMUNICATIONS public limited company File download operation
US7299285B2 (en) * 2002-05-15 2007-11-20 Adc Dsl Systems, Inc. Resource sharing with database synchronization
KR100719022B1 (ko) * 2005-08-18 2007-05-17 삼성전자주식회사 디지털 방송시스템 및 디지털 방송시스템의소프트웨어 다운로드 방법과, 디지털tv 및 디지털tv 의소프트웨어 다운로드 방법
US7469269B2 (en) * 2005-12-05 2008-12-23 At&T Intellectual Property I, L.P. Method for exchanging content between communication devices
US20070130463A1 (en) * 2005-12-06 2007-06-07 Eric Chun Wah Law Single one-time password token with single PIN for access to multiple providers
US9280773B1 (en) * 2006-08-30 2016-03-08 Qurio Holdings, Inc. System and method for managing first party rights to content captured by third parties
US7574444B2 (en) * 2006-11-15 2009-08-11 Palm, Inc. Device-side data de-duping
US8543829B2 (en) * 2007-01-05 2013-09-24 Ebay Inc. Token device re-synchronization through a network solution
US8656472B2 (en) 2007-04-20 2014-02-18 Microsoft Corporation Request-specific authentication for accessing web service resources
US8793509B1 (en) * 2008-02-12 2014-07-29 Google Inc. Web authorization with reduced user interaction
JP2009271589A (ja) * 2008-04-30 2009-11-19 Sony Corp 情報処理装置、その制御方法、制御プログラム及びネームマッピング情報
US9075894B2 (en) * 2010-11-01 2015-07-07 Blue Coat Systems, Inc. System and method for identifying web objects unworthy of being cached
US20120174212A1 (en) * 2010-12-29 2012-07-05 Microsoft Corporation Connected account provider for multiple personal computers
US20130117064A1 (en) * 2011-06-17 2013-05-09 Progress Software Corporation Business process analysis combining modeling, simulation and collaboration with web and cloud delivery
EP2724280B1 (en) * 2011-06-27 2020-05-20 Google LLC Persistent key access to a resources in a collection
EP2729877A4 (en) 2011-07-08 2015-06-17 Box Inc DESKTOP APPLICATION FOR ACCESS AND INTERACTION WITH JOBS IN A CLOUD-BASED CONTENT MANAGEMENT SYSTEM AND SYNCHRONIZATION MECHANISMS THEREFOR
US9635132B1 (en) * 2011-12-15 2017-04-25 Amazon Technologies, Inc. Service and APIs for remote volume-based block storage
US9367678B2 (en) * 2012-02-29 2016-06-14 Red Hat, Inc. Password authentication
US9054919B2 (en) * 2012-04-05 2015-06-09 Box, Inc. Device pinning capability for enterprise cloud service and storage accounts
US8806595B2 (en) * 2012-07-25 2014-08-12 Oracle International Corporation System and method of securing sharing of resources which require consent of multiple resource owners using group URI's
US8984582B2 (en) * 2012-08-14 2015-03-17 Confidela Ltd. System and method for secure synchronization of data across multiple computing devices
US20140053182A1 (en) 2012-08-20 2014-02-20 Veiko Jääger Method and system for evaluating and sharing media
US9342667B2 (en) * 2012-11-21 2016-05-17 Verizon Patent And Licensing Inc. Extended OAuth architecture
US10275609B2 (en) 2012-12-07 2019-04-30 Benedict Ow File sharing system and method
JP2016502377A (ja) * 2013-01-08 2016-01-21 バーイラン ユニバーシティー 安全計算を用いて安全性を提供する方法
US9853979B1 (en) * 2013-03-11 2017-12-26 Amazon Technologies, Inc. Immediate policy effectiveness in eventually consistent systems
WO2014201811A1 (en) * 2013-06-20 2014-12-24 Tencent Technology (Shenzhen) Company Limited Method, device and system for logging in through a browser application at a client terminal
US9043605B1 (en) 2013-09-19 2015-05-26 Emc Corporation Online and offline validation of tokencodes
US9460405B2 (en) 2013-10-03 2016-10-04 Paypal, Inc. Systems and methods for cloud data loss prevention integration
US9210183B2 (en) * 2013-12-19 2015-12-08 Microsoft Technology Licensing, Llc Detecting anomalous activity from accounts of an online service
US20150235042A1 (en) * 2014-02-14 2015-08-20 Symantec Corporation Systems and methods for authenticating an application
GB2524583B (en) * 2014-03-28 2017-08-09 Kaizen Reaux-Savonte Corey System, architecture and methods for an intelligent, self-aware and context-aware digital organism-based telecommunication system
US10387451B2 (en) * 2014-05-30 2019-08-20 Apple Inc. Synchronization system for multiple client devices
JP6376869B2 (ja) * 2014-07-10 2018-08-22 キヤノン株式会社 データ同期システム、その制御方法、認可サーバー、およびそのプログラム
EP3576436B1 (en) * 2014-12-29 2021-02-17 Visa International Service Association Over-the-air provisioning of application library
US10469484B1 (en) * 2015-01-27 2019-11-05 Google Llc Automatic discovery and retrieval of interoperable applications
US10178098B2 (en) * 2015-05-11 2019-01-08 Adobe Systems Incorporated Controlling user access to content
US9680833B2 (en) * 2015-06-25 2017-06-13 Imperva, Inc. Detection of compromised unmanaged client end stations using synchronized tokens from enterprise-managed client end stations
US9819665B1 (en) * 2015-06-26 2017-11-14 EMC IP Holding Company LLC Synchronization of access tokens for session continuity across multiple devices
WO2017053509A1 (en) * 2015-09-22 2017-03-30 Conjur, Inc. Dynamic computing resource access authorization
US10402373B1 (en) * 2016-02-08 2019-09-03 Amazon Technologies, Inc. Filesystem redirection
US10263776B2 (en) * 2016-03-12 2019-04-16 Uber Technologies, Inc. Multi-level encryption of tokenized protected data
US10936548B2 (en) * 2016-03-15 2021-03-02 Microsoft Technology Licensing, Llc File synchronization pausing for individual files
US20170325089A1 (en) * 2016-05-03 2017-11-09 Praneet Sharma Method and system of user authentication and end to end encryption using device synchronization
US10204237B2 (en) * 2016-07-01 2019-02-12 Workday, Inc. Sensitive data service access
US10509779B2 (en) * 2016-09-14 2019-12-17 Visa International Service Association Self-cleaning token vault
US10616327B2 (en) * 2016-09-20 2020-04-07 Microsoft Technology Licensing, Llc Policy based hydration behavior in cloud storage synchronization
US10616336B1 (en) * 2016-09-20 2020-04-07 Parallels International Gmbh File access service
TWI625982B (zh) * 2016-10-12 2018-06-01 Fuelstation Inc Wearable system for receiving audio using a docking station
US10740298B2 (en) * 2016-10-12 2020-08-11 Microsoft Technology Licensing, Llc File synchronization with reduced conflicts in computing systems
US20190394163A1 (en) * 2016-10-25 2019-12-26 American Megatrends International, Llc System and method for managing file access
KR102539580B1 (ko) * 2016-12-01 2023-06-05 삼성전자주식회사 조건부 액션에 대한 정보를 공유하기 위한 방법 및 그 전자 장치
US10491658B2 (en) * 2016-12-30 2019-11-26 Dropbox, Inc. In-collaborative content item notifications in shared collaborative content items
US10489423B2 (en) * 2016-12-30 2019-11-26 Microsoft Technology Licensing, Llc Most-relevant-first calendar event synchronization
US10791197B2 (en) * 2017-01-20 2020-09-29 Apple Inc. Managing access to media accounts
US11625469B2 (en) * 2017-05-19 2023-04-11 Microsoft Technology Licensing, Llc Prevention of organizational data leakage across platforms based on device status
US11080243B2 (en) * 2017-09-11 2021-08-03 Microsoft Technology Licensing, Llc Synchronizing virtualized file systems
US10678809B2 (en) * 2017-09-11 2020-06-09 Microsoft Technology Licensing, Llc Synchronizing non-file content stored on a collaborative workspace environment
US10771971B2 (en) * 2017-10-18 2020-09-08 Samuel Salloum Secured multi-factor authentication
US10866963B2 (en) * 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication
US10983987B2 (en) * 2018-01-05 2021-04-20 Telenav, Inc. Navigation system with update mechanism and method of operation thereof
WO2019200190A1 (en) * 2018-04-13 2019-10-17 Mastercard International Incorporated Systems and methods for use in providing digital identities
US11233792B2 (en) * 2018-05-02 2022-01-25 Mastercard International Incorporated Method and system for enhanced login credential security via blockchain
US10936292B2 (en) * 2018-10-26 2021-03-02 Salesforce.Com, Inc. Offline capabilities for live applications in a cloud collaboration platform
US11063953B2 (en) * 2018-11-07 2021-07-13 Citrix Systems, Inc. Systems and methods for continuous authentication
US11361317B2 (en) * 2019-05-29 2022-06-14 Comenity Llc Validating a customer in an electronic transaction
US11263173B2 (en) * 2019-07-30 2022-03-01 Commvault Systems, Inc. Transaction log index generation in an enterprise backup system
US11151088B2 (en) * 2019-08-02 2021-10-19 Salesforce.Com, Inc. Systems and methods for verifying performance of a modification request in a database system
US11074400B2 (en) * 2019-09-30 2021-07-27 Dropbox, Inc. Collaborative in-line content item annotations

Also Published As

Publication number Publication date
EP3983919A1 (en) 2022-04-20
US11226983B2 (en) 2022-01-18
WO2020256834A1 (en) 2020-12-24
US20200401600A1 (en) 2020-12-24

Similar Documents

Publication Publication Date Title
US11082426B2 (en) Identifying accounts having shared credentials
US10880287B2 (en) Out of box experience application API integration
US9961053B2 (en) Detecting compromised credentials
US10212143B2 (en) Authorizing an untrusted client device for access on a content management system
AU2015363218B2 (en) No password user account access
US10534927B2 (en) Identifying and blocking prohibited content items in a content management system
US10565402B2 (en) System and method for serving online synchronized content from a sandbox domain via a temporary address
US10484383B2 (en) Pre-authorizing a client application to access a user account on a content management system
CN109691057B (zh) 经由私人内容分发网络可交换地取回敏感内容
US10237255B2 (en) Data synchronizing system, control method thereof, authorization server, and storage medium thereof
US11394715B2 (en) Proxy authorization of a network device
US9930063B2 (en) Random identifier generation for offline database
US11063922B2 (en) Virtual content repository
US11226983B2 (en) Sub-scope synchronization
KR101609506B1 (ko) 서버와 이동식 저장장치 간의 데이터 동기화 시스템 및 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination