GNU AFFERO 通用公共许可证

第3版,2007年11月19日

版权所有 © 2007 Free Software Foundation, Inc. <https://fsf.org/>

Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

每个人都被允许复制和分发本许可证文件的逐字副本,但不允许进行更改。

【译者声明】
  This is an unofficial translation of the GNU Affero General Public License into Simplified Chinese. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU AGPL–only the original English text of the GNU AGPL does that. However, we hope that this translation will help Chinese speakers understand the GNU AGPL better.
  这是GNU Affero通用公共许可证的非官方简体中文翻译。它不是由自由软件基金会发布的,也没有合法地说明使用GNU AGPL的软件的发行条款--只有GNU AGPL的原始英文文本才会这样做。然而,我们希望这个翻译能够帮助中文使用者更好地理解GNU AGPL。

You may publish this translation, modified or unmodified, only under the terms at https://www.gnu.org/licenses/translations.html.

您可以仅根据http://www.gnu.org/licenses/translations.html中的条款发布此修改或未修改的翻译。

序言

GNU Affero 通用公共许可证是一个自由的、允许复制的软件和其他类型作品的许可,在网络服务器软件的情况下,它是专门为确保与社区合作而设计。

大多数软件和其他实用作品的许可都是为了剥夺您分享和改变作品的自由。相比之下,我们的通用公共许可证的目的是保证您分享和改变一个程序的所有版本的自由--确保它对所有用户都是自由软件。

当我们谈论自由软件时,我们指的是自由,而不是价格。我们的通用公共许可证的设计是为了确保您有分发自由软件副本的自由(如果您愿意,还可以收费),您可以收到源代码,或者如果您想得到它,您可以改变软件或在新的自由程序中使用它的片段,而且您知道您可以做这些事情。

使用我们通用公共许可证的开发者通过两个步骤保护您的权利。(1)主张软件的版权,(2)向您提供本许可证,允许您合法地复制、分发和/或修改该软件。

捍卫所有用户自由的一个次要好处是,如果程序的替代版本得到广泛使用,就可以供其他开发者使用。许多自由软件的开发者对由此产生的合作感到振奋和鼓舞。然而,在网络服务器上使用的软件,这种结果可能无法实现。GNU通用公共许可证允许制作一个修改过的版本,让公众在服务器上访问它,而不需要向公众发布其源代码。

GNU Affero通用公共许可证是专门设计来确保在这种情况下,修改后的源代码可以被社区使用。它要求网络服务器的运营商向该服务器的用户提供运行在那里的修改版本的源代码。因此,在一个可公开访问的服务器上公开使用一个修改过的版本,使公众能够获得修改过的版本的源代码。

一个较早的许可证,称为Affero通用公共许可证,由Affero发布,旨在实现类似目标。这是一个不同的许可证,不是Affero GPL的一个版本,但Affero已经发布了Affero GPL的一个新版本,允许在这个许可证下重新许可。

关于复制、分发和修改的确切条款和条件如下。

条款与条件

0. 定义.

"本许可证 "是指GNU Affero通用公共许可证的第三版。
"版权 "也指适用于其他类型作品的类似版权的法律,如半导体掩模。

"本程序 "是指在本许可证下许可的任何有版权的作品。每个被许可人都被称呼为 "您"。"被许可人 "和 "接受者 "可以是个人或组织。

"修改 "作品是指以需要版权许可的方式复制或改编该作品的全部或部分内容,而不是制作一个完全的副本。由此产生的作品被称为早期作品的 "修改版 "或 "基于 "早期作品的作品。
一个 "涵盖的作品 "是指未经修改的程序或基于该程序的作品。

"传播 "作品是指在未经许可的情况下,对作品做任何事情,使您在适用的版权法下承担直接或间接的侵权责任,但在计算机上执行或修改私人副本除外。传播包括复制、分发(无论是否修改)、向公众提供,在一些国家还包括其他活动。
传播 "作品是指使其他各方能够制作或接受副本的任何一种传播。仅仅是通过计算机网络与用户互动,而没有转让副本,并不是传播。

交互式用户界面显示 "适当的法律声明 "的程度是,它包括一个方便和显眼的功能,(1)显示适当的版权声明,(2)告诉用户该作品没有保证(除了提供保证的范围),被许可人可以根据本许可传达该作品,以及如何查看本许可证的副本。如果界面呈现的是一个用户命令或选项的列表,如菜单,那么列表中的突出项目就符合这一标准。

1. 源代码.

作品的 "源代码 "是指对作品进行修改的首选形式。"目标代码 "是指作品的任何非源码形式。

"标准接口 "是指由公认的标准机构定义的官方标准的接口,或者在为某一特定编程语言指定接口的情况下,指在使用该语言的开发者中广泛使用的接口。

可执行作品的 "系统库 "包括除作品整体以外的任何东西,这些东西(a)以正常的形式打包一个主要部件,但不是该主要部件的一部分,以及(b)仅用于使作品与该主要部件一起使用,或用于实现一个标准接口,该接口的实现已以源代码形式向公众提供。这里的 "主要部件 "是指可执行作品所运行的特定操作系统(如果有的话)的主要基本部件(内核、窗口系统等),或用于制作该作品的编译器,或用于运行该作品的目标代码解释器。

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

相应源不需要包括用户可以从相应源的其他部分自动重新生成的任何东西。

源代码形式的作品的相应源是指同一作品。

2. 基本权限.

本许可证授予的所有权利都是在程序的版权期限内授予的,并且在满足所述条件的情况下是不可撤消的。本许可证明确肯定了您对运行未经修改的程序的无限许可。只有在输出的内容构成了一个受保护的作品的情况下,运行受保护作品的输出才受本许可证的保护。本许可证承认您的合理使用权或版权法所规定的其他同等权利。

只要您的许可证仍然有效,可以无条件地制作、运行和传播您没有转达的涵盖作品。您可以将涵盖的作品传达给其他人,唯一的目的是让他们专门为您进行修改,或为您提供运行这些作品的设施,前提是您在传达所有您不控制版权的材料时遵守本许可证的条款。那些为您制作或运行所涉作品的人必须完全代表您,在您的指导和控制下,按照禁止他们在与您的关系之外制作您的版权材料的任何副本的条款来进行。

在任何其他情况下,仅在下述条件下允许转让。不允许转授权;第10条规定没有必要。

3. 从反规避法中保护用户的合法权利.

根据任何履行1996年12月20日通过的世界知识产权组织版权条约第11条规定的义务的适用法律,或禁止或限制规避此类措施的类似法律,任何涵盖的作品都不得被视为有效技术措施的一部分。

当您传达一个涵盖的作品时,您放弃任何禁止规避技术措施的法律权力,只要这种规避是通过对涵盖的作品行使本许可证下的权利而实现的,并且您否认有任何限制操作或修改作品的意图,以作为对作品的用户强制执行您或第三方禁止规避技术措施的法律权利的手段。

4. 传递逐字拷贝.

您可以在收到程序的源代码后,以任何媒介传递其逐字拷贝,但您必须在每份拷贝上醒目地、适当地发布适当的版权声明;保持所有说明本许可证和根据第7条添加的任何非许可条款适用于代码的声明完整无缺;保持所有关于没有任何保证的声明完整无缺;并将本许可证的拷贝与程序一起交给所有接收者。

您可以对每份拷贝收取任何费用,也可以不收取任何费用,您还可以提供有偿的支持或保修保护。

5. 传递修改后的源版本.

您可以根据第 4 节的条款,以源代码的形式传达基于本程序的作品,或根据本程序的修改而产生的作品,但您必须满足以下所有条件:

如果一个受保护作品与其他单独和独立的作品的汇编,其性质不是受保护作品的延伸,并且没有与之结合以形成更大的程序,在存储或分发媒介的某一卷上,如果该汇编及其产生的版权没有被用来限制汇编用户的访问或法律权利,超出单个作品允许的范围,则被称为 "聚合"。将一个受保护的作品包含在一个总体中并不导致本许可证适用于总体的其他部分。

6. 传递非源形式.

您可以根据第4条和第5条的规定,以目标代码的形式传递被保护的作品,但您也必须根据本许可证的规定,以下列方式之一传递机器可读的相应源代码:

目标代码的可分离部分,其源代码作为系统库被排除在相应的源码之外,不需要包括在传达目标代码作品中。

用户产品 "是指(1) "消费品",即通常用于个人、家庭或家居用途的任何有形个人财产,或(2)为纳入住宅而设计或出售的任何东西。在确定一个产品是否是消费品时,有疑问的情况应以有利于承保的方式解决。对于特定用户收到的特定产品,"通常使用 "是指该类产品的典型或常见用途,而不考虑特定用户的地位或特定用户实际使用或期望或预期使用该产品的方式。一个产品是消费类产品,无论该产品是否有大量的商业、工业或非消费类用途,除非这些用途是该产品的唯一重要使用方式。

用户产品的 "安装信息 "是指在该用户产品中从其对应源的修改版本安装和执行所涵盖作品的修改版本所需的任何方法、程序、授权密钥或其他信息。这些信息必须足以确保在任何情况下都不会仅仅因为进行了修改而阻止或干扰修改后的目标代码的继续运行。

如果您在用户产品中,或与用户产品一起,或专门在用户产品中使用,并作为交易的一部分,将用户产品的拥有权和使用权永久或固定地转让给接受者(无论交易如何定性),根据本条规定转让的对应源必须附有安装信息。但是,如果您或任何第三方都没有保留在用户产品上安装修改过的目标代码的能力(例如,作品已经安装在ROM中),则该要求不适用。

提供安装信息的要求不包括继续为被接受者修改或安装的作品或被修改或安装的用户产品提供支持服务、保证或更新的要求。当修改本身对网络的运行产生实质性的不利影响或违反了网络上的通信规则和协议时,可以拒绝访问网络。
根据本节规定,所传达的相应源码和所提供的安装信息必须是公开记录的格式(并以源代码的形式向公众提供实现),并且必须不需要特殊的密码或钥匙来解包、阅读或复制。

7. 附加条款.

"附加许可 "是对本许可条款的补充,对其中的一个或多个条件作出例外规定。适用于整个程序的附加许可应被视为包括在本许可证中,只要它们在适用法律下有效。如果附加许可只适用于本程序的一部分,则该部分可以根据这些许可单独使用,但整个程序仍受本许可证的管辖,而不考虑附加许可。

当您转送一份受保护作品的副本时,您可以选择从该副本或其任何部分中删除任何附加许可。(在某些情况下,当您修改作品时,附加许可可能被写成需要自己删除)。您可以在您添加到涵盖的作品中的材料上放置额外的许可,对于这些材料,您有或可以给予适当的版权许可。

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

所有其他非许可性的附加条款都被视为第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. 本许可证的修订版.

自由软件基金会可能会不时地发布GNU Affero通用公共许可证的修订版和/或新版本。这些新版本在精神上与目前的版本相似,但在细节上可能有所不同,以解决新的问题或关切。

每个版本都有一个区分的版本号。如果本程序指定某个编号的 GNU Affero 通用公共许可证 "或任何后来的版本 "适用于它,您可以选择遵守该编号的版本或自由软件基金会发布的任何后来的版本的条款和条件。如果本程序没有指定 GNU Affero 通用公共许可证的版本号,您可以选择自由软件基金会发布的任何版本。
如果本计划规定代理人可以决定未来可以使用哪个版本的 GNU Affero 通用公共许可证,那么该代理人对某个版本的公开接受声明将永久授权您为本计划选择该版本。

以后的许可证版本可能会给您额外的或不同的权限。但是,任何作者或版权持有人都不会因为您选择了后来的版本而承担额外的义务。

15. 免责声明.

在适用法律允许的范围内,对该程序没有任何保证。除非另有书面说明,否则版权持有人和/或其他各方 "按原样 "提供该程序,不提供任何明示或暗示的保证,包括但不限于对适销性和特定用途的适用性的暗示保证。关于程序的质量和性能的全部风险由您承担。如果该程序被证明有缺陷,您将承担所有必要的服务、修理或纠正的费用。

16. 赔偿责任的限制.

在任何情况下,除非适用法律要求或书面同意,任何版权持有人或任何其他按上述规定修改和/或传递程序的当事人都不对您的损害负责,包括因使用或无法使用本程序而引起的任何一般的、特殊的、偶然的或间接的损害(包括但不限于数据丢失或数据不准确或您或第三方遭受的损失或本程序无法与任何其他程序一起运行),即使该持有人或其他当事人已被告知这种损害的可能性。

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

如果以上规定的免责声明和责任限制不能根据其条款在当地产生法律效力,审查法院应适用最接近于绝对放弃与本程序有关的所有民事责任的当地法律,除非在收取费用的本程序副本上附有保证或责任承担。

以上是条款和条件

如何将这些条款应用于您的新程序

如果您开发了一个新的程序,并希望它对公众有最大的用处,实现这一目标的最好方法是使它成为自由软件,每个人都可以在这些条款下重新发布和修改。

要做到这一点,请在程序中附上以下通知。最安全的做法是把它们附在每个源文件的开头,以最有效地说明排除担保的情况;每个文件至少要有 "版权 "一行和一个指向完整通知的指针。

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as
    published by the Free Software Foundation, either version 3 of the
    License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.

    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.

翻译:

<用一行字来说明程序的名称和它所做的事情的简单概念。>
Copyright (C) <年> <作者姓名> 版权所有。

本程序是自由软件:你可以根据自由软件基金会发布的GNU Affero通用公共许可证的条款,即许可证的第3版或(选择的)任何后来的版本重新发布它和/或修改它。。

本程序的发布是希望它能起到作用。但没有任何保证;甚至没有隐含的保证。本程序的分发是希望它是有用的,但没有任何保证,甚至没有隐含的适销对路或适合某一特定目的的保证。 参见 GNU Affero通用公共许可证了解更多细节。

您应该已经收到了一份GNU Affero通用公共许可证的副本。 如果没有,请参见<https://www.gnu.org/licenses/>。

还要增加如何通过电子和纸质邮件与您联系的信息。

如果您的软件可以通过计算机网络与用户进行远程交互,您也应该确保它为用户提供一种获得其源代码的方法。例如,如果您的程序是一个网络应用程序,它的界面可以显示一个 "源代码 "的链接,引导用户进入代码的存档。您可以用很多方法提供源码,不同的解决方案对不同的程序会更好;具体要求见第13节。

如果有必要,您还应该让您的雇主(如果您是程序员)或学校(如果有的话)为该程序签署一份 "版权免责声明"。有关这方面的更多信息,以及如何申请和遵守GNU AGPL,请参见<https://www.gnu.org/licenses/>。

中文翻译: Samuel Chong美国加州洛杉矶翻译(法庭认证翻译)
联系我们:schong2@go.pasadena.edu