AGPL 3 许可证


版本 3,2007 年 11 月 19 日 版权所有 © 2007 Free Software Foundation, Inc. <http://fsf.org/>

任何人都可以复制和分发本许可证文档的逐字副本,但不允许修改。

前言

GNU Affero 通用公共许可证是一份针对软件及其他类型作品的自由、copyleft 许可证,专门为在网络服务器软件的情形下确保与社区的合作而设计。

大多数软件及其他实用作品的许可证旨在剥夺你分享和修改作品的自由。相比之下,我们的通用公共许可证旨在保障你分享和修改程序所有版本的自由,确保它对所有用户始终是自由软件。

当我们谈到自由软件时,指的是自由,而不是价格。我们的通用公共许可证旨在确保你拥有分发自由软件副本的自由(如果愿意,也可以收费),确保你能收到源代码,或者在需要时能够获取源代码,确保你可以修改软件,或将它的部分用于新的自由程序,并确保你知晓自己可以这样做。

使用我们通用公共许可证的开发者通过两个步骤来保护你的权利:**(1)声明软件的版权,(2)**向你提供本许可证,授予你复制、分发和/或修改该软件的法律许可。

捍卫所有用户自由还有一个附带的好处:如果程序的替代版本所做的改进得到广泛使用,其他开发者就可以将其纳入自己的作品。由此产生的合作让许多自由软件开发者感到振奋和鼓舞。然而,对于在网络服务器上使用的软件,这种情况可能不会出现。GNU 通用公共许可证允许制作修改后的版本,并让公众在服务器上访问它,而无需向公众发布其源代码。

GNU Affero 通用公共许可证则专门确保在这种情况下,修改后的源代码能够提供给社区。它要求网络服务器的运营者向该服务器的用户提供其上所运行的修改版本的源代码。因此,在可公开访问的服务器上公开使用修改版本,会让公众获得该修改版本的源代码。

一份更早的许可证名为 Affero 通用公共许可证,由 Affero 发布,旨在实现类似的目标。本许可证是一份不同的许可证,不是 Affero GPL 的一个版本;但 Affero 已发布了 Affero GPL 的新版本,允许在本许可证下重新授权。

以下是复制、分发和修改的确切条款和条件。

条款和条件

0. 定义

“本许可证”指 GNU Affero 通用公共许可证第 3 版。

“版权”也指适用于其他类型作品的类似版权的法律,例如半导体掩膜。

“本程序”指在本许可证下授权的任何可受版权保护的作品。每位被许可人都称为“你”。“被许可人”和“接收者”可以是个人或组织。

对作品进行“修改”,是指以需要版权许可的方式复制或改编作品的全部或部分,但制作完全相同的副本除外。由此产生的作品称为先前作品的“修改版本”,或“基于”先前作品的作品。

“受保护作品”指未修改的本程序,或基于本程序的作品。

对作品进行“传播”,是指未经许可对作品做出任何会使你根据适用的版权法承担直接或间接侵权责任的行为,但在计算机上执行作品或修改私人副本除外。传播包括复制、分发(无论是否修改)、向公众提供,在某些国家还包括其他行为。

对作品进行“传送”,是指任何使其他方能够制作或接收副本的传播。仅通过计算机网络与用户交互,而不传输副本,不构成传送。

交互式用户界面显示“适当法律声明”的标准是:它包含一个方便且醒目可见的功能,该功能**(1)显示适当的版权声明,(2)**告知用户该作品无任何担保(除非提供了担保),告知被许可人可以依据本许可证传送该作品,以及如何查看本许可证的副本。如果界面向用户呈现命令或选项列表(例如菜单),列表中的一项醒目条目即可满足这一标准。

1. 源代码

作品的“源代码”是指对其进行修改时所首选的作品形式。“目标代码”是指作品的任何非源代码形式。

“标准接口”是指由公认的标准机构定义的官方标准的接口,或者对于为特定编程语言规定的接口而言,在该语言的开发者中被广泛使用的接口。

可执行作品的“系统库”包括除作品整体之外的任何内容,只要它**(a)包含在打包主要组件的常规形式中,但不是该主要组件的一部分,且(b)**仅用于使作品能够与该主要组件一起使用,或实现某个标准接口,而该接口的实现以源代码形式向公众提供。在此上下文中,“主要组件”是指可执行作品所运行于其上的特定操作系统(如果有)的主要基本组件(内核、窗口系统等),或用于生成该作品的编译器,或用于运行该作品的目标代码翻译。

以目标代码形式存在的作品的“对应源代码”是指生成、安装和(对于可执行作品)运行该目标代码以及修改该作品所需的所有源代码,包括控制这些活动的脚本。但是,它不包括作品的系统库,也不包括在执行这些活动时未经修改地使用、但不属于该作品的通用工具或普遍可得的自由程序。例如,对应源代码包括与作品源文件相关联的接口定义文件,以及作品专门设计为需要的共享库和动态链接子程序的源代码,例如通过这些子程序与作品其他部分之间紧密的数据通信或控制流。

对应源代码无需包含用户可以从对应源代码的其他部分自动重新生成的内容。

以源代码形式存在的作品的对应源代码就是该作品本身。

2. 基本许可

本许可证授予的所有权利均在程序的版权保护期内授予,并且在满足所述条件的前提下不可撤销。本许可证明确确认你拥有运行未修改程序的无限许可。运行受保护作品所产生的输出,只有在该输出依其内容构成受保护作品时,才受本许可证约束。本许可证承认你依版权法享有的合理使用或其他同等权利。

只要你的许可仍然有效,你就可以制作、运行和传播你不传送的受保护作品,而无需附加任何条件。你可以仅为让他人专门为你进行修改、或为你提供运行这些作品的设施的目的,将受保护作品传送给他人,前提是你在传送所有你并不控制版权的材料时遵守本许可证的条款。为你制作或运行受保护作品的人,必须完全代表你,在你的指导和控制下进行,且其条款禁止他们在与你关系之外制作你受版权保护材料的任何副本。

在任何其他情形下进行传送,仅在下述条件允许时才被许可。不允许再授权;第 10 节使其变得没有必要。

3. 保护用户的法律权利免受反规避法律的侵害

在履行 1996 年 12 月 20 日通过的世界知识产权组织(WIPO)版权条约第 11 条义务的任何适用法律,或禁止或限制规避此类措施的类似法律之下,任何受保护作品均不得被视为有效技术措施的一部分。

当你传送受保护作品时,你放弃任何禁止规避技术措施的法律权力(前提是这种规避是通过就受保护作品行使本许可证下的权利而实现的),并且你声明无意通过限制作品的运行或修改,来对作品用户强制执行你或第三方禁止规避技术措施的法律权利。

4. 传送逐字副本

你可以以任何媒介传送你收到的本程序源代码的逐字副本,前提是你在每份副本上醒目而恰当地发布适当的版权声明;完整保留所有声明本许可证以及依照第 7 节添加的任何非许可性条款适用于该代码的通告;完整保留所有关于不存在任何担保的通告;并将本许可证的一份副本随本程序一并交给所有接收者。

对于你传送的每份副本,你可以收取任何价格,也可以不收费,你还可以有偿提供支持或担保保护。

5. 传送修改后的源代码版本

你可以依照第 4 节的条款,以源代码形式传送基于本程序的作品,或为从本程序生成该作品而做的修改,前提是你同时满足以下所有条件:

  • **a)**该作品必须带有醒目的通告,说明你对其进行了修改,并注明相关日期。
  • **b)**该作品必须带有醒目的通告,说明其依据本许可证及依照第 7 节添加的任何条件发布。这一要求修改了第 4 节中“完整保留所有通告”的要求。
  • **c)**你必须就整个作品整体,向任何获得副本的人依据本许可证进行授权。因此,本许可证连同任何适用的第 7 节附加条款,将适用于整个作品及其所有部分,无论它们如何打包。本许可证不允许以任何其他方式对该作品进行授权,但如果你另行获得了此类许可,本许可证不会使其失效。
  • **d)**如果该作品具有交互式用户界面,则每个界面都必须显示适当法律声明;但是,如果本程序具有不显示适当法律声明的交互式界面,你的作品也不必让它们显示。

将受保护作品与其他独立作品(这些作品在性质上不是受保护作品的延伸,也未与其结合成更大的程序)一起置入或置于某一存储或分发介质之上所形成的汇编,如果该汇编及其产生的版权未被用于超出各单个作品所允许的范围限制汇编用户的使用或法律权利,则称为“聚合体”。将受保护作品纳入聚合体,不会使本许可证适用于聚合体的其他部分。

6. 传送非源代码形式

你可以依照第 4 节和第 5 节的条款,以目标代码形式传送受保护作品,前提是你同时依照本许可证的条款,以下列方式之一传送机器可读的对应源代码:

  • **a)**在实物产品(包括实物分发介质)中或以其体现的形式传送目标代码,并附上固定于通常用于软件交换的耐用实物介质上的对应源代码。
  • **b)在实物产品(包括实物分发介质)中或以其体现的形式传送目标代码,并附上一份书面要约,其有效期至少为三年,且只要你还为该产品型号提供备件或客户支持就一直有效,用于向任何持有目标代码的人提供(1)一份以通常用于软件交换的耐用实物介质承载、涵盖产品中受本许可证约束的所有软件的对应源代码副本,价格不超过你实际执行此次源代码传送的合理成本,或(2)**从网络服务器免费复制对应源代码的访问权。
  • **c)**随目标代码的单独副本附上提供对应源代码的书面要约副本进行传送。仅可偶尔且非商业性地采用这一替代方式,且你必须是依照第 6b 款连同类要约一起收到该目标代码。
  • **d)**通过从指定地点(免费或收费)提供访问的方式传送目标代码,并以相同方式通过同一地点提供对对应源代码的同等访问,且不额外收费。你无需要求接收者在复制目标代码的同时复制对应源代码。如果复制目标代码的地点是网络服务器,则对应源代码可以位于另一台支持同等复制设施的服务器(由你或第三方运营)上,前提是你在目标代码旁保留清晰的说明,指出在何处能找到对应源代码。无论由哪台服务器托管对应源代码,你都有义务确保它在满足这些要求所需的期限内始终可用。
  • **e)**使用点对点传输传送目标代码,前提是你告知其他对等方,该目标代码及作品的对应源代码正依照第 6d 款在何处免费向公众提供。

目标代码中可分离的部分,如果其源代码作为系统库被排除在对应源代码之外,则在传送目标代码作品时无需包含该部分。

“用户产品”是指**(1)“消费品”,即通常用于个人、家庭或家居用途的任何有形个人财产,或(2)**任何为并入住宅而设计或销售的物品。在确定某产品是否为消费品时,存疑的情况应作有利于覆盖的解决。对于特定用户收到的特定产品,“通常使用”是指该类产品的典型或常见用途,而不论该特定用户的身份,也不论该特定用户实际使用、期望使用或被期望使用该产品的方式。无论某产品是否具有大量商业、工业或非消费性用途,它都是消费品,除非此类用途是该产品唯一重要的使用方式。

用户产品的“安装信息”是指从对应源代码的修改版本,在该用户产品中安装和运行受保护作品的修改版本所需的任何方法、步骤、授权密钥或其他信息。这些信息必须足以确保修改后的目标代码的持续运行,绝不会仅因进行了修改而被阻止或受到干扰。

如果你在本节下,在用户产品中、随用户产品、或专门为用户产品中的使用而传送目标代码作品,且该传送发生在一项将用户产品的占有权和使用权永久或定期转移给接收者的交易之中(无论该交易如何定性),则本节下传送的对应源代码必须附有安装信息。但如果你和任何第三方都不再保有在用户产品上安装修改后目标代码的能力(例如作品已安装到 ROM 中),则该要求不适用。

提供安装信息的要求,不包括为接收者修改或安装的作品、或为在其中修改或安装了该作品的用户产品,继续提供支持服务、担保或更新。当修改本身对网络运行造成重大不利影响,或违反网络通信的规则和协议时,可以拒绝其访问网络。

依照本节传送的对应源代码和提供的安装信息,必须采用公开记录的格式(并且其实现以源代码形式向公众提供),且解包、读取或复制时不得要求任何特殊密码或密钥。

7. 附加条款

“附加许可”是指通过对本许可证的一项或多项条件作出例外,来补充本许可证条款的条款。适用于整个本程序的附加许可,在其根据适用法律有效的范围内,应视为已包含在本许可证中。如果附加许可仅适用于本程序的一部分,则该部分可以依据这些许可单独使用,但整个本程序仍受本许可证管辖,而不考虑这些附加许可。

当你传送受保护作品的副本时,你可以自行选择从该副本或其任何部分中移除任何附加许可。(附加许可可以写明在你修改作品时,某些情况下要求将其自身移除。)对于你添加到受保护作品中、且你拥有或能够给予适当版权许可的材料,你可以为其附加许可。

尽管本许可证有任何其他规定,对于你添加到受保护作品中的材料,你可以(如果获得该材料版权所有者的授权)以下列条款补充本许可证的条款:

  • **a)**以不同于本许可证第 15 节和第 16 节条款的方式免除担保或限制责任;或
  • **b)**要求在该材料中,或包含该材料的作品所显示的适当法律声明中,保留指定的合理法律通告或作者署名;或
  • **c)**禁止对该材料的来源作出虚假陈述,或要求以合理方式将此类材料的修改版本标记为与原版不同;或
  • **d)**限制将许可方或材料作者的姓名用于宣传目的;或
  • **e)**拒绝授予某些商号、商标或服务标志使用方面的商标法权利;或
  • **f)**要求任何以对接收者承担合同责任假设的方式传送该材料(或其修改版本)的人,对该材料的许可方和作者作出赔偿,以补偿这些合同责任假设直接施加于这些许可方和作者的任何责任。

所有其他非许可性附加条款均被视为第 10 节意义上的“进一步限制”。如果你收到的本程序或其任何部分包含一则通告,说明其受本许可证以及某项构成进一步限制的条款管辖,你可以移除该条款。如果某许可证文档包含一项进一步限制,但允许在本许可证下重新授权或传送,则你可以将受该许可证文档条款管辖的材料添加到受保护作品中,前提是该进一步限制在此类重新授权或传送后不再存续。

如果你依照本节向受保护作品添加条款,你必须在相关源文件中放置一份说明,指明适用于这些文件的附加条款,或放置一则通告,指出在何处能找到适用的条款。

附加条款无论是许可性的还是非许可性的,都可以采用单独书面许可证的形式表述,或作为例外表述;无论采用哪种方式,上述要求均适用。

8. 终止

除本许可证明确规定外,你不得传播或修改受保护作品。任何其他传播或修改它的尝试均属无效,并会自动终止你在本许可证下的权利(包括依照第 11 节第三段授予的任何专利许可)。

但是,如果你停止一切违反本许可证的行为,则来自某一特定版权所有者的许可将**(a)暂时恢复,除非且直到该版权所有者明确并最终终止你的许可,并且(b)**如果该版权所有者未在停止后 60 天内以某种合理方式通知你该违规行为,则永久恢复。

此外,如果该版权所有者以某种合理方式通知你该违规行为,而这是你第一次收到该版权所有者关于违反本许可证(就任何作品而言)的通知,且你在收到通知后 30 天内纠正了该违规行为,则来自该特定版权所有者的许可将永久恢复。

依照本节终止你的权利,并不会终止已从你处依据本许可证获得副本或权利的第三方的许可。如果你的权利已被终止且未永久恢复,则你没有资格在第 10 节下就同一材料获得新的许可。

9. 持有副本无需接受

你无需为了接收或运行本程序的副本而接受本许可证。仅因使用点对点传输接收副本而发生的受保护作品的附带传播,同样不需要接受。但是,除本许可证外,没有任何东西授予你传播或修改任何受保护作品的许可。如果你不接受本许可证,这些行为便构成侵犯版权。因此,通过修改或传播受保护作品,即表示你接受本许可证并同意这样做。

10. 下游接收者的自动许可

你每次传送受保护作品时,接收者都会自动从原始许可方获得一份许可,以在本许可证的约束下运行、修改和传播该作品。你没有责任强制执行第三方对本许可证的遵守。

“实体交易”是指转移某一组织控制权的交易,或转移其几乎全部资产的交易,或拆分某一组织的交易,或合并组织的交易。如果受保护作品的传播是由实体交易导致的,则该交易的每一方在收到作品副本的同时,也获得其利益前手依据上一段所拥有或能够给出的关于该作品的任何许可,并且如果该利益前手拥有或能够以合理努力取得该作品的对应源代码,还获得从该利益前手处占有该对应源代码的权利。

你不得对行使本许可证授予或确认的权利施加任何进一步限制。例如,你不得对行使本许可证授予的权利收取许可费、版税或其他费用,也不得提起诉讼(包括诉讼中的交叉请求或反诉),主张制造、使用、销售、许诺销售或进口本程序或其任何部分侵犯了任何专利权利要求。

11. 专利

“贡献者”是指授权在本许可证下使用本程序或本程序所基于的作品的版权所有者。如此授权的作品称为该贡献者的“贡献者版本”。

贡献者的“必要专利权利要求”是指该贡献者拥有或控制的所有专利权利要求,无论是已经取得还是以后取得,只要其贡献者版本以本许可证允许的某种方式制造、使用或销售会侵犯这些权利要求;但不包括仅因进一步修改贡献者版本才会被侵犯的权利要求。就本定义而言,“控制”包括以符合本许可证要求的方式授予专利再许可的权利。

每位贡献者都依据其必要专利权利要求,授予你一份非独占、全球范围、免版税的专利许可,用以制造、使用、销售、许诺销售、进口以及以其他方式运行、修改和传播其贡献者版本的内容。

在以下三段中,“专利许可”是指任何明确约定或承诺,无论其名称如何,即不强制执行某项专利(例如明确许可实施某项专利,或承诺不起诉专利侵权)。向某一方“授予”此类专利许可,是指作出不对该方强制执行某项专利的此类约定或承诺。

如果你明知依赖某项专利许可而传送受保护作品,而该作品的对应源代码无法让任何人通过公开可用的网络服务器或其他易于访问的方式,免费地、依照本许可证条款进行复制,那么你必须**(1)使对应源代码能够如此获得,或(2)安排使自己放弃就该特定作品享有的专利许可利益,或(3)**以符合本许可证要求的方式,安排将专利许可扩展至下游接收者。“明知依赖”是指你实际知道,若非该专利许可,你在某国传送受保护作品、或你的接收者在某国使用受保护作品,将会侵犯该国的一项或多项你有理由相信有效的可识别专利。

如果依据某一单一交易或安排,或与之相关,你传送或通过促成传送来传播受保护作品,并向部分接收受保护作品的当事人授予专利许可,授权他们使用、传播、修改或传送该受保护作品的某一特定副本,那么你授予的专利许可将自动扩展至该受保护作品及基于它的作品的所有接收者。

如果某项专利许可未将其涵盖范围纳入本许可证明确授予的一项或多项权利,禁止行使这些权利,或以不行使这些权利为条件,则该专利许可属于“歧视性”许可。如果你是与从事软件分发业务的第三方达成的某项安排的当事人,根据该安排你需依据传送作品活动的程度向该第三方付款,且根据该安排该第三方会向任何将从你处接收受保护作品的当事人授予歧视性专利许可,**(a)与被你传送的受保护作品副本(或由这些副本制作的副本)相关,或(b)**主要针对并关联于包含该受保护作品的特定产品或汇编,则你不得传送该受保护作品,除非你是在 2007 年 3 月 28 日之前订立该安排,或该专利许可是在此之前授予的。

本许可证中的任何内容均不得解释为排除或限制你依据适用专利法本来可能享有的任何默示许可或其他侵权抗辩。

12. 不放弃他人的自由

如果强加于你的条件(无论是通过法院命令、协议还是其他方式)与本许可证的条件相矛盾,这些条件并不能免除你遵守本许可证条件的义务。如果你无法在传送受保护作品时同时履行本许可证下的义务和任何其他相关义务,那么结果是,你根本不得传送它。例如,如果你同意某些条款,要求你向从你处接收本程序的人为继续传送收取版税,那么要同时满足这些条款和本许可证,唯一的办法就是完全不传送本程序。

13. 远程网络交互;与 GNU 通用公共许可证一起使用

尽管本许可证有任何其他规定,如果你修改了本程序,你的修改版本必须向所有通过计算机网络与其远程交互的用户(如果你的版本支持此类交互)醒目地提供机会,使其能够通过从网络服务器免费访问对应源代码的方式,获得你版本的对应源代码,方式可以是促进软件复制的某种标准或惯常手段。该对应源代码应包括依照下一段并入的、受 GNU 通用公共许可证第 3 版约束的任何作品的对应源代码。

尽管本许可证有任何其他规定,你获准将任何受保护作品与依据 GNU 通用公共许可证第 3 版授权的作品链接或组合成单一组合作品,并传送由此产生的作品。本许可证的条款将继续适用于其中属于受保护作品的部分,但与它组合的作品仍受 GNU 通用公共许可证第 3 版管辖。

14. 本许可证的修订版本

Free Software Foundation 可能会不时发布 GNU Affero 通用公共许可证的修订版本和/或新版本。此类新版本在精神上与当前版本相似,但可能在细节上有所不同,以解决新的问题或关切。

每个版本都有一个可区分的版本号。如果本程序指明某一编号版本的 GNU Affero 通用公共许可证“或任何更高版本”适用于它,你可以选择遵循该编号版本的条款和条件,或 Free Software Foundation 发布的任何更高版本的条款和条件。如果本程序未指明 GNU Affero 通用公共许可证的版本号,你可以选择 Free Software Foundation 曾经发布的任何版本。

如果本程序指明可以由某个代理人决定可以使用 GNU Affero 通用公共许可证的哪些未来版本,则该代理人公开声明接受某一版本,即永久授权你为本程序选择该版本。

较新的许可证版本可能会授予你附加或不同的许可。但是,你选择遵循较新版本,并不会因此对任何作者或版权所有者施加额外的义务。

15. 担保免责声明

在适用法律允许的范围内,本程序不提供任何担保。除另有书面说明外,版权所有者及/或其他当事人按“原样”提供本程序,不提供任何形式的明示或默示担保,包括但不限于对适销性和特定用途适用性的默示担保。本程序的质量和性能的全部风险由你承担。如果本程序被证明有缺陷,你应承担所有必要的维修、修复或纠正费用。

16. 责任限制

除非适用法律要求或经书面同意,任何版权所有者,或任何其他按上述许可修改和/或传送本程序的人,在任何情况下均不对你承担损害赔偿责任,包括因使用或无法使用本程序而产生的任何一般、特殊、附带或间接损害(包括但不限于数据丢失或数据变得不准确、你或第三方遭受的损失,或本程序无法与任何其他程序协同运行),即使该版权所有者或其他当事人已被告知此类损害的可能性。

17. 第 15 节和第 16 节的解释

如果上述担保免责声明和责任限制无法依其条款产生当地法律效力,则审理法院应适用最接近于在与本程序相关的全部民事责任上作出绝对放弃的当地法律,除非随本程序副本一起提供担保或承担责任假设以换取费用。