代理数据访问请求和响应的制作方法

文档序号:9756875阅读:522来源:国知局
代理数据访问请求和响应的制作方法
【专利说明】代理数据访问请求和响应
[0001] 相关申请的交叉引用
[0002] 不适用 [0003] 背景
[0004] 背景和相关技术
[0005] 计算机系统及相关技术影响社会的许多方面。的确,计算机系统处理信息的能力 已转变了人们生活和工作的方式。现在,计算机系统通常执行在计算机系统出现以前人工 执行的许多任务(例如,文字处理、日程安排、帐目管理等)。最近,计算机系统彼此耦合并耦 合到其他电子设备以形成计算机系统及其他电子设备可在其上传输电子数据的有线和无 线计算机网络。因此,许多计算任务的执行被分布在多个不同的计算机系统和/或多个不同 的计算环境中。
[0006] 在一些环境中,一个计算机系统使用web服务与另一计算机系统交换数据。一般来 说,web服务是通过网络在两个电子设备之间进行通信的方法。web服务可通过web向某网络 地址处的软件功能提供始终工作的服务。请求数据的计算机系统被称为服务请求方。另一 方面,处理该请求并提供数据的计算机系统被称为服务提供方。
[0007] 许多web服务被构建为主要用于数据访问,并具有非常简单的(如果有的话)业务 逻辑。例如,服务提供方可在向服务请求方返回结果之前基于各种准则滤除数据。在任何事 件中,必须为每一web服务构建web服务外观(fafade).,而不管其复杂性如何。Web服务外 观可用类似的代码和安全性考虑来构建。
[0008] 然而,对web服务外观的使用也可在跨各web服务的安全策略和安全实施中引入不 一致性。Web服务由人类开发者构建。由此,每一 web服务可用其自己的实行安全策略和实施 (例如,授权)的方式来开发。在企业具有许多web服务时,各web服务之间的安全不一致性增 加了企业安全架构的复杂性。也就是说,企业可能必须维护多个不同的用于认证、授权等的 机制。每一 web服务也必须处理其自己的性能问题。
[0009] 企业服务总线(ESB)是用于在面向服务的架构(S0A)中设计并实现互相交互的软 件应用之间的通信的软件架构模型。ESB可用于管理请求,并将请求路由到开发者已经创建 的指定web服务。ESB可用于帮助确保将服务请求方与合适的服务提供方匹配。然而,在通信 被建立之后,安全不一致性和可变性能问题仍然存在。
[0010] 简要概述
[0011] 本发明涉及用于代理数据访问请求和响应的方法、系统和计算机程序产品。本发 明的各方面包括向查询引擎注册查询逻辑。本发明的各方面还包括代理数据访问请求和相 应的响应的代理流水线。代理流水线可接收来自外部身份(即,来自安全边界外部)的数据 访问请求、将外部身份映射到内部身份、使对内部身份的数据请求匹配先前注册的查询逻 辑、接收包括从所注册的查询逻辑返回的所请求数据的响应、以及重写响应以指示这些响 应是从代理流水线发送的。
[0012] 提供该概述以便以简化形式介绍概念的选集,所述概念在以下详细描述中被进一 步描述。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅 助确定要求保护的主题的范围。
[0013] 本发明的附加特征和优点将在以下描述中叙述,并且其一部分根据本描述将是显 而易见的,或者可通过对本发明的实践来获知。本发明的特征和优点可通过在所附权利要 求书中特别指出的工具和组合来实现和获得。本发明的这些以及其它特征、优点和特征将 根据以下描述和所附权利要求而变得更显而易见,或者可通过如此后阐述的对本发明的实 践而获知。
[0014] 附图简述
[0015] 为了描述可获得本发明的上述和其它优点和特征的方式,将通过参考附图中示出 的本发明的具体实现来对以上简要描述的本发明进行更具体描述。可以理解,这些附图仅 描述本发明的一些实现,从而不被认为是对其范围的限制,本发明将通过使用附图用附加 特征和细节来描述和说明,在附图中:
[0016] 图1示出促成代理数据访问请求和响应的示例计算机体系结构。
[0017] 图2示出用于代理数据访问请求和响应的示例方法的流程图。
[0018] 详细描述
[0019] 本发明涉及用于代理数据访问请求和响应的方法、系统和计算机程序产品。本发 明的各方面包括向查询引擎注册查询逻辑。本发明的各方面还包括代理数据访问请求和相 应的响应的代理流水线。代理流水线可接收来自外部身份(即,来自安全边界外部)的数据 访问请求、将外部身份映射到内部身份、使对内部身份的数据请求匹配先前注册的查询逻 辑、接收包括从所注册的查询逻辑返回的所请求数据的响应、以及重写响应以指示这些响 应是从代理流水线发送的。
[0020] 本发明的各实现可包括或利用专用或通用计算机,该专用或通用计算机包括诸如 举例而言一个或多个处理器和系统存储器的计算机硬件,如以下更详细讨论的。本发明范 围内的各实现还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其它计算 机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介 质。存储计算机可执行指令的计算机可读介质是计算机存储介质(设备)。承载计算机可执 行指令的计算机可读介质是传输介质。'由此,作为示例而非限制,本发明的各实现可包括 至少两种显著不同种类的计算机可读介质:计算机存储介质(设备)和传输介质。
[0021] 计算机存储介质(设备)包括RAM、R0M、EEPR0M、CD-R0M、固态驱动器("SSD")(如基 于RAM)、闪存、相变存储器("PCM")、其他类型的存储器、其他光盘存储、磁盘存储或其他磁 存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通 用或专用计算机访问的任何其他介质。
[0022] "网络"被定义为使得电子数据能够在计算机系统和/或模块和/或其它电子设备 之间传输的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者 硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传 输介质可以包括可以用来携带所需要的以计算机可执行的指令或数据结构的形式存在的 程序代码装置并可以被通用或专用计算机访问的网络和/或数据链路。上述的组合应当也 被包括在计算机可读介质的范围内。
[0023] 此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程 序代码装置可从传输介质自动传输到计算机存储介质(设备)(或反之亦然)。例如,通过网 络或数据链接接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如, "NIC")内的RAM中,然后最终被传输到计算机系统RAM和/或计算机系统处的较不易失性的 计算机存储介质(设备)。因而,应当理解,计算机存储介质(设备)可被包括在还利用(甚至 主要利用)传输介质的计算机系统组件中。
[0024] 计算机可执行指令例如包括,当在处理器处执行时使通用计算机、专用计算机、或 专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进 制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动 作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特 征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
[0025] 本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络 计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息 处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型 计算机、大型计算机、移动电话、PDA、平板、寻呼机、路由器、交换机等等。本发明也可在其中 通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路 的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系 统环境中,程序模块可以位于本地和远程存储器存储设备二者中。
[0026]本发明还可以在云计算环境中实现。在该描述和下面的权利要求书中,"云计算" 被定义为用于允许对可配置计算资源的共享池的按需网络访问的模型。例如,云计算可被 用于市场,以便提供对可配置计算资源的共享池的普遍存在且方便的按需访问。可配置计 算资源的共享池可经由虚拟化而被快速地供应,并可利用低管理
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1