Ist Compliance immer kompliziert?

Aus der Praxis: Die Einführung eines Open-Source-Compliancemanagements im Unternehmen

Von Sabine Brumme und Claudia Weinkraut

Beitrag als PDF (Download)

Einleitung

Ein allumfassendes Compliancemanagement stellt Unternehmen heute vor immer größer werdende Herausforderungen. Dabei ist das Einhalten von Regelungen nichts Neues, neu ist jedoch, dass Compliance in immer mehr Bereichen eine zunehmende Bedeutung erlangt.

So müssen Unternehmen, die sich mit Softwareentwicklung beschäftigen, besonders im Hinblick auf die Lizenzbedingungen von Free- und Open-Source-Software (FOSS) „compliant“, also regelkonform, sein. Als simple Worthülse sollte man den Begriff nicht abtun, denn ein fehlendes Compliancemanagement kann schwerwiegende Folgen für ein Unternehmen nach sich ziehen: Es drohen Schadensersatzforderungen oder im schlimmsten Fall die Offenlegung des eigenen Quellcodes.

Die Nutzung von Open-Source-Software (OSS) ist mittlerweile Standard in der Softwareentwicklung: Frei verfügbar als Download, spart sie Zeit und Geld und stellt somit ein attraktives Modell dar. Der Begriff lässt vermuten, dass die Software in jeder Hinsicht „frei“ ist. Dass mit der kostenlosen Nutzung auch die Einhaltung von Lizenzbedingungen verbunden ist, wird häufig zu wenig bis gar nicht beachtet. Dabei ist es unabdingbar, die Einhaltung der Lizenzbedingungen zu überwachen und zu dokumentieren.

Was ist Open-Source-Software?

Unter OSS versteht man Software, die grundsätzlich frei verfügbar, jedoch nur mit Restriktionen verwendbar ist. Die Open Source Initiative (https://opensource.org/) knüpft gewisse Voraussetzungen an die Einordnung als OSS. Hierzu gehört neben weiteren Anforderungen, die von der Open Source Initiative veröffentlicht wurden, dass die Lizenz die Distribution nicht einschränkt und hierfür keine Lizenzgebühr verlangt, der Source-Code verfügbar ist oder verfügbar gemacht wird, Änderungen der Software zulässig sind und diese Änderungen auch unter denselben Bedingungen vermarktet werden dürfen.

Auf dem Markt haben sich verschiedene Arten von Softwarelizenzen etabliert, die teilweise auch mit kommerziellen Produkten, teilweise nur mit OSS, die unter kompatiblen Lizenzen zur Verfügung gestellt wurde, kombiniert werden oder in diese einfließen können. Letzteres führt zu dem sogenannten viralen Effekt oder auch „Copyleft“. Hierunter versteht man, dass abgewandelte Werke, die auf der OSS basieren oder diese beinhalten, nur unter denselben oder kompatiblen Open-Source-Bedingungen weitergegeben werden dürfen.

Risiken bei der kommerziellen Nutzung

Da OSS sehr häufig von Unternehmen eingesetzt wird, stellt sich für diese die Frage, welche Risiken hierdurch entstehen. Für Unternehmen, die die OSS lediglich intern für eigene Zwecke einsetzen, bestehen in der Regel keine Beschränkungen, die die Nutzung verhindern.

Stellt man die OSS jedoch Dritten zur Verfügung oder setzt diese in seinen kommerziellen Angeboten ein, kann das je nach zugrundeliegender Lizenz (insbesondere im Fall von Copyleft-Lizenzen) zu Einschränkungen der Nutzbarkeit führen. So kann zum Beispiel eine Software, in die eine Komponente unter der GNU General Public License (GNU GPL) integriert ist, nicht kommerziell (also gegen Zahlung einer Lizenzgebühr) vermarktet werden. Die Affero General Public License (AGPL) geht sogar noch weiter und enthält Restriktionen für die Nutzung in kommerziellen Cloudangeboten. Auf der anderen Seite gibt es OSS unter Lizenzen, die sich ohne große Probleme in kommerzielle Software integrieren lassen. Insofern ist eine sorgfältige Auswahl dringend notwendig.

Zu beachten ist dabei auch, dass sich viele Programmierer über die rechtlichen Folgen nicht im Klaren sind und daher OSS oder auch Teile davon gerne in der Programmierung verwenden. Die Verwendung von OSS muss daher mit angemessenen Maßnahmen gesteuert werden.

Open-Source-Compliancemanagement

Ein Open-Source-Compliancemanagement kann aus mehreren Komponenten bestehen.

Eine Lizenz-Policy sollte die praktische Umsetzung eines Compliancemanagements festlegen, indem sie den Einsatz von OSS beschreibt und definiert, welche Abteilungen zu welchen Zeitpunkten in die Prozesse involviert sind.

Der gesamte Open-Source-Review-Prozess sollte dem Programmmanager, dem Produktmanager, den Entwicklern und allen anderen, die mit FOSS arbeiten, geläufig sein.

Bis zur eigentlichen Auslieferung des Quellcodes bieten sich für die Unternehmen mehrere Zeitpunkte, um ein solches Compliancemanagement durchzuführen:

Eine Möglichkeit ist, jede OSS bereits vor der Nutzung und des Einbaus in den eigens entwickelten Code auf Probleme und Inkompatibilität hin zu prüfen: Ist der eigene Code dadurch in Gefahr, dass die Open-Source-Lizenz nur eine Weitergabe unter denselben Lizenzbedingungen gestattet? Können Lizenzbedingungen die proprietäre Vermarktung eventuell behindern? Bei Lizenzproblemen kann dann bereits der Einbau der OSS in den eigenen Code gestoppt werden.

Eine andere Möglichkeit ist, den schon fertigen Code auf die genutzten Lizenzen hin in einem Quellcodeaudit zu scannen und problematische Komponenten zu ersetzen.

Ablauf von Quellcodeaudits

Beide Varianten werden durch verschiedene Codescanningtools unterstützt, die in einem Quellcodeaudit den gesamten Code der Software scannen.

Bei einem Quellcodeaudit wird angezeigt, welcher Teil des Codes mit dem in der Datenbank des Scanningtools vorhandenen Code zusammenpasst. Durch diese sogenannten Code-Matches kann die ursprüngliche Quelle des Codes bestimmt und erkannt werden, unter welcher Lizenz dieser Teil des Codes veröffentlicht wurde. Dies bleibt auch dann möglich, wenn der Header des Codes, der die Metadaten der Komponente enthält, entfernt wurde und somit aus dem Codestück selbst nicht mehr ersichtlich ist, woher es stammt.

Aber nicht jeder Match muss eine urheberrechtlich relevante Handlung darstellen. Dies muss im Einzelfall geprüft werden und erfordert sowohl technisches als auch rechtliches Know-how. Der Reviewer, also derjenige, der die Ergebnisse nach dem Scannen überprüft, ist dafür verantwortlich, die urheberrechtlich relevanten Verletzungen herauszuarbeiten. Da das Internet mittlerweile voll von OSS ist, können Code-Matches angezeigt werden, die selbst bereits eine urheberrechtlich relevante Handlung darstellen, sich also als Kopie des Originals herausstellen. Nur die Zuordnung zur ursprünglichen Quelle und dem damit verbundenen ursprünglichen Copyright wird den Lizenzanforderungen der OSS gerecht.

Als Ergebnis eines Codescans erhält man die Bill of Materials (BoM), eine Liste aller Übereinstimmungen mit Codeteilen unter Angabe der Downloadquelle, der jeweiligen Version der Komponente und der zugehörigen Lizenz.

Training der Awareness

Sehr wichtiger Bestandteil eines jeden Open-Source-Compliancemanagements ist die Schulung der betroffenen Mitarbeiter. Hierzu zählen sowohl die Entwickler als auch das Management, das die Entwicklung plant und überwacht. Gerade das Verständnis der involvierten Abteilungen ist notwendig, um die erforderliche Unterstützung zu erfahren. Nur wenn alle miteinander arbeiten, kann ein solches Management Erfolg haben und auch in die tägliche Praxis umgesetzt werden. Dabei sollten die Schulungen sowohl technisches als auch rechtliches Verständnis miteinander verknüpfen und alle Parteien damit ansprechen.

Umsetzung in der Praxis

Häufig enthalten OSS-Lizenzen Verpflichtungen, deren Umsetzung bereits in der Entwicklung der Software stattfinden muss.

So ist in vielen OSS-Lizenzen eine Klausel enthalten, die vorgibt, die vorgenommenen Änderungen zu markieren. Darüber hinaus muss in der Regel der Urheber der OSS im Quellcode genannt werden, und die Lizenzbedingungen der OSS-Lizenz müssen zur Verfügung gestellt werden. Einzelne Lizenzen sehen auch noch weitere Bedingungen vor.

Über all diese Bedingungen müssen Entwickler aufgeklärt werden und bereits bei der Entwicklung Vorgaben beachten, die den Lizenzbedingungen gerecht werden.

Fazit

Ein OSS-Compliancemanagement stellt keine komplizierte, unüberwindbare Herausforderung für ein Unternehmen dar. Es erfordert jedoch eine Dokumentation aller relevanten Handlungen der verschiedenen Parteien und vor allem Verständnis für die Gefahren, denen sich das Unternehmen bei Nichtbeachtung aussetzt.

Sabine.brumme@bearingpoint.com

claudia.weinkraut@bearingpoint.com