过滤对数据对象的访问的利记博彩app

文档序号:6562152阅读:257来源:国知局
专利名称:过滤对数据对象的访问的利记博彩app
技术领域
本发明的实施例一般地涉及软件开发,更具体而言涉及过滤对被开发 的源代码的一些部分的访问。
背景技术
在软件开发周期中,源代码通常是由许多不同的团队开发的。不同的 团队可能负责源代码的不同部分。随着软件程序变得更加复杂,生成的源 代码变得非常复杂和庞大。
源代码可在开发过程期间被构建(build)。这可能将源代码文件转换 为可执行代码。构建可以周期性地发生,例如每日发生,或在任何其他时 间发生。构建通常编译和链接源代码中的各种独立的文件。为了编译文件 并将文件链接在一起,源代码通常被存储在同一服务器上。编辑和编译也 在同一服务器上执行,以使文件能被构建在一起。从而,编辑源代码的用 户可以同时看到所有源代码。这可能允许不同团队访问源代码的一些部 分,而这些团队可能并没有在开发这些部分。当知识产权受到保护时,这 就可能是不合需要的了。例如,某个组织可能不希望一些团队能够查看源 代码的其他部分。

发明内容
根据本发明的第一技术方案,提供了一种方法,包括在第一设备处 接收来自第二设备的对存储在所述第一设备上的源代码的一部分的请求, 其中用户通过所述第二设备提交所述请求;确定与所述请求相关联的用户 是否被授权访问来自所述第一设备的所述源代码的所述部分;取得所述源 代码的所述部分;将所述源代码的所述部分发送到所述第二设备,其中所 述第二设备允许对所述源代码的所述部分进行编辑,并且所述源代码的所述部分在所述第一设备上是不可编辑的;在所述第一设备处,接收来自所 述第二设备的所述源代码的经编辑的部分;以及存储所述源代码的所述经
编辑的部分。
根据本发明的第二技术方案,提供了一种方法,包括在第一设备处 接收对存储在第二设备上的源代码的一部分的用户请求;生成对存储在所 述第二设备上的所述源代码的所述部分的代码请求;如果所述第二设备确 定与所述用户请求相关联的用户被授权访问所述源代码的所述部分,则接 收来自所述第二设备的所述源代码的所述部分;允许通过所述第一设备编 辑所述源代码的所述部分,其中所述源代码在所述第二设备上是不可编辑 的;以及在编辑之后将所述源代码的经编辑的部分发送到所述第二设备。
根据本发明的第三技术方案,提供了一种装置,包括 一个或多个处 理器;以及编码在一个或多个有形介质中、供所述一个或多个处理器执行 的逻辑,所述逻辑在被执行时可操作以用于在第一设备处接收来自第二 设备的对存储在所述第一设备上的源代码的一部分的请求,其中用户通过 所述第二设备提交所述请求;确定与所述请求相关联的用户是否被授权访 问来自所述第一设备的所述源代码的所述部分;取得所述源代码的所述部 分;将所述源代码的所述部分发送到所述第二设备,其中所述第二设备允 许对所述源代码的所述部分进行编辑,并且所述源代码的所述部分在所述 第一设备上是不可编辑的;在所述第一设备处,接收来自所述第二设备的 所述源代码的经编辑的部分;以及将所述源代码的所述经编辑的部分存储 在所述源代码中。
根据本发明的第四技术方案,提供了一种装置,包括 一个或多个处 理器;以及编码在一个或多个有形介质中、供所述一个或多个处理器执行 的逻辑,所述逻辑在被执行时可操作以用于在第一设备处接收对存储在 第二设备上的源代码的一部分的用户请求;生成对存储在所述第二设备上 的所述源代码的所述部分的代码请求;如果所述第二设备确定与所述用户 请求相关联的用户被授权访问所述源代码的所述部分,则接收来自所述第 二设备的所述源代码的所述部分;允许通过所述第一设备编辑所述源代码 的所述部分,其中所述源代码在所述第二设备上是不可编辑的;以及在编
辑之后将所述源代码的经编辑的部分发送到所述第二设备。
根据本发明的第五技术方案,提供了一种装置,包括用于在第一设 备处接收来自第二设备的对存储在所述第一设备上的源代码的一部分的请 求的装置,其中用户通过所述第二设备提交所述请求;用于确定与所述请 求相关联的用户是否被授权访问来自所述第一设备的所述源代码的所述部 分的装置;用于取得所述源代码的所述部分的装置;用于将所述源代码的 所述部分发送到所述第二设备的装置,其中所述第二设备允许对所述源代 码的所述部分进行编辑,并且所述源代码的所述部分在所述第一设备上是 不可编辑的;用于在所述第一设备处,接收来自所述第二设备的所述源代 码的经编辑的部分的装置;以及用于存储所述源代码的所述经编辑的部分 的装置。
根据本发明的第六技术方案,提供了一种装置,包括用于在第一设 备处接收对存储在第二设备上的源代码的一部分的用户请求的装置;用于 生成对存储在所述第二设备上的所述源代码的所述部分的代码请求的装 置;用于在所述第二设备确定与所述用户请求相关联的用户被授权访问所 述源代码的所述部分的情况下接收来自所述第二设备的所述源代码的所述 部分的装置;用于允许通过所述第一设备编辑所述源代码的所述部分的装 置,其中所述源代码在所述第二设备上是不可编辑的;以及用于在编辑之 后将所述源代码的经编辑的部分发送到所述第二设备的装置。


图l示出用于管理源代码的示例性系统。 图2示出图l所示系统的更详细示例。 图3示出用于控制对源代码的访问的方法的示例。 图4示出用于确定用户是否被授权访问来自代码服务器的源代码的一 部分的示例性方法。
具体实施方式
概述
在一个实施例中,提供了代码服务器和编辑服务器。代码服务器存储 源代码。用户不直接访问代码服务器。相反,使用了编辑服务器,其中用 户可登录到编辑服务器并发送要编辑源代码的一些部分的请求。编辑服务 器随后将针对被请求的那部分源代码向代码服务器发送请求。
不同用户对代码的一些部分可能具有不同的访问权限。例如,第一用 户可能能够访问代码的第一部分,而第二用户可能能够访问代码的第二部 分,但反过来就不行。当从编辑服务器接收到请求时,如果代码服务器确 定请求该部分源代码的用户对其没有访问权限,则代码服务器不允许该部 分代码被访问。但是,如果用户拥有访问权限,则该部分源代码被取得并 被发送到编辑服务器。用户随后可以在编辑服务器上编辑源代码。
当用户完成编辑源代码时,编辑服务器将经编辑的源代码发送回代码 服务器。代码服务器随后将该部分源代码存储回源代码中。上述过程被执 行,以使源代码仍能被构建/编译。即使一些部分被发送到编辑服务器以便 编辑,源代码目录也被维护。经编辑的源代码随后被存储回目录中,以使 源代码能够与经编辑的代码构建在一起。
示例性实施例
图1示出用于管理源代码的示例性系统100。如图所示,提供了代码
服务器102、编辑服务器104、存储装置106和用户设备108。
代码服务器102可以是任何计算设备。例如,代码服务器102可以是
服务器。在其他特定实施例中,代码服务器102可包括存储系统、大型机
或任何其他计算设备。
代码服务器102包括源代码。在一个实施例中,源代码可被存储在存
储装置106中的目录或文件系统中。源代码可以是任何软件代码。例如,
源代码可包括需要被构建的代码。例如,构建源代码包括将源代码中的文
件编译和链接成可执行形式。本领域的技术人员将会意识到各种构建源代
码的方法和源代码的不同形式。
编辑服务器104可以是任何计算设备,例如服务器。此外,在其他实
施例中,编辑服务器104可以是大型机、工作站、个人计算机或任何其他
计算设备。
编辑服务器104和代码服务器102可以是相分离的设备。在这种情况 下,用户需要使用编辑服务器104来与代码服务器102交互。但是,将会 理解,编辑服务器104和代码服务器102可以是同一设备的不同部分,但 是被分开来,以使用户无法直接访问代码服务器102。
用户设备108是用户用来访问编辑服务器104的设备。在一个实施例 中,用户设备108包括个人计算机、笔记本计算机、工作站等等。
用户设备108可以与各种用户相关联,其中用户可被分成工作组。工 作组可以是具有相同的访问权限或许可的用户组。例如,某一组可具有第 一访问权限,而另一组可具有第二访问权限。这些访问权限可允许访问源 代码的不同部分。
虽然针对用户组描述了工作组,但是将会理解,工作组中的不同用户 可具有不同的权限。例如,所有用户的权限可被单独定制。或者,可通过 将用户细分为各种工作组来简化该过程。
本发明的实施例限制对源代码的访问。此外,用户不直接从代码服务 器102访问源代码。相反,请求被发送到编辑服务器104。编辑服务器 104随后发送请求到代码服务器102,代码服务器102随后可确定用户的 访问权限。如果用户被允许访问被请求的代码部分,则代码被取得并被发 送到编辑服务器104。用户随后可利用编辑服务器104编辑该部分代码。
当用户完成编辑源代码时,编辑服务器104可将经编辑的源代码发送 回代码服务器102,代码服务器102随后可重新存储源代码中经编辑的那 部分源代码。
图2示出系统的更详细示例。如图所示,代码服务器102包括代理 202、配设器(provisioner) 204和存储装置106。编辑服务器104包括请 求生成器206、代码接收器208和代码发送器210。
,请求生成器206接收来自用户的请求。例如,用户可使用用户设备 108来发送对代码的一部分的请求。在一个实施例中,用户可利用编辑服 务器104浏览源代码的目录。例如,存储在代码服务器102上的源代码的 目录可被复制在编辑服务器104上。当用户需要源代码的一部分(例如一
个文件)时,用户可浏览以寻找该文件,然后发送请求到请求生成器
206。请求生成器206随后生成针对代码服务器102的对该部分代码的请 求。该请求可标识代码的一部分,例如一个文件(或多个文件),并且还 包括关于正在请求源代码的用户的信息。
关于用户的信息可包括用户标识符、用户关联的工作组、用户正操作 的产品、用户正操作的项目等等。该信息被用于确定该用户被授权访问存 储在代码服务器102上的源代码的哪些部分。
也可以使用任何安全性协议来确保该请求的安全。例如,可利用安全 壳(ssh)来从请求生成器206向代理202发送请求。此外,也可使用其他 确保请求安全的方法,例如使用证书、口令等等。
代理202接收请求,然后认证请求。认证可包括设备认证和用户认 证。例如,代理202可认证己被用于对请求加密的密钥。认证可确保请求 是由能够请求访问源代码的一些部分的经授权的设备所发送的。用户认证 可通过登录名和口令、公钥、私钥、证书来认证。
配设器204是通过管理员配设的,并且被用于确定对用户的授权。在 认证之后,配设器204可使用经认证的信息(例如用户名)来确定访问权 限。例如,可为每个用户或工作组配设访问过滤器。不同的工作组可被给 予不同的授权,这些授权允许对源代码的不同部分的访问。另外,代理 202可检测对于包括在请求中的产品用户是否被列在授权用户列表中,确 定请求是否在项目范围中,等等。
配设器204确定用户的访问过滤器并将其应用到请求。如果被请求的 那部分代码在访问过滤器中作为用户可访问的一部分代码被找到,则请求 可被批准。如果访问过滤器表明用户未被授权访问被请求的那部分代码, 则配设器204可拒绝该请求。在拒绝请求的情况下,代理202将指示请求 被拒绝的消息发送回请求生成器206。随后可向用户发送表明用户的请求 被拒绝的消息。
如果用户被授权访问该部分源代码,则代理202从存储装置106取得 该部分源代码。随后与编辑服务器104之间建立经加密的会话。在经加密 的会话中,代理202将该部分源代码传送到代码接收器208。例如,在经
加密的会话中可传送任何数目源代码文件。
在传送之后,用户可从编辑服务器104查看、修改和编辑源代码。例
如,可从编辑服务器104访问文件。在一个实施例中,设备108使用虚拟 终端(例如VNC)来直接在设备104上査看/编辑源代码。在另一实施例 中,用户可使用用户设备108-1来下载该部分源代码。用户随后可在用户 设备108-1上编辑、查看和修改该源代码。编辑服务器104从而允许在源 代码被存储在其上时编辑源代码,或者通过下载源代码来编辑源代码。代 码服务器102不允许编辑源代码,并且只可将其发送到代码服务器102, 以便代码服务器102能够允许编辑。
当用户完成对该部分源代码的操作时,代码发送器210可与代码服务 器102之间建立另一个经加密的会话。在该会话中,代码发送器210将经 编辑的源代码发送回代理202。
例如,经修改的源代码文件被从编辑服务器104传送到代码服务器 102。代理202随后将经编辑的那部分源代码存储回存储在存储装置106 中的源代码中。例如,经编辑的文件可取代在源代码中找到的相同文件。
因此,提供了源代码的编辑和存储的分离。在第一设备上存储源代 码,而在第二设备上允许编辑。在第一设备上不允许编辑。这确保了源代 码的一些部分可被分开,并且访问可被限于某些部分。从而通过访问的分 离和限制保护了知识产权(IP)。.
与文本文档不同,源代码不是最终产品的最终形式。为了使源代码 "可用",需要向源代码应用构建过程,该过程将源代码变换为随后将在 另一设备上执行的机器语言。例如,从源代码到机器语言的这一变换被称 为"编译过程或构建过程"。该过程可能需要来自项目代码库的所有或部 分源代码。例如,构建可能需要.h头文件。构建出的二进制文件可被从代 码服务器102传送到编辑服务器104,以便调试、封装等等。存储装置 106中的源代码可在任何时间被构建。即使源代码的一部分已被检验,原 始源代码(即未被编辑的那部分)也可被构建。但是, 一旦经编辑的那部 分源代码被存储在存储装置106中,则构建源代码的命令就可能被发送。 在一个实施例中,可远程地从编辑服务器104向代码服务器102发送请
求。
在构建中,源代码中的各种文件可能是独立的,并且为了构建文件, 其他独立文件可能需要被访问。但是,某些用户可能没有对从属文件的访 问权限。因此,传统上,用户将不得不访问所有这些文件。但是,在此情 况下,特定实施例允许用户访问一个文件,但由于所有文件都被存储在代
码服务器102上,因此该文件可被构建,而其中用户不能访问的其他文件 也能被用在构建中。
构建可以进行,但用户可能没有编辑独立文件。这保持了对IP信息的 保护,但也允许了构建的执行。
图3示出用于控制对源代码的访问的方法的示例。在步骤302中,编 辑服务器104接收对源代码的一部分的请求。该请求可能是从用户接收到 的。
在步骤304中,编辑服务器104确定关于用户的信息。例如,该信息
可以是用户身份、与用户相关联的工作组等等。
在步骤306中,编辑服务器104生成对该部分源代码的请求。
在步骤308中,编辑服务器104与代码服务器102建立经加密的会
话。经加密的会话可利用任何加密方法来建立。
在步骤310中,编辑服务器104在经加密的会话中发送请求。
在步骤312中,编辑服务器104接收来自代码服务器102的响应。如
果用户未被授权访问该部分源代码,则该响应可能是对请求的拒绝。此
夕卜,如果用户被授权访问该部分源代码,则该响应可能是用户所请求的那
部分源代码。
图4示出用于确定用户是否被授权访问来自代码服务器102的源代码 的一部分的示例性方法。在步骤402中,代码服务器102在经加密的会话 中接收对代码的一部分的请求。该请求包括关于提交请求的用户的信息。
在步骤404中,代码服务器102认证用户。在此情况下,代码服务器 102确定请求是有否有效。
在步骤406中,代码服务器102确定对用户的授权。例如,对于用户 所处的工作组,该工作组可能可以访问代码的不同部分。代码服务器102
确定被请求的那部分代码是否是用户被授权访问的源代码的一部分。这是 基于过滤器或任何其他方法来完成的。
如果用户未被授权,则代码服务器102返回指示用户未被授权访问该 部分代码的消息。
如果用户被授权,则在步骤410中,该部分源代码被从存储装置106取得。
在步骤412中,与编辑服务器104之间的经加密的会话被建立,并且 该部分源代码被发送到编辑服务器104。
特定实施例划分源代码,以便可访问来自代码服务器102的源代码的 不同部分。随后可在编辑服务器104上查看、修改和编辑代码。从而,用 户不能直接访问代码服务器102。这允许了控制代码服务器102上的源代 码,但也允许了用户修改其被允许访问的源代码的一些部分。此外,没有 改变下层操作系统,从而可对存储在代码服务器102上的源代码执行构 建。
虽然已经参考其特定实施例描述了本发明,但是这些实施例只是说明 性,而不是要限制本发明。例如,代码和编辑服务器是虚拟服务器。它们 不需要由硬件分界。例如,编辑和代码服务器可经由虚拟化程序(例如 vmware)在同一物理服务器上运行。此外,代码服务器可以是逻辑上被联 合在一起以向用户呈现为一个服务器的外观的一个或多个服务器。
可使用任何合适的编程语言来实现本发明的实施例的例程,包括c、 C++、 Java、汇编语言,等等。可采用不同的编程技术,例如过程性的或 面向对象的。例程可在单个处理设备或多个处理器上执行。虽然步骤、操 作或计算可能是以特定顺序给出的,但是在不同实施例中该顺序可被改 变。在一些实施例中,在说明书中示为顺序性的多个步骤可以同时被执 行。这里描述的操作序列可被诸如操作系统、内核之类的另一进程中断、 暂停或以其他方式控制。例程可工作在操作系统环境中,或充当占用系统 处理的全部或大部分的独立例程。功能可在硬件、软件或两者的结合中被 执行。除非另有声明,否则功能可全部或部分被手工执行。
在这里的描述中,提供了许多具体细节,例如组件和/或方法的示例,
以便充分理解本发明的实施例。但是,相关领域的技术人员将会认识到, 没有一个或多个具体细节或者利用其他装置、系统、组合件、方法、组 件、材料、部件和/或类似物也能实现本发明的实施例。在其他情况下,没 有具体示出或详细描述公知的结构、材料或操作,以避免模糊本发明的实 施例的各个方面。
用于本发明实施例的"计算机可读介质"可以是能够包含、存储、传 输、传播或传送供指令执行系统、装置、系统或设备使用或联系指令执行 系统、装置、系统或设备使用的程序的任何介质。计算机可读介质例如可 以是(但不限于)电子、磁、光、电磁、红外或半导体系统、装置、系 统、设备、传播介质或计算机存储器。
本发明的实施例可以软件或硬件或两者的结合中的控制逻辑的形式来 实现。控制逻辑可被存储在诸如计算机可读介质这样的信息存储介质中, 作为适合于指导信息处理设备执行本发明实施例中公开的一组步骤的多个 指令。基于这里提供的公开和教导,本领域的普通技术人员将会意识到实 现本发明的其他方式和/或方法。
"处理器"或"进程"包括处理数据、信号或其他信息的任何人类、 硬件和/或软件系统、机构或组件。处理器可包括具有通用中央处理单元的 系统、多个处理单元、用于实现功能的专用电路或其他系统。处理不需要 局限于地理位置,或具有时间限制。例如,处理器可"实时地"、"离线 地"、以"成批模式"等执行其功能。处理的一些部分可在不同时间和不 同位置由不同(或相同)处理系统执行。
在本说明书中提到"一个实施例"、"实施例"或"特定实施例"是 指联系该实施例描述的特定特征、结构或特性被包括在本发明的至少一个 实施例中,但不一定被包括在所有实施例中。从而,在本说明书中各处相 应出现的短语"在一个实施例中"、"在实施例中"或"在特定实施例 中"不一定是指同一实施例中。此外,本发明的任何特定实施例的特定特 征、结构或特性可以以任何合适的方式与一个或多个其他实施例相结合。 要注意,考虑到这里的教导可对这里描述和说明的本发明的实施例进行其 他变化和修改,并且这些变化和修改被认为是本发明的精神和范围的一部
可通过利用编程的通用数字计算机、利用专用集成电路、可编程逻辑 器件、现场可编程门阵列、光、化学、生物、量子或纳米工程系统、组件 和机构来实现本发明的实施例。 一般来说,本发明实施例的功能可由本领 域已知的任何手段来实现。可以使用分布式或联网系统、组件和电路。数 据的通信或传送可以是有线的、无线的或通过任何其他手段。
还将意识到,附图中示出的元件中的一个或多个也可以以更分离或集 成的方式来实现,或者甚至在某些情况下被去除或被变为不可工作,如果 根据特定应用这样做有用的话。实现可被存储在机器可读介质中的程序或 代码以允许计算机执行上述方法中的任何一种,也是处于本发明的精神和 范围之内的。
此外,除非另外具体指出,否则附图中的任何信号箭头应当被示为只 是示例性的,而不是限制性的。此外,除非另外指明,否则这里使用的术 语"或" 一般是想要表示"和/或"。组件或步骤的组合也将被认为是已被 指出,其中由于给予分离或组合的能力不清楚,因此术语被预见。
除非上下文另有清楚规定,否则这里的描述和所附权利要求中所使用
的"a" 、 "an"和"the"包括复数指代。此外,除非上下文另有清楚规 定,否则这里的描述和所附权利要求中使用的"在...中(m)"包括"在... 中(in)"和"在...上(on)"。
以上对本发明的图示实施例的描述,包括摘要中描述的内容,并不想 要是毫无遗漏的或者将本发明限制到这里公开的确切形式。虽然这里仅出 于说明目的描述了本发明的特定实施例和示例,但是正如相关领域的技术 人员将会认识和意识到的,在本发明的精神和范围内,各种等同的修改都 是可能的。如上所述,可在考虑到以上对图示实施例的描述的情况下对本 发明作出这些修改,并且这些修改将被包括在本发明的精神和范围内。
从而,虽然已经参考本发明的特定实施例描述了本发明,但是前述公 开中预期了多种修改、各种变化和替换,并且将会意识到,在一些情况 下,将使用本发明实施例的一些特征而不相应地使用其他特征,而不会脱 离所阐述的本发明的范围和精神。因此,可以作出许多修改,以使特定情形或材料适应于本发明的实质范围和精神。希望本发明不被局限于所附权 利要求中使用的特定术语,和/或作为被认为是用于实现本发明的最佳模式 而公开的特定实施例,相反,本发明将会包括落在所附权利要求的范围内 的任何和所有实施例和等同物。
权利要求
1.一种方法,包括在第一设备处接收来自第二设备的对存储在所述第一设备上的源代码的一部分的请求,其中用户通过所述第二设备提交所述请求;确定与所述请求相关联的用户是否被授权访问来自所述第一设备的所述源代码的所述部分;取得所述源代码的所述部分;将所述源代码的所述部分发送到所述第二设备,其中所述第二设备允许对所述源代码的所述部分进行编辑,并且所述源代码的所述部分在所述第一设备上是不可编辑的;在所述第一设备处,接收来自所述第二设备的所述源代码的经编辑的部分;以及存储所述源代码的所述经编辑的部分。
2. 如权利要求1所述的方法,还包括认证来自所述第二设备的所述请求。
3. 如权利要求1所述的方法,其中确定与所述请求相关联的用户是否 被授权访问所述源代码的所述部分的步骤包括确定与所述用户相关联的用户信息;以及利用所述信息来确定所述用户是否被授权访问所述源代码的所述部分。
4. 如权利要求1所述的方法,还包括提供对所述源代码的所述部分的 构建,其中所述源代码中所述用户未被授权访问的第二部分在所述构建中 被使用。
5. 如权利要求1所述的方法,其中所述源代码在所述第一设备上被构 建但不被编辑,并且所述第二设备允许对所述源代码的所述部分进行编 辑。
6. —种方法,包括在第一设备处接收对存储在第二设备上的源代码的一部分的用户请 求;生成对存储在所述第二设备上的所述源代码的所述部分的代码请求;如果所述第二设备确定与所述用户请求相关联的用户被授权访问所述 源代码的所述部分,则接收来自所述第二设备的所述源代码的所述部分;允许通过所述第一设备编辑所述源代码的所述部分,其中所述源代码 在所述第二设备上是不可编辑的;以及在编辑之后将所述源代码的经编辑的部分发送到所述第二设备。
7. 如权利要求6所述的方法,还包括确定包括在所述代码请求中的与 所述用户相关联的用户信息,以确定所述用户是否被授权访问所述源代码 的所述部分。
8. 如权利要求7所述的方法,其中所述用户信息包括与所述用户相关联的工作组,并且所述工作组与所述工作组中的用户可访问的源代码的一 些部分相关联。
9. 如权利要求6所述的方法,,其中所述源代码在所述第二设备上被构建但不被编辑,并且所述第一设备允许对所述源代码的所述部分进行编 辑。
10. 如权利要求6所述的方法,还包括与所述第二设备之间建立经加密的会话;以及 在所述经加密的会话中发送所述代码请求。
11. 一种装置,包括 一个或多个处理器;以及编码在一个或多个有形介质中的供所述一个或多个处理器执行的逻辑,所述逻辑在被执行时可操作以用于在第一设备处接收来自第二设备的对存储在所述第一设备上的源代码的一部分的请求,其中用户通过所述第二设备提交所述请求;确定与所述请求相关联的用户是否被授权访问来自所述第一设备的所述源代码的所述部分;取得所述源代码的所述部分;将所述源代码的所述部分发送到所述第二设备,其中所述第二设备允 许对所述源代码的所述部分进行编辑,并且所述源代码的所述部分在所述 第一设备上是不可编辑的;在所述第一设备处,接收来自所述第二设备的所述源代码的经编辑的 部分;以及将所述源代码的所述经编辑的部分存储在所述源代码中。
12. 如权利要求11所述的装置,其中所述逻辑在被执行时还可操作以 用于认证来自所述第二设备的所述请求。
13. 如权利要求11所述的装置,其中所述逻辑在被执行时还可操作以 用于确定与所述用户相关联的用户信息;以及利用所述信息来确定所述用户是否被授权访问所述源代码的所述部分。
14. 如权利要求11所述的装置,其中所述逻辑在被执行时还可操作以 用于提供对所述源代码的所述部分的构建,其中所述源代码中所述用户未 被授权访问的第二部分在所述构建中被使用。
15. 如权利要求11所述的装置,其中所述源代码在所述第一设备上被 构建但不被编辑,并且所述第二设备允许对所述源代码的所述部分进行编 辑。
16. —种装置,包括一个或多个处理器;以及编码在一个或多个有形介质中的供所述一个或多个处理器执行的逻辑,所述逻辑在被执行时可操作以用于在第一设备处接收对存储在第二设备上的源代码的一部分的用户请求;生成对存储在所述第二设备上的所述源代码的所述部分的代码请求; 如果所述第二设备确定与所述用户请求相关联的用户被授权访问所述源代码的所述部分,则接收来自所述第二设备的所述源代码的所述部分; 允许通过所述第一设备编辑所述源代码的所述部分,其中所述源代码在所述第二设备上是不可编辑的;以及在编辑之后将所述源代码的经编辑的部分发送到所述第二设备。
17. 如权利要求16所述的装置,其中所述逻辑在被执行时还可操作以用于确定包括在所述代码请求中的与所述用户相关联的用户信息,以确定 所述用户是否被授权访问所述源代码的所述部分。
18. 如权利要求17所述的装置,其中所述用户信息包括与所述用户相 关联的工作组,并且所述工作组与所述工作组中的用户可访问的源代码的 一些部分相关联。
19. 如权利要求16所述的装置,其中所述源代码在所述第二设备上被 构建但不被编辑,并且所述第一设备允许对所述源代码的所述部分的编 辑。
20. 如权利要求16所述的装置,其中所述逻辑在被执行时还可操作以 用于与所述第二设备之间建立经加密的会话;以及 在所述经加密的会话中发送所述代码请求。
21. —种装置,包括用于在第一设备处接收来自第二设备的对存储在所述第一设备上的源代码的一部分的请求的装置,其中用户通过所述第二设备提交所述请求;用于确定与所述请求相关联的用户是否被授权访问来自所述第一设备的所述源代码的所述部分的装置;用于取得所述源代码的所述部分的装置;用于将所述源代码的所述部分发送到所述第二设备的装置,其中所述 第二设备允许对所述源代码的所述部分进行编辑,并且所述源代码的所述 部分在所述第一设备上是不可编辑的;用于在所述第一设备处,接收来自所述第二设备的所述源代码的经编 辑的部分的装置;以及用于存储所述源代码的所述经编辑的部分的装置。
22.—种装置,包括用于在第一设备处接收对存储在第二设备上的源代码的一部分的用户 请求的装置;用于生成对存储在所述第二设备上的所述源代码的所述部分的代码请求的装置;用于在所述第二设备确定与所述用户请求相关联的用户被授权访问所 述源代码的所述部分的情况下,接收来自所述第二设备的所述源代码的所述部分的装置;用于允许通过所述第一设备编辑所述源代码的所述部分的装置,其中 所述源代码在所述第二设备上是不可编辑的;以及用于在编辑之后将所述源代码的经编辑的部分发送到所述第二设备的 装置。
全文摘要
本发明涉及过滤对数据对象的访问。在一个实施例中,提供了代码服务器和编辑服务器。代码服务器存储源代码。用户不直接访问代码服务器。相反,使用了编辑服务器,其中用户可登录到编辑服务器并发送对编辑源代码的一些部分的请求。编辑服务器随后将针对源代码的被请求部分向代码服务器发送请求。不同用户对代码的一些部分可能具有不同的访问权限。当从编辑服务器接收到请求时,如果代码服务器确定请求该部分源代码的用户对其没有访问权限,则代码服务器不允许该部分代码被访问。但是,如果用户拥有访问权限,则该部分源代码被取得并被发送到编辑服务器。用户随后可以在编辑服务器上编辑源代码。
文档编号G06F21/62GK101187965SQ200610138200
公开日2008年5月28日 申请日期2006年11月16日 优先权日2006年11月16日
发明者卢小青, 杨 宋, 健 杨, 简·格罗斯基, 陈建宇 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1