Worum handelt es sich bei der AGPL-Lizenz? Antworten auf die häufigsten Fragen
Viele denken irrtümlicherweise, die Software-Lizenzanforderungen seien die alleinige Aufgabe der Rechtsabteilung. Doch angesichts der vielen verfügbaren Open-Source-Komponenten und der weitreichenden Folgen von Lizenzanforderungen sollten Entwickler zumindest ein grundlegendes Verständnis für diese Lizenzen und ihre Bedeutung für die Software besitzen.
Führt man sich vor Augen, welche Schwierigkeiten sich im gesamten Projektverlauf ergeben können, sollten sich alle beteiligten Teams mit den Lizenzanforderungen an ihre Software vertraut machen. Bevor Updates und Softwareänderungen freigegeben werden, sollte stets eine umfassende Prüfung der Lizenzeinhaltung erfolgen. Wer dies im Projektverlauf regelmäßig tut, kann späteren Problemen vorbeugen. Für Lizenzteams besonders erwähnenswert ist vor diesem Hintergrund die GNU Affero General Public License (AGPL).
Worum handelt es sich bei der AGPL?
Bevor wir näher auf die AGPL eingehen, ist es wichtig, sich deren Ursprung vor Augen führen. Im Jahr 1988 verfasste Richard Stallman seine General Public License (GPL). Damit wollte er es ermöglichen, Software dauerhaft quelloffen zu halten. Aktuell ist bereits die dritte Fassung der GPL (GPLv3) im Einsatz. Diese schließt diverse Schlupflöcher, die in der vorherigen Version für einige Probleme sorgten.
Im Rahmen der GPLv3 veröffentlichte die Free Software Foundation (FSF) zudem zwei weitere Lizenztypen. Dies sind die Lesser General Public License (LGPLv3) und die Affero General Public License (AGPLv3). Die AGPL-Version der General Public License dient der vollständigen Durchsetzung von Copyleft-Rechten an Programmen, die diese verwenden.
Welche Vor- und Nachteile bietet die AGPL-Lizenz?
In der Standardfassung der GPL-Lizenz greift die Gegenseitigkeitsklausel bei jeder Software-Veröffentlichung. Das Copyleft-Prinzip sieht vor, der Open-Source-Community den gesamten Quellcode zugänglich zu machen. Mit einer AGPL-Lizenz können Softwareteams also dafür sorgen, dass die Codebase öffentlich verfügbar gemacht wird. Dies gilt sogar bei serverseitigen Anwendungen.
Ob im Einzelfall nun AGPL 3.0, LGPL 3.0 oder die Standardversion GPL 3.0 am besten geeignet ist, hängt vom Verwendungszweck der jeweiligen Software ab. Copyleft-Lizenzen eignen sich vor allem für Entwicklungsprojekte, bei denen der Community alle späteren Änderungen zugänglich gemacht werden sollen. Im Gegensatz dazu bieten freizügigere Lizenzen wie die MIT-Lizenz später mehr Spielraum für proprietäre Abwandlungen.
Hier einige Vorteile der AGPL:
Das Lizenzierungskonzept muss bereits in frühen Projektphasen festgelegt und dann beibehalten werden.
Codeausschnitte aus der Open- Source-Community bleiben dauerhaft verfügbar. Dies verhindert, dass Dritte sie „umverpacken“ und ursprünglich Open-Source-Software zu Geld machen.
Und hier einige Nachteile der AGPL:
Die Nutzung von Open-Source-Paketen wird gehemmt, da der gesamte Code zwangsläufig unter eine GPL-Lizenz fällt.
Einige halten AGPL für zu weitreichend, da schon ein einziges Modul aus einem abhängigen AGPL-Paket ausreicht, um jede weitere Software ähnlichen Einschränkungen zu unterwerfen.
Die Software kann zu einem späteren Zeitpunkt nicht mehr in ein proprietäres Programm umgewandelt werden.
Eignet sich AGPL-Software auch für den gewerblichen Gebrauch?
Zwar kann jeder AGPL V3 nutzen. Dennoch ist dieser Lizenztyp bei Unternehmen nicht besonders beliebt. Denn die Einschränkungen mit Blick auf spätere Versionen von AGPL-Software bergen bei konkurrierenden wirtschaftlichen Interessen ein gewisses Konfliktpotenzial.
Die meisten Unternehmen bevorzugen freizügigere Lizenzen. Denn die bieten ihnen die Möglichkeit, Open-Source-Komponenten zu nutzen und ihre Softwareversion zu einem späteren Zeitpunkt dennoch in ein kommerzielles Produkt umzuwandeln. Dies ist bei Copyleft-Lizenzen wie AGPL ausgeschlossen.
Was ist eine Copyleft-Lizenz?
Copyleft-Lizenzen setzen ein Prinzip durch, das erstmals von Richard Stallman in seinem GNU-Manifest formuliert wurde. In den 1960er-Jahren war es üblich, dass Entwickler ihren Quellcode bereitwillig offenlegten, um anderen zu helfen. Dies erzeugte ein Gemeinschaftsgefühl und war der Zusammenarbeit sehr förderlich. In den 1980er-Jahren kam diese Vorgehensweise dann allerdings aus der Mode, als sich immer mehr Unternehmen ihren Quellcode urheberrechtlich schützen ließen. Copyleft ist nun das genaue Gegenteil vom Copyright und beinhaltet das Recht, Copyleft-Lizenzen wie GPL unterliegenden Quellcode zu nutzen, zu verändern und weiterzuverbreiten.
Eignet sich AGPL auch für Closed-Source-Anwendungen?
Bei AGPL V3 handelt es sich um eine robuste Copyleft-Lizenz, die das Prinzip der Quelloffenheit sämtlicher Komponenten schützt, die auf anderen Werken basieren. Sie schließt die Regelungslücke auf der Serverseite, derzufolge Quellcode zurückgehalten werden kann, wenn die Software nicht veröffentlicht wird. Bei AGPL gelten daher alle Personen als Benutzer, die bei öffentlichen Anwendungen Zugriff auf die Serverseite haben. Im Falle von Anwendungen in Unternehmensnetzen bewirkt die AGPL-Lizenz allerdings keine zwingende Herausgabe des Quellcodes.
Ist AGPLv3 mit GPLv3 vereinbar?
Wer GPLv3- und AGPL-Programme miteinander verbindet, behält alle laut GPLv3-Lizenz bestehenden Rechte an der ursprünglichen Software. Veränderte Fassungen von GPLv3-Software unterliegen dagegen zwangsläufig der AGPLv3-Lizenz.
Angesichts der radikalen Open-Source-Philosophie werden AGPL-Lizenzen derzeit in weniger als einem Prozent aller Open-Source-Projekte verwendet.
Effektive Lizenz-Compliance mit Snyk
Wer sich mehr Kontrolle in Sachen Lizenzeinhaltung wünscht, ist bei Snyk genau richtig. Mit unserem entwicklerorientierten Tool für das Lizenzmanagement bekommen Sie einen klaren Überblick über Pakete und Abhängigkeiten in Ihrer Codebasis. Und mit den eingebauten Verständnishilfen und Tools für das Lizenzmanagement beugen Sie unvorhergesehenen Problemen im weiteren Verlauf vor. Mit unserer Managementlösung Lizenz-Compliance stellen Sie sicher, dass alle von Open-Source-Programmen abgeleiteten Komponenten Ihre unternehmensspezifischen Lizenzanforderungen erfüllen.
Wenn Sie sich selbst davon überzeugen möchten, wie Snyk Sie bei AGPLv3-Lizenzen unterstützen kann, fordern Sie am besten noch heute eine Demooder einekostenlose Probeversion an.
Capture the Flag: Der Snyk Workshop
In unserem On-Demand Workshop erfahren Sie, wie Sie Capture the Flag Challenges erfolgreich abschließen.