Open Source Compliance

Sowohl in der eigenen Softwareentwicklung als auch beim Fremdbezug von Software sehen sich Unternehmen mehr und mehr mit dem Einsatz von Open Source Software konfrontiert.

Der Einsatz von Open Source Software oder auch „Free und Open Source Software“ ist in der Softwareentwicklung mittlerweile Standard. Open Source Software ist frei im Internet verfügbar, spart Zeit und erlaubt typische Standardfunktionen ohne eigenen Entwicklungsaufwand einzubinden.

Der Begriff Free und Open Source Software legt nahe, wenn die Software in jeder Hinsicht „frei“ ist. Die Nutzung der Software setzt aber die Akzeptanz und Einhaltung der zugrundeliegenden Lizenzbedingungen voraus. Häufig werden diese jedoch wenig bis gar nicht beachtet, was zu erheblichen wirtschaftlichen Risiken (u.a. Unterlassungsansprüche, Schadensersatzansprüche) führen kann.

Daher ist es gerade für Softwareentwicklungsunternehmen essentiell, auch die mit dem Einsatz von Open Source Software verbundenen Verpflichtungen vollständig einzuhalten. Um nicht von den negativen Folgen einer Nichteinhaltung überrascht zu werden, empfiehlt es sich interne Prozesse zur Überwachung der Compliance im Rahmen eines Open Source Compliance Managements einzuführen.

Was versteht man unter Open Source Software?

Open Source Software ist frei verfügbar, aber nur unter Einschränkungen verwendbar, die eine weitere freie Nutzung ermöglichen sollen. So verbindet die Open Source Initiative (https://opensource.org/) Voraussetzungen an die Einordnung als Open Source Software. Unter anderem muss der Source-Code verfügbar sein oder verfügbar gemacht werden. Änderungen der Software müssen erlaubt sein. Die verwendeten Lizenzbedingungen dürfen die Distribution nicht einschränken, es darf für die Open Source Software keine Lizenzgebühr verlangt werden und es muss erlaubt sein, Änderungen auch unter denselben Bedingungen vermarktet zu dürfen.

Hierbei sind Open Source Entwickler verschiedene Wege gegangen. Ein Teil verwendet Lizenzen, die eine Nutzung in Verbindung mit kommerziellen Produkten erlauben. Teilweise verpflichten sie den Nutzer die Open Source Software nur in Verbindung mit kompatiblen Lizenzen zu kombinieren bzw. sehen vor, dass die eigenen Lizenzbedingungen auf Weiterentwicklungen oder verbundene Werke durchgreifen müssen. Man nennt dies auch „Copyleft“ oder viralen Effekt.

Welche Auswirkungen hat dies auf die kommerzielle Nutzung?

Für Unternehmen, die Open Source Software lediglich intern für eigene Zwecke einsetzen, bestehen kaum Beschränkungen, die die Nutzung verhindern. Gelegentlich sind jedoch bestimmte Nutzungsarten ausgenommen.

Wird die Open Source Software jedoch Dritten zur Verfügung gestellt oder baut man diese in kommerzielle Software ein, muss geprüft werden, ob Einsatz und Vertrieb in der geplanten Form von der zugrundeliegenden Lizenz abgedeckt ist.

Einerseits gibt es viele Lizenzen, die dies ermöglichen und sogar für das Gesamtwerk die Verwendung kommerzieller Lizenzbedingungen erlauben. Im Gegensatz zu kommerziellen Drittprodukten sind die Nutzungsmöglichkeiten hier meist flexibler.

Andererseits kann – je nach Lizenz – die Verwendung von Open Source Software zu Einschränkungen führen. Ist zum Beispiel eine Open Source Software unter GNU General Public License (GNU GPL) integriert, kann das Gesamtwerk nicht kommerziell und ohne Offenlegung des Source Codes vermarktet werden.

Hierbei spielt aber auch die Art der Nutzung eine Rolle. Einzelne Lizenzen (z.B. Affero General Public License) schränken die kommerzielle Nutzung sogar soweit ein, dass eine Verwendung in Verbindung mit kommerziellen SaaS-Leistungen eingeschränkt ist.

Weitere Verpflichtungen

Neben der grundsätzlichen Frage der Zulässigkeit der Verwendung sehen manche Lizenzen auch weitere Verpflichtungen vor, z.B. Durchreichen der Lizenzbedingungen, Offenlegung der Verwendung, Zurverfügungstellung des Source Codes der Open Source Software, Nennung des Urheber.

Häufig kennen die Entwickler zwar das Konzept von Open Source Software, nicht jedoch die damit verbundenen Einschränkungen und Pflichten. Die Folgen sind in der Regel ein Verstoß gegen die Lizenzbedingungen und ein daraus resultierendes Verbot die Open Source Software zu verwenden.

Wie reduziere ich meine Risiken?

Zunächst sollte eine Bestandsaufnahme gemacht werden. Hierzu bieten sich Open Source Audits an, bei denen der Source Code der eigenen Software sowie aller verwendeter Open Source Komponenten gescannt wird. Hierdurch kann man sowohl offensichtlich verwendete Open Source Software als auch sogenannte Snipits finden, die in den eigenen Code kopiert wurden. Dabei sollte man auch die Open Source Software vollständig scannen, um eventuell hierein enthaltene Dritt-Komponenten zu finden.

Auf dem Markt gibt es verschiedene Tools, die den Scan unterstützen. Diese lassen sich teilweise auch in den eigenen Entwicklungsprozess einbinden. Hierdurch können problematische Entwicklungen frühzeitig entdeckt und beseitigt werden. Zudem erleichtern die Tools die Erstellung einer Bill of Materials (BoM), eine Aufstellung aller Übereinstimmungen mit Codeteilen, der Version der Open Source Software, der jeweiligen Downloadquelle und die anwendbaren Lizenzbedingungen.

Es bietet sich an unproblematische Lizenzen in Whitelists und problematische in Blacklists festzuhalten. Alle nicht aufgeführten Lizenzen müssten dann bei Bedarf überprüft werden.

Die zuständigen Mitarbeiter sollten sensibilisiert werden und bei externen Entwicklern entsprechende vertragliche Regelungen geschlossen werden.

Zudem sollte man die Maßnahmen zur Dokumentation in einem Compliance-Programm zusammenfassen.

Fazit

Die Verwendung von Open Source Software bringt Vorteile und Herausforderungen mit sich. Bei Auswahl der richtigen Komponenten und bedingungskonformen Einsatz ist sie jedoch häufig interessanter als kommerzielle Drittprodukte oder Eigenentwicklungen.

  • Twitter
  • LinkedIn