权限受管的代码的制作方法

文档序号:9401952阅读:272来源:国知局
权限受管的代码的制作方法
【专利说明】权限受管的代码
[0001] 背景
[0002] 源代码是由代码开发者用人类可读的编程语言编写的计算机程序指令的集 合。存在有助于软件开发者编写此类源代码的软件开发环境。软件开发环境可包括各 种工具,诸如用于输入和编辑源代码的源代码编辑器、用于编译源代码的一个或多个构 建自动化工具、以及代码调试器。市场上销售的软件开发环境的示例包括华盛顿州雷蒙 德市微软公司开发的Microsoft? Visual Studio?、加利福尼亚州雷德伍德市的甲骨 文公司提供的JCteveloper?、英属哥伦比亚省温哥华市的ActiveState软件公司提供的 ActiveState? Komodo⑨。
[0003] 在一些情景中,对源代码的访问可以受到控制或限于特定人。例如,对源代码的访 问可出于安全目的(例如为阻止代码盗窃等)而受到控制。对源代码的访问可以用各种方 式来控制,诸如通过提供限制对源代码的访问的端口(例如终端或工作站),从而有效地控 制通过其可以接触源代码并与源代码交互的环境。可以使用能够导航和查看源代码的特殊 用户账户(例如客账户)通过该端口来使人们能够访问源代码。在另一示例中,在包含源 代码文件的源控制储存库中,可以设置许可,该许可基于用户身份授予能够访问特定源代 码文件的用户许可。例如,用户可以被授予阅读特定源代码文件的许可,但可以不被授予向 那些文件进行写入的许可。
[0004] 数字权限管理(DRM)是硬件制造商、发布者、版权所有者、以及旨在限制在销售之 后对数字内容和设备的使用的个体所使用的一类访问控制技术。例如,微软公司开发的 Microsoft? Office应用DRM技术通过可以被应用的有限许可集来控制对'Microsoft? Word文档、Microsoft.? PowerPoint电子表格等的访问。
[0005] 概述
[0006] 提供本
【发明内容】
以便以简化形式介绍将在以下详细描述中进一步描述的一些概 念的选集。本
【发明内容】
并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用 于限制所要求保护主题的范围。
[0007] 提供了用于提供对源代码的受控访问的方法、系统和计算机程序产品。可以向源 代码指派访问权限,包括常规访问权限(例如,诸如读、写等的访问权限)以及针对源代 码和源代码开发环境定制的访问权限(例如,诸如编译、调试、分析、归纳、部署、复制、打 印、发送电子邮件、保存/另存为、仅公开元数据、相关联的许可证、部署站点等访问权限和 其他访问权限)。源代码可以被加密,使得加密源代码对各个计算设备可用且可被访问, 但该源代码在没有首先被解密的情况下无法被读取、修改、或以其他方式与之交互。启用 DRM(数字权限管理)的软件开发工具可以解密源代码并与之交互,如被指派给源代码的特 定访问权限所启用的。
[0008] 根据一种方法实现,加密源代码。配置对加密源代码的访问权限。加密源代码被 主存在网络可访问的位置处。接收启用DRM的软件开发工具对加密源代码的访问尝试。根 据配置的访问权限来实现启用DRM的软件开发工具对加密源代码的访问。
[0009] 根据一种系统实现,一种源代码访问管理器,包括加密模块、访问权限管理器、和 代码访问接口。加密模块被配置成加密源代码。访问权限管理器被配置成启用对要被配置 的加密源代码的访问权限。代码访问接口被配置成接收启用DRM的软件开发工具对加密源 代码的访问尝试,并且根据所配置的访问权限来实现启用DRM的软件开发工具对加密源代 码的访问。
[0010] 根据另一种方法实现,根据软件开发工具启用的DRM来尝试加密源代码的访问。 接收对加密源代码的访问。加密源代码被解密。根据被配置用于服务器处的加密源代码的 访问权限来访问解密源代码。
[0011] 根据另一系统实现,软件开发工具包括被配置成为软件开发工具启用DRM的DRM 模块。DRM模块包括代码访问请求器、解密模块、以及访问权限实施模块。代码访问请求器 被配置成通过网络请求和接收对服务器处的加密源代码的访问。解密模块被配置成对加密 源代码进行解密。访问权限实施模块被配置成根据为服务器处的加密源代码配置的访问权 限来启用对解密源代码的访问。
[0012] 本文还描述了包含计算机可读存储介质的计算机程序产品,存储用于使用启用 DRM的工具来控制对源代码的访问的指令,存储用于处理针对源代码和源代码开发工具定 制的访问权限以及实现本文描述的附加实施例的指令。
[0013] 下面将参考各个附图,详细描述本发明的进一步特点和优点,以及本发明的各实 施例的结构和操作。值得注意的是,本发明不仅限于此处所描述的特定实施例。本文呈现 这些实施例仅用于说明性的用途。基于本文所包含的描述,其它实施例对于相关领域的技 术人员将是显而易见的。
[0014] 附图简述
[0015] 结合到本说明书并构成本说明书的一部分的附图示出了本发明,且与描述一起, 进一步用于说明本发明的原理,并允许那些相关领域技术人员实施和使用本发明。
[0016] 图1示出根据一示例实施例的针对启用数字权限管理(DRM)的开发工具控制对源 代码的访问的软件开发系统的框图。
[0017] 图2示出根据一示例实施例的提供一种用于试图访问受保护源代码的启用DRM的 软件开发工具的过程的流程图。
[0018] 图3示出根据一示例实施例的包括多个软件开发工具并且试图访问受保护的源 代码的软件开发环境的框图。
[0019] 图4示出根据一示例实施例的提供一种用于控制启用DRM的软件开发工具对源代 码的访问的过程的流程图。
[0020] 图5示出根据一示例实施例的一种控制启用DRM的软件开发工具对源代码的访问 的系统的框图。
[0021] 图6示出了可用于实现本发明的各实施例的示例计算机的框图。
[0022] 当结合其中相同的附图标记标识对应的元素的附图时,本发明的特征和优点将从 以下阐述的详细描述中变得更加显而易见。在附图中,相同的参考标号一般指相同的、功能 上相似的和/或结构上相似的元素。其中元素第一次出现的附图由对应的参考标号中最左 侧的数字指示。
[0023] 详细描述
[0024] I.介绍
[0025] 本说明书公开了包括本发明的各特征的一个或多个实施例。所公开的实施例只例 示了本发明。本发明的范围不仅限于所公开的实施例。本发明由所附的权利要求进行限定。
[0026] 说明书中对"一个实施例"、"一实施例"、"一示例实施例"等等的引用表示所描述 的实施例可包括特定特征、结构或特性,但是,每一个实施例可不必包括该特定特征、结构, 或特征。此外,这些短语不一定指相同的实施例。此外,当关于某一实施例描述特定特征、 结构或特性时,不管是否被明确描述,关于其他实施例来实现该特征、结构或特性被认为是 在本领域技术人员的知识范围内。
[0027] 本发明的多个示例性实施例在以下描述。应当注意,在此提供的任何章节/子章 节标题不旨在限制。本文档中描述了各实施例,并且任何类型的实施例可被包括在任何章 节/子章节下。此外,在任何章节/子章节中公开的各实施例可与在相同章节/子章节和 /或不同章节/子章节中描述的任何其它实施例以任何方式组合。
[0028] II.示例实施例
[0029] 源代码是用人类可读的编程语言编写的计算机程序指令的集合。存在有助于软件 开发者编写源代码的软件开发环境。软件开发环境可包括各种工具,诸如用于输入和编辑 源代码的源代码编辑器、用于编译源代码的一个或多个构建自动化工具、以及代码调试器。 在一些情景中,对源代码的访问可以受到控制或限于特定人和/或工具。例如,对源代码的 访问可出于安全目的(例如为阻止代码盗窃等)而受到控制。对源代码的访问可以用各种 方式来控制,诸如基于用户的身份通过使用许可来授予用户对特定服务器和源代码文件的 访问。在另一示例中,端口(portal)可用于限制对终端或工作站处的源代码的访问,从而 有效地控制通过其可以接触源代码并与源代码交互的环境。由微软公司开发的RDP (远程 桌面协议)以及由Citrix系统公司提供的Citrix?是用于提供此类端口的示例机制。
[0030] 然而,用于控制对源代码的访问的此类技术可能是麻烦的,尤其在许多个体可能 需要访问源代码时(例如,开发者、对源代码的同一部分或其他部分进行操作的其他开发 者、代码审阅者等)。此外,应用于对源代码的访问的约束通常不会超过正常访问权限(例 如,读/查看和写/修改)。而且,此类技术可能不是足够精细的,因为它们适用于条目文 件,而非能够控制用户对文件的各个部分的访问,并且也不能够通过特定工具控制访问。
[0031] 例如,可能期望授予第一用户对修改源代码文件中的特定函数的访问,而不必授 予第一用户对修改整个文件的访问。可能期望阻止第二用户使其不能够阅读特定源代码文 件,同时使得第二用户能够编译该文件。此外,可能期望允许第三用户阅读文件,同时阻止 第三用户使其不能够从该文件进行复制粘贴。用于控制对源代码的访问的公知技术不能够 提供这些类型的访问权限。
[0032] 根据各实施例,使用权限管理技术来控制对源代码的访问。例如,在一实施例中, 源代码可用加密形式被主存在网络上(例如,被主存在"云"中)。不要求特殊的环境或端 口来访问源代码(尽管特殊环境或端口可附加地用于提供附加保护)。相反,可以使用在 网络中建立的权限管理系统来直接访问源代码。在网络中发生完整的开发体验。与源交互 的每一工具是启用权限管理的,诸如启用数字权限管理(DRM)的。可以将一个或多个访问 权限应用于加密源代码,并且启用权限管理的工具根据访问权限来实现对加密源代码的访 问。提供针对源代码开发环境定制的新的访问权限。
[0033] 相应地,应用于源代码的访问权限可被用于控制对源代码的各种形式的访问,包 括限制什么种类的许可证能够与添加到项目的源代码相关联、控制来自项目的源代码是否 能被
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1