In this article
Ist eine AGPL-Lizenz die richtige Wahl für Ihre Open-Source-Projekte?
Entwickler gehen oft davon aus, dass Anforderungen an Softwarelizenzen ausdrücklich in den Zuständigkeitsbereich der Rechtsabteilung fallen. Angesichts der Vielzahl verfügbarer Open-Source-Komponenten und der Auswirkungen von Lizenzanforderungen sollte jeder Entwickler zumindest ein allgemeines Verständnis davon haben, worum es bei diesen Lizenzen geht und wie sie sich auf die jeweilige Software auswirken können.
Jedes Team muss sämtliche Lizenzanforderungen für seine Software prüfen und dabei auch mögliche Auswirkungen auf nachgelagerte Projekte berücksichtigen. Vor der Veröffentlichung aktualisierter oder geänderter Software müssen Unternehmen ein vollständiges Audit zur Lizenz-Compliance durchführen. Wird dies in jeder Projektphase berücksichtigt, lassen sich künftige Probleme vermeiden. Eine Lizenz, mit der sich Teams befassen sollten, ist die GNU Affero General Public License (AGPL).
Was ist AGPL?
Bevor wir uns mit der AGPL-Lizenz befassen, ist es wichtig, ihren Ursprung zu verstehen. 1988 verfasste Richard Stallman seine General Public License (GPL), um das Recht der Urheber zu verankern, ihre Software dauerhaft als Open Source bereitzustellen. Die GPL liegt inzwischen in der dritten Version (GPLv3) vor, da der vorherige Text einige Schlupflöcher enthielt.
Als Teil der GPLv3 stellte die Free Software Foundation (FSF) zwei zusätzliche Lizenztypen bereit: die Lesser General Public License (LGPLv3) und die Affero General Public License (AGPLv3). Die AGPL-Version der General Public License soll umfassende Copyleft-Rechte für jede Software durchsetzen, die sie verwendet.
Was sind die Vor- und Nachteile der AGPL-Lizenz?
Bei der Standard-GPL-Lizenz greift die Reziprozitätsklausel, sobald ein Entwickler Software veröffentlicht. Das Copyleft-Prinzip soll dafür sorgen, dass der gesamte Quellcode der Open-Source-Community zur Verfügung steht. Mit AGPL können Softwareteams sicherstellen, dass alle Änderungen an der Codebasis öffentlich zugänglich werden – auch bei serverseitigen Anwendungen.
Ob AGPL 3.0, LGPL 3.0 oder die Standard-GPL 3.0 am besten zum Team passt, hängt davon ab, was mit der Software letztlich erreicht werden soll. Copyleft-Lizenzen eignen sich für Entwickler, die sicherstellen möchten, dass alle späteren Änderungen der Community zur Verfügung stehen. Permissive Lizenzen wie die MIT-Lizenz bieten dagegen mehr Freiheit, Änderungen künftig als proprietär zu behandeln.
Zu den Vorteilen der AGPL gehören:
Sie zwingt Teams dazu, sich früh im Projekt mit ihrer Lizenzierungsphilosophie auseinanderzusetzen und sich an ihre Entscheidung zu halten.
Sie stellt sicher, dass alle von der Open-Source-Community entwickelten Code-Snippets verfügbar bleiben, und verhindert, dass andere Open-Source-Software neu verpacken und verkaufen.
Die Nachteile der AGPL sind:
Sie schreckt manche Teams von Open-Source-Paketen ab, da sie dazu führt, dass der gesamte übrige Code zu GPL-Software werden muss.
Manche halten sie für übermäßig restriktiv, da jedes Modul in einem abhängigen Paket, das AGPL verwendet, auch alle andere Software ähnlichen Einschränkungen unterwirft.
Sie nimmt Teams die Möglichkeit, Software künftig proprietär zu machen.
Können Unternehmen AGPL-Software verwenden?
Die AGPL V3-Lizenz kann zwar von allen verwendet werden, ist bei Unternehmen jedoch nicht beliebt. Die Einschränkungen, die für alle nachfolgenden Versionen von AGPL-Software gelten, erschweren ihre Einführung, wenn konkurrierende kommerzielle Interessen bestehen.
Die meisten Unternehmen bevorzugen permissive Lizenzen. Diese geben ihnen die Freiheit, Open-Source-Komponenten zu verwenden und ihre Version der Software später dennoch in ein kommerzielles Produkt umzuwandeln. Bei einer Copyleft-Lizenz wie AGPL ist dies nicht möglich.
Was ist eine Copyleft-Lizenz?
Copyleft-Lizenzen setzen ein Prinzip durch, das Stallman erstmals in seinem GNU-Manifest vertrat. In den 1960er-Jahren war es üblich, dass Entwickler den gesamten Quellcode offen teilten, um anderen zu helfen. So entstand ein Gefühl der Gemeinschaft und Zusammenarbeit. In den 1980er-Jahren verlor dieser Trend an Bedeutung, als Unternehmen begannen, Urheberrechte auf ihren Quellcode geltend zu machen. Copyleft ist das Gegenstück zum Copyright: Es sichert das Recht, jeden Quellcode zu verwenden, zu ändern und weiterzuverbreiten, der unter einer Copyleft-Lizenz wie der GPL steht.
Lässt sich AGPL mit Closed-Source-Anwendungen verwenden?
Die AGPL V3-Lizenz ist eine starke Copyleft-Lizenz, die Open Source für alle Komponenten vorschreibt, die von einem früheren Werk abgeleitet sind. Sie schließt das Schlupfloch für serverseitige Anwendungen: Der Quellcode muss auch dann verfügbar gemacht werden, wenn die Software nicht veröffentlicht wird. Laut AGPL gilt jede Person, die auf eine öffentlich zugängliche serverseitige Anwendung zugreift, als Nutzer. Bei Anwendungen, die sich im Netzwerk eines Unternehmens befinden, wird durch die AGPL keine Veröffentlichung des Quellcodes ausgelöst.
Ist die AGPLv3-Lizenz mit der GPLv3 kompatibel?
Wer ein Werk unter der GPLv3-Lizenz mit AGPL-Software kombiniert, kann die Rechte der GPLv3-Lizenz für das unveränderte Werk beibehalten. Geänderte Versionen des GPLv3-Werks müssen jedoch unter der AGPLv3-Lizenz stehen.
Aufgrund ihrer radikalen Open-Source-Lizenzierung wird AGPL derzeit nur in weniger als 1 % der Open-Source-Projekte verwendet.
Mit Snyk ein effektives Lizenz-Compliance-Management etablieren
Teams, die ihre Lizenz-Compliance wirksam kontrollieren müssen, können sich auf Snyk verlassen. Unser Entwickler-zuerst-Tool für Lizenzmanagement bietet einen klaren Überblick über die Pakete und Abhängigkeiten in Ihrer Codebasis. Es hilft Entwicklern, die Lizenz-Compliance zu verstehen und zu verwalten, und beugt so unvorhergesehenen Problemen im Projekt vor. Mit der Lösung von Snyk für das Lizenz-Compliance-Management können Sie sicherstellen, dass alle Komponenten aus Open-Source-Arbeiten mit den Lizenzanforderungen Ihres Unternehmens vereinbar sind.
Erfahren Sie, wie Snyk Ihre Teams beim Verwalten von AGPL-Lizenzen der Version 3 unterstützen kann:Demo vereinbaren oder kostenlos testen – starten Sie noch heute.
Starten Sie mit Capture-the-Flag
Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Challenges lösen.