Because of the Internet age and cloud application born AGPL-3.0 license terms

Original link: http://www.cnblogs.com/xiyu714/p/9901920.html

This article reprinted from: AGPL-3.0 licensing terms in response to the era of the Internet and cloud applications born
As you can see, was originally written in Traditional Chinese, Simplified and I convert it to a "network" with "network" to facilitate read. Did not modify other original content


    GNU Affero General Public License 3.0 (AGPL-3.0) 是自由软体基金会于2007 年11 月19 日所发布的一份自由开源软体授权条款*(注一)*。这份授权条款与GPL-3.0 为孪生条款,因为这两份条款仅在第13 条有所不同,其余的规定则一模一样。但这第13 条的不同差异处,就让AGPL-3.0 与GPL-3.0 的拘束特性有着很大的分别,这也让许多提供网络服务的公司对于这份条款避之唯恐不及。但AGPL-3.0 在使用上真的如此令人恐惧?其中的条款内容究竟如何?在利用自由开源软体元件的同时,又应该以什么样的态度与立场来面对AGPL-3.0?本文将会针对这些问题一一说明。

As used herein the outset, AGPL-3.0 GPL-3.0 and differ only of article 13, and AGPL-3.0 If this article are explained in the vernacular, the effect is: If the service mode through a network link, so that users can take advantage of AGPL-3.0 program derived from the service, even if the user has not actually made or derived AGPL-3.0 program code, network service providers at this time, still let the user can get the AGPL-3.0 program source derived. Such a network service provider at an early stage is generally referred to as ASP (Application Service Provider), control now prevailing terms, these ASP industry is to provide SaaS (Software as a Service) industry players, such as Google Search, Google Map, Gmail, etc. all belong to this network service, the Google service can be said is a typical ASP service patterns. From the point of view written reasons, AGPL reason why special provisions ASP industry must provide program source code to Internet users, because until there is no such licensing terms AGPL, many ASP industry use GPL licensed components to the application network architecture, and in accordance with the GPL the provisions of these apps because there is no place to be spread outside of the ASP industry, which is the user network services do not get these apps, only through the network to take advantage of the program's features, so network users have no right according to the GPL licensing terms, obtain a copy of these apps in app source GPL components to the industry ASP (Note 2) . Some believe that free and open source software philosophy, such a phenomenon is because there are loopholes caused by the GPL, thus promoting modify the GPL licensing terms of content. The consent of the Free Software Foundation (Free Software Foundation, FSF), and through the back of GPL-2.0 of Article 2 of the first paragraph plus d), AGPL-1.0 was born. Therefore, although the version of GPL-2.0 and AGPL-1.0 difference between these two terms a number of times, but in fact can be regarded as almost identical twin content provision (Note 3) .

Thereafter, the Free Software Foundation while drafting GPL-3.0 also drafted, worked out a new version of the AGPL-3.0, from the content of GPL-3.0 and AGPL-3.0 is consistent with the version number of start times. And in the middle of a version with the Third Edition, there is a transitional version AGPL-2.0 only symbolic significance of which is expressed mainly short: If a program using AGPL-1.0 and later versions of the authorization, then the user can program AGPL-2.0 provides that the freedom to decide whether or not to authorize the use of AGPL-3.0 this program (Note 4) .

Can be learned from the historical background, this series AGPL license terms for a total of three versions, all three versions are based on the GPL, efforts to deal with the use of behavior ASP industry, so AGPL has all the features of the GPL, which of course practice also contains the idea of the four freedoms (Note 5) , as well as authorization for the binding nature of the program, including derivatives. However, because of the limited length of the article, this article only be for the latest version of the AGPL-3.0 Introduction, while the focus on Article 13, the rest of GPL-3.0 with the same content, please also refer readers to a separate GPL related articles.

In accordance with the provisions of Article 13 AGPL-3.0, and if the program is modified to produce derivative program, then any network user with the derived program via computer networks to interact, must have the opportunity to be near through the network ( access) the AGPL-3.0 programs derived from the program source code, that is to say, the program will be derived placed on the network for users who use the network, the obligation to provide opportunities derived app users get the source code of the program. Authorized to AGPL-3.0 SatusNet micro blog, for example (Note F) , after a company if StatusNet download the program source code, modify, rename CrossChat, and CrossChat on the line, and so derivative program provides network users micro-blog service in this case a company must comply with the rules AGPL-3.0, so users can get CrossChat CrossChat through the network of program source code. So we can know that the key to start the provisions of Article 13 AGPL-3.0 is to "modify" and "Network Service", if a company did not modify StatusNet, but brought the whole package, the change in name and logo, and then let the other components through this AGPL-3.0 original interactive programming interfaces (Application programming interface, API), directly on-line service, then, at this time there is no armor provided AGPL-3.0 obligations of the original program source (Note G) .

On such basic requirements, there are several points must be noted:

  1. Since the AGPL-3.0 is an interactive program derived through the network and service users, the easiest way to provide program source code, is to use the network transmission to provide, so AGPL-3.0 Regulation of Internet service providers must be derived from the program put the program source code storage on the web server, and then provide service users with a pipe near the store devices, so that it could therefore get the program source code (... providing access to the Corresponding Source from a network server ....);
  2. To protect the service provider using the technology too complicated or difficult to discourage users to download the program source code, the freedom to distribute indirect effects of the program source code, so AGPL-3.0 Regulation of Internet service providers must use standard or general common way to help, facilitate the users to download the program source code (... through some standard or customary means of facilitating copying of software ....);
  3. Due to the cost of the network service provider itself it is through the network to provide services, to provide additional program source code is almost equivalent to zero, so AGPL-3.0 rules to provide program source code of behavior must be transmitted through the network free of charge.
    Continue the above example to further illustrate: A company can be on CrossChat site, open on a separate page "Source Code" is named, explained License CrossChat of the page, while providing a link to download the source code of the program, so to meet the AGPL-3.0 provides a free basic obligations derived from the provisions of the program source code. Of course, a company can also be used in other ways, such as service users CrossChat after the completion of the registration process, you will receive a registration completion notification letter, a company can attach CrossChat source in the notification letter in the download URL, so use who through clicking the links to download the source code. In short, users get through the near pipeline network server to facilitate the source code, can have a lot of changes in the technology and methods, provided that they meet the above AGPL-3.0 has made provisions to facilitate basic spirit is the practical way .

LC_201209_img1.png

▲ Figure 1: identi.ca using the StatusNet set up micro-blog site, the site explain the source website system source code, licensing terms, and download the source code of the program through the pipeline "Source" independent page.

​ AGPL-3.0 与GPL-3.0 一样,都是为了实践四大自由而制定的授权条款,也因此这两份条款对于衍生程式都具有较严谨的授权拘束性(注八),这样的特性如果发挥到极致,会让AGPL-3.0 与GPL-3.0 这两份孪生条款彼此排斥,所以为了让AGPL-3.0 元件与GPL-3.0 元件可以结合并存在同一个程式当中,两份条款分别在其第13 条的地方一同设立了例外规定:那就是,各自的授权条款仅拘束原本各自的元件,而不会扩及拘束到另一方的授权元件,也就是AGPL-3.0 授权的元件,维持AGPL-3.0 的授权,而GPL-3.0 授权的元件,一样维持GPL-3.0 授权,彼此的授权状态互不干扰,然而,当整体衍生程式成为网络服务程式的话,GPL-3.0 授权的元件,则必须一并适用AGPL- 3.0 第13 条的进阶规定,也就是说,此时GPL-3.0 元件的程式源码也必须一并提供给使用者,以不弱化AGPL-3.0 设定网络服务就要启 程式源码提供义务的规定。如此一来,两份条款彼此有了例外并存的依据,亦可以增进元件的结合与应用,同时也维持了AGPL-3.0 规范ASP 业者必须提供程式源码的初衷。

​ 而对于开源界来说,正因为AGPL-3.0 着眼于网络使用方面的规则,特别针对网络服务行为规定有提供程式源码的义务,所以一些自由开源专案反而特别偏好采用AGPL-3.0 来授权,如此未来专案程式被网络服务提供者透过网络加以应用的时候,就可以要求服务提供者必须提供衍生程式的程式源码。这样的专案除了前述的StatusNet 之外,企业资源管理系统OpenERP、人际关系管理系统SugarCRM、图形资料库系统Neo4j,以及软体专案开发管理平台Launchpad 等著名的自由开源软体专案(注九),都是采用AGPL-3.0 来授权。

​ 在经过上述的简要介绍之后,让我们重新审视本文一开始罗列的诸多疑问:AGPL-3.0 在使用上真的如此令人恐惧?一般使用者与商业使用者,又该以什么样的态度与立场来面对AGPL-3.0?

​ 其实,从应用面来看,AGPL-3.0 的授权拘束性并非会被无限制扩张的,只要使用者能谨守不直接修改原程式这个重要判断准则,因为AGPL-3.0 的规则,并非要所有运用AGPL-3.0 程式进行网络服务的专案,都必须将自己撰写的所有程式源码提供出来,其要求程式源码的范围,还是强调在原程式已被修改的部份,以及该部份与直接对应元件结合成为衍生作品时的程式源码。不过,不可讳言的是,也因为AGPL-3.0 这样的义务规定,间接扩张了AGPL-3.0 授权拘束性的影响力,一些无法或不愿意将程式源码提供出来,或对此规则有疑虑的公司,理所当然便会采取避用AGPL-3.0 授权元件的策略,以保守其网络应用程式在技术方法上的隐密性。然而在这样的情况下,部份AGPL-3.0 授权的专案,也已开始套用过往在GPL 授权专案上常见的双重授权商业模式(注十):这些专案一方面透过AGPL-3.0 释出程式源码,获得与社群开发者协同开发与除错的优势,另外一方面也提供封闭源码的商业授权条款,让想要另外客制化应用、却又无法提供所有衍生程式源码的公司与个人,有另外一个选择的管道。前述的OpenERP 与SugarCRM,便皆是采用此种双重授权策略的范例专案。所以客观来说,AGPL-3.0 基于GPL-3.0 发展的授权拘束性,虽然确有扩张,但却并不是无法控管。许多网络传闻,单单一句话说「使用AGPL-3.0 授权元件进行网络服务,便得提供自身系统的所有程式源码。」那也是太简略而不清楚明了的误解。只要使用端有正确的使用观念,对于AGPL-3.0 元件的应用,能遵守其授权拘束性开启的分际,或是事先询求权利人的另外授权,那么是毋需过度担心与恐惧的。

注一:AGPL-3.0授权条款全文请见:https://www.gnu.org/licenses/agpl-3.0.html
注二:关于ASP业者利用自由开源软体的相关讨论,请见:葛冬梅,ASP与自由/开放源码软体的散布条款,https://www.openfoundry.org/tw/legal-column-list/494- asp-。

注三:AGPL-1.0内容请见:https://www.affero.org/oagpl.html。在前言之前,有一小段文字,清楚说明AGPL-1.0是修改自GPL-2.0。 

注四:AGPL-2.0的内容请见:https://www.affero.org/agpl2.html

注五:关于四大自由的内容以及与GPL条款的关系,请参见:葛冬梅,让人既爱又头痛的GNU GPL,https://www.openfoundry.org/tw/legal-column-list/525

注六:精确来说,StatusNet是采用「AGPL-3.0及其后版本」来授权。StatusNet官网:https://status.net/;StatusNet开发专案网页:https://gitorious.org/projects/statusnet

注七:不过甲公司仍然可以自行提供StatuNet 的程式源码,这样的作法可以协助自由开源软体的散布,进而促进开发软体专案的名声,并与开发社群建立良好关系,促进整体自由开源软体生态的正向循环。

Note 8: For the binding nature of the GPL instructions and related issues, see: Lin Cheng Xia, GPL terms of standards for judging its program derived authorized binding nature of the diffusion range (on), https://www.openfoundry.org/ tw / legal-column-list / 8446; Lin Cheng Xia, GPL terms derived for determining its program authorization binding standard range of diffusion (lower), https://www.openfoundry.org/tw/legal-column-list / 8447.

Note 9: Software for further information mentioned in this paragraph as follows: OpenERP website, https://www.openerp.com/;SugarCRM website, HTTPS: //www.sugarcrm.com/; Neo4j , HTTPS: // Neo4j . org /; Launchpad is developed by the company Canonical, the company behind the Ubuntu operating system that is supported by the company, developed the Canonical Launchpad for development and management of free and open source software, but also the ongoing maintenance and development of Launchpad Launchpad, above https: / /launchpad.net/launchpad-project.

Note X: on free and open source software dual licensing policy is applied, see: Lin Cheng Xia, business application model of free software (under) - double authorization papers, https://www.openfoundry.org/tw/legal-column- list / 1056.

Reproduced in: https: //www.cnblogs.com/xiyu714/p/9901920.html

Guess you like

Origin blog.csdn.net/weixin_30919429/article/details/94790952