向网络服务安全地发布数据的制作方法

文档序号:7888171阅读:173来源:国知局
专利名称:向网络服务安全地发布数据的制作方法
技术领域
本发明涉及向网络服务安全地发布数据。
背景技术
许多人利用基于本地的应用和/或基于web的应用来执行任务。例如,用户可使用驻留在本地网络内的程序/服务来与不同类型的数据进行交互。用户还可使用在线应用来与网络服务中的数据进行交互。在一些实例中,用户可能期望在本地服务与网络服务之间转移数据。可能难以在系统之间安全地转移数据,因为这些数据被主存在不同的服务器上并且通常包括不同的安全性机制。

发明内容
提供本发明内容以便以简化形式介绍将在以下具体实施方式
中进一步描述的一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。数据被从本地服务安全地发布到网络服务。用于发布到网络服务的数据是通过使用本地服务来选择的。响应于数据被选择用于发布,本地服务创建至网络服务的安全连接,并将数据转移到网络服务。例如,主数据(master data)服务(MDS)客户机应用可被用来从企业资源规划(ERP)服务器选择要发布到网络服务(诸如提供主数据服务的网络服务)的数据。所发布的数据由网络服务来接收,并被存储在数据存储中。数据可被存储在网络服务内,以使得用户可使用网络服务来消耗所发布的数据。


图I示出了示例性计算环境;图2示出了用于从本地服务向网络服务发布数据的系统;以及图3示出了用于安全地发布数据的示例性过程。
具体实施例方式现将参考附图来描述各实施例,在附图中类似的标号代表类似的元素。具体地,图I和相应的讨论旨在提供对在其中可实现各实施例的合适计算环境的简要、概括描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其它类型的结构。也可使用其它计算机系统配置,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等等。还可使用在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。现在参考图1,将描述在各个实施例中所利用的计算机100的说明性计算机环境。图I所示的计算机环境包括计算设备,这些计算设备各自可以被配置为服务器、台式或移动计算机、或者某一其他类型的计算设备,并且包括中央处理单元5 ( “CPU”)、包括随机存取存储器9 ( “RAM”)和只读存储器(“ROM”) 10的系统存储器7、以及将存储器耦合至中央处理单元(“CPU”)5的系统总线12。基本输入/输出系统存储在ROM 10中,所述基本输入/输出系统包含帮助在诸如启动期间在计算机内元件之间传递信息的基本例程。计算机100还包括大容量存储设备14,该大容量存储设备14用于存储操作系统16、数据11、MDS应用24、其它程序模块25、以及发布管理器26,这将在下面予以更详细的描述。大容量存储设备14通过连接至总线12的大容量存储控制器(未示出)连接到CPU 5。大容量存储设备14及其相关联的计算机可读介质为计算机100提供非易失性存储。虽然此处包含的对计算机可读介质的描述针对诸如硬盘或CD-ROM驱动器等大容量存储设备,但是计算机可读介质可以是能够由计算机100访问的任何可用介质。

作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质还包括,但不限于,RAM、ROM、可擦除可编程只读存储器(“EPR0M”)、电可擦可编程只读存储器(“EEPR0M”)、闪存或其它固态存储器技术、⑶-ROM、数字多功能盘(“DVD”)或其它光存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机100访问的任何其它介质。计算机100使用通过诸如因特网之类的网络18与远程计算机的逻辑连接而在网络化环境中操作。计算机100可以通过连接至总线12的网络接口单元20来连接到网络18。网络连接可以是无线的和/或有线的。网络接口单元20也可用于连接到其它类型的网络和远程计算机系统。计算机100还可包括用于接收和处理来自多个其他设备的输入的输入/输出控制器22,这些设备包括键盘、鼠标或者电子指示笔(未在图I中示出)。类似地,输入/输出控制器22可以提供到IP电话、显示屏23、打印机或其它类型的输入/输出设备的输入/输出。如前简述的那样,多个程序模块和数据文件可以存储在计算机100的大容量存储设备14和RAM 9内,包括适于控制计算机的操作的操作系统16,如华盛顿州雷蒙德市的微软公司的WINDOWS SERVER 或WINDOWS 7 操作系统。大容量存储设备14和RAM 9还可以存储一个或多个程序模块。具体而言,大容量存储设备14和RAM 9可以存储包括MDS应用24和程序模块25的一个或多个应用程序。根据一实施例,MDS应用24是可与微软动态AX应用相关联的微软公司应用。也可使用与主数据交互的其他ERP/MDS应用。主数据可以是许多类型的数据。一般而言,主数据是关键的商业名词,并且一般落入以下四个编组中人类、事物、地点和概念。这些编组内的进一步分类被称为主题区域、域区域、或实体类型。例如,在人类内,有客户、雇员和销售人员。在事物内,有产品、部件、储备、和资产。在概念内,有类似合同、被担保人和许可的事物。最后,在地点内,有办公室位置和地理划分。这些域中的一些可被进一步划分。可基于动机和历史来进一步分割客户。公司可具有一般客户、以及首要和代表(executive)顾客。产品还可按部门和产业来进一步分割。快速消费品(Consumer Packaged Goods CPG)部门中的产品的需求、使用寿命、和CRUD (创建、读取、更新、删除和搜索)周期很可能与服装行业的那些极为不同。域的粒度本质上由它们内的实体的属性之间的差异的大小来决定。主数据可通过其与其他数据交互的方式来描述。例如,在事务系统中,主数据通常涉及事务数据。客户购买一产品。厂商销售部件,而合作者将一箱材料递送到地点。雇员与其管理者分层地相关,雇员通过管理者(另一雇员)向上报告。产品可以是描述其在商店内的位置的多个分层结构的一部分。主数据与事务数据之间的这种关系基本上可被视为名词/动词关系。事务数据捕捉诸如销售、递送、购买、电子邮件发送、和撤销之类的动词;主数据是名词。这是相同关系数据仓库事实(fact)和维度(dimension)共享。随着基数(集合中元素的数目)减少,元素被作为主数据元素一甚至诸如客户之类的普遍接受的主题区域一一来对待的可能性减小。例如,如果公司仅具有三个客户,则最可能的是他们可能不会考虑那些客户主数据——至少在用主数据管理方案支持他们的上下文中不会考虑,只是因为通过主数据基础架构来管理那些客户毫无益处。但是,具有数千客户的公司将认为客户是重要的主题区域,这是因为管理这样的大实体集的所伴随的问题以及益处。客户对这些公司中的每一个的价值是相同的。都依赖于其企业的客户。一个需要客户主数据解决方案;另一个则不需要。基数不改变给定实体类型的分类;然而,具有 用于管理实体类型的方案的重要性随着实体类型的基数的增长而增加。主数据往往比事务数据更不易失。随着其变得更加易失,其通常被认为更加事务性。例如,一些可能认为“合同”是主数据元素。其他可能认为其是事务。取决于合同的有效期限,其可能变成任一情形。推广职业运动员的代理可能认为其合同是主数据。合同彼此各不相同,并且通常具有超过一年的有效期限。可能倾向于简单地具有称为“运动员”的一个主数据项。然而,运动员往往在任何给定时间具有一个以上的合同一个是与其团队的,而其他是与签署产品的公司的。代理可能需要随着时间管理所有这些合同——因为合同元素被重新协商或者运动员被交易。其他合同(例如,详细描述汽车或对房子刷油漆的合同)更像是事务。它们是用于提供支付服务的一次性短暂契约,并且通常在数小时内被履行和销毁。简单的实体(甚至有价值的实体)对于管理而言一般不会是挑战,并且很少被认为是主数据元素。元素越不复杂,则越不可能需要管理此元素的改变。典型地,此类资产被简单地收集并被计数。例如,Fort Knox很可能不会跟踪关于存储在那里的每根个体金条的信息,而是仅仅维持它们的数目。每根金条的价值是牢固的,基数高且寿命长;但是,复杂度很低。对于公司而言,数据元素的越有价值,则其将越可能被认为是主数据元素。价值和复杂度共同合作。虽然主数据通常比起事务数据更不易失,但是具有完全不改变的属性的实体通常不被分类为主数据。例如,稀有硬币可能看起来满足主数据待遇的准则中的许多准则。稀有硬币收藏家很可能具有许多稀有硬币。所以,基数是高的。它们是有价值的。它们也是复杂的。例如,稀有硬币具有历史和描述。存在诸属性,诸如正面、背面、情况、硬币上的文字、铭刻、镶边、以及底色的情况。存在其他属性,诸如设计者姓名缩写、边缘设计、层、以及肖像。但是,稀有硬币无需作为主数据项来管理,因为它们不随时间而改变一或者至少它们不会改变很多。可能需要添加更多信息,因为特定硬币的历史被揭示,或者如果特定属性必须被校正。但是,一般而言,稀有硬币可能不通过主数据管理系统来管理,因为它们不足以易失来保证解决方案。主数据管理的驱动器(driver)中的一个是重用。例如,在简单世界中,CRM系统可管理关于客户的所有事情,并且无需与其他系统共享关于客户的任何信息。然而,在当今的复杂环境中,需要跨多个应用来共享客户信息。麻烦就从这里产生。因为(出于数个原因)对主数据的访问并非总是可用的,所以人们开始将主数据存储在各个位置,诸如电子表格和应用私有存储。存在要管理未跨企业重用的主数据的其他原因,诸如数据质量降级和衰退。然而,如果主数据实体在多个系统中被重用,则确信其应通过主数据管理系统来管理。虽然枚举各种主数据实体类型是简单的,但是有时决定公司中的哪些数据项应当作为主数据来对待更具挑战性。通常,一般不遵循主数据的定义的数据可能需要像那样来管理,而遵循定义的数据可能不需要。最终,在决定什么实体类型应当作为主数据来对待时,比起依赖于简单的实体类型列表,根据其在商业需要的上下文内的行为和属性来对它们进行分类是更好的。 根据一实施例,发布管理器26是客户机计算设备的MDS应用24内的组件。然而,发布管理器26也可以位于MDS应用的外部。发布管理器26被配置成向网络服务器/服务17安全地发布数据。诸如MDS应用24之类的客户机应用与对于MDS应用而言是本地的数据进行交互。例如,一个或多个ERP服务器可包含数据和主数据以发布到网络服务。数据被从诸如MDS应用之类的本地服务安全地发布到诸如网络服务17之类的基于web的服务。用于发布到网络服务的数据是通过使用本地服务来选择的。响应于数据被选择用于发布,发布管理器26创建至网络服务17的安全连接,并将数据转移到基于网络的服务。例如,主数据服务(MDS)客户机应用24可被用来选择包含在企业资源规划(ERP)服务器或者某一其他位置上的数据,以便发布到网络服务17。网络服务17被配置成提供与主数据进行交互的服务。所发布的数据由网络服务17来接收,并被存储在诸如数据存储27之类的数据存储中。数据也可被直接存储在网络服务内。所发布的主数据可通过基于web的接口和/或某一其他接口来消费。图2示出了用于从本地服务向网络服务发布数据的系统。如图所示的,系统200包括ERP系统205、网络服务225和计算设备2 (220)。ERP系统包括计算设备I (210)、发布管理器26和ERP服务器215。网络服务225包括网络共享230和服务器240。更多或更少的计算机可被配置成在图2中例示的系统内操作。计算设备可用许多不同的方式来配置。例如,这些计算设备中的一些可以是移动计算设备(例如,蜂窝电话、平板计算机、智能电话、膝上型计算机等等)、台式计算设备和服务器。网络服务225可以被安排成提供基于云的在线服务(例如用于与主数据交互的ERP/MDS服务),一些网络服务可以被安排为数据共享,一些网络服务可以被安排在本地网络中,一些网络服务可以被安排在可通过因特网访问的网络中,等等。计算设备通过网络18被耦合。网络18可以是许多不同类型的网络。例如,网络18可以是IP网络、用于蜂窝通信的载波网络等等。一般而言,网络18用于在诸如计算设备I、网络共享230、网络服务240之类的计算设备之间传送数据。
计算设备I包括MDS应用212以及用户界面216。如图所示,计算设备I被用户用来与诸如存储在ERP服务器215内的主数据217之类的主数据交互。主数据可被存储在许多不同的位置中。例如,一个或多个数据存储可被用来存储与ERP系统205有关的主数据。用户界面(UI)216被用来与诸如MDS应用212之类的应用进行交互。例如,UI 216可被用来选择将被发布到网络服务225的表/视图。根据一实施例,网络服务225提供主数据服务。一旦所选数据被发布到网络服务225,网络服务就自动地创建相对应的表/视图并开始将数据从ERP系统205/网络服务225汇合到网络服务225/ERP系统205。计算设备2包括一个或多个应用,诸如可被配置成查看/输入被发布到网络服务225的主数据/与该数据交互的web浏览器222。例如,web浏览器222可被用来访问提供主数据服务的网络服务225内的诸如服务器240之类的服务器。网络服务225包括服务器240和网络共享230。服务器240包括web应用242,web应用包括web呈现器244。Web应用242被配置成接收与主数据服务相关的请求并对其进 行响应。例如,服务器240可以访问存储在网络共享230上的主数据233或其他数据232。Web应用242操作用于向诸如移动计算设备或某一其他计算设备(例如,计算设备2)之类的计算设备的用户提供接口以便经由网络18与主数据进行交互。网络服务225接收来自诸如计算设备I之类的计算设备的对接收诸如主数据之类的所发布数据的请求。诸如MDS应用212之类的客户机应用与ERP系统205内的数据进行交互。例如,一个或多个ERP服务器(诸如ERP服务器215)可包含被发布到网络服务225的数据和主数据。响应于数据被标识为将被发布,发布管理器26建立与网络服务225的安全连接。根据一实施例,建立从ERP系统205到网络服务225的连接。从ERP系统建立连接减轻ERP服务器从ERP系统外部的位置打开传入连接。连接可被自动关闭。例如,连接可在所标识的数据被推到网络服务225之后、在预定时间段已期满(例如,5分钟)之后、或在某一其他条件之后被自动关闭。用于发布到网络服务225的数据可以用不同的方式来标识。用户可使用用户界面216来选择数据。例如,主数据服务(MDS)客户机应用212和Π 216可被用来选择包含在ERP服务器215或者某一其他位置中的数据,以便发布到网络服务225。当诸如主数据217之类的数据被改变时,经改变的数据可被标识来进行发布。一般而言,用户将选择数据来发布到网络服务225。被标识来发布的数据可被标记,以使得可把要发布的数据与不被发布的其它数据辨别开。例如,可设置发布标志。要发布的数据在被发布之前也可被存储在诸如缓冲器之类的存储器/数据存储内。在建立了安全连接之后,发布管理器26将数据转移到网络服务。所发布的数据由网络服务225通过所建立的连接来接收,并被存储在诸如网络共享230之类的数据存储中。数据可以在不同的时间被转移。例如,发布管理器26可被配置成周期性地检查来确定是否存在要发布到网络服务225的数据(例如,每5分钟、每30分钟、每小时、每天两次、每天、等等)。也可响应于接收对要发布的数据的选择来发布数据。也可一旦数据量超过预定阈值(例如,多于50k数据、I兆字节数据等等)就发布数据。诸如计算设备2之类的计算设备可访问所发布的数据。例如,所发布的数据可通过基于web的接口(诸如web浏览器222)和/或某一其他接口来消费。根据一实施例,所发布的主数据被标记为网络服务225内的只读数据。现在參考图3,将描述用于安全发布数据的示例性过程。当阅读对在此提供的例程的讨论时,应当理解,各实施例的逻辑操作被实现为(I)运行于计算系统上的一系列计算机实现的动作或程序模块,和/或(2)计算系统内互连的机器逻辑电路或电路模块。该实现是取决于实现本发明的计算系统的性能要求来选择的。因此,所例示的并且构成此处所描述的实施例的逻辑操作被不同地表示为操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可用软件、固件、专用数字逻辑,及其任何组合来实现。在开始框之后,过程300移至操作310,在那里作出关于何时向网络服务发布数据的确定。如所讨论的,哪些数据要发布的确定可通过使用不同的方法来作出。例如,用户可选择数据来发布,经改变的数据可被自动标识成将被发布,由项目标识的数据可被标识成将被发布等等。

移至操作320,在本地服务与网络服务之间创建安全连接。根据ー实施例,本地服务是ERP系统,而网络服务提供用干与主数据进行交互的服务。根据ー实施例,安全连接源自本地服务。流至操作330,要发布的数据被转移到网络服务。不同的触发点可被用来确定何时将数据转移至网络服务。例如,数据可在预定时间被发布到网络服务(每5分钟、每30分钟、每小时、一天两次、每天等等)。也可响应于接收对要发布的数据的选择来发布数据。也可一旦数据量超过预定阈值(例如,多于50k数据、I兆字节数据等等)就发布数据。转至操作440,关闭安全连接。安全连接可被手动关闭和/或自动关闭。例如,连接可在所标识的数据被发布到网络服务之后、在预定时间段已期满(例如,5分钟)之后、或在某一其他条件之后被自动关闭。随后该过程行进到结束框,并返回以处理其它动作。以上说明、示例和数据提供了对本发明的组成部分的制造和使用的全面描述。因为可以在不背离本发明的精神和范围的情况下做出本发明的许多实施例,所以本发明落在所附权利要求的范围内。
权利要求
1.一种用于从本地服务向网络服务发布数据的方法,包括 确定何时将数据从所述本地服务发布到提供主数据管理服务的所述网络服务;其中所述数据的至少一部分是主数据; 创建从所述本地服务到所述网络服务的安全连接;以及 将所述要发布的数据从所述本地服务推到所述网络服务。
2.如权利要求I所述的方法,其特征在于,所述本地服务从本地网络内的企业资源规划(ERP)服务器获得所述数据。
3.如权利要求I所述的方法,其特征在于,还包括在所述数据被推到所述网络服务之后自动关闭至所述网络服务的所述安全连接。
4.如权利要求I所述的方法,其特征在于,确定何时将数据从所述本地服务发布到所述网络服务包括通过与主数据管理应用相关联的图形用户界面接收对要发布的数据的选择。
5.如权利要求I所述的方法,其特征在于,确定何时将数据从所述本地服务发布到所述网络服务包括确定要发布的数据的量何时超过预定阈值。
6.如权利要求I所述的方法,其特征在于,所述网络服务基于对要发布的数据的选择来创建相对应的实体。
7.如权利要求I所述的方法,其特征在于,在通过所述网络服务进行交互时,发布到所述网络服务的所述数据是只读主数据。
8.一种存储用于从本地服务向提供主数据管理服务的网络服务发布数据的计算机可执行指令的计算机可读存储介质,包括 确定何时将主数据从所述本地服务发布到所述网络服务;其中所述本地服务从企业资源规划(ERP)服务器获得所述主数据; 创建从所述本地服务到所述网络服务的安全连接; 将所述要发布的数据从所述本地服务推到所述网络服务;以及 在所述数据被推到所述网络服务之后自动关闭至所述网络服务的所述安全连接。
9.ー种用于从本地服务向网络服务发布数据的系统,包括 网络服务; 存储主数据的企业资源规划(ERP)服务器; 显示器; 被配置成连接至网络的网络连接; 处理器、存储器和计算机可读存储介质; 存储在所述计算机可读介质上并在所述处理器上执行的操作环境; 用干与主数据进行交互的客户机应用;以及 结合所述客户机应用操作的发布管理器,所述发布管理器被配置成执行包括以下的动作 周期性地执行检查以确定主数据何时已被标记来进行发布; 确定何时将主数据发布到所述网络服务; 创建至所述网络服务的安全连接; 将要发布的所述数据推到所述网络服务;以及在所述数据被推到所述网络服务之后关闭至所述网络服务的所述安全连接。
10.如权利要求9所述的系统,其特征在于,确定何时发布主数据包括确定要发布的主数据的量何时超过预定阈值。
全文摘要
本发明描述了向网络服务安全地发布数据。数据被从本地服务安全地发布到网络服务。用于发布给网络服务的数据是通过使用本地服务来选择的。响应于数据被选择用于发布,本地服务创建至网络服务的安全连接,并将数据转移到网络服务。例如,主数据服务(MDS)客户机应用可被用来从企业资源规划(ERP)服务器选择要发布到网络服务(诸如提供主数据服务的网络服务)的数据。所发布的数据由网络服务来接收,并被存储在数据存储中。数据可被存储在网络服务内,以使得用户可使用网络服务来消耗所发布的数据。
文档编号H04L29/08GK102682061SQ20121001983
公开日2012年9月19日 申请日期2012年1月20日 优先权日2011年1月27日
发明者A·马拉费, D·库库鲁佐, I·科罗温 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1