Hinweis
Die Open Source-Lizenzcompliance befindet sich in Öffentliche Vorschau und kann geändert werden.
Voraussetzungen
Stellen Sie vor der Konfiguration von Lizenzrichtlinien folgendes sicher:
- Ihre Organisation verfügt über GitHub Code Security
- Sie haben Zugriff auf die Verwaltung von Unternehmensrichtlinien und Regelsätzen
- Abhängigkeitsdiagramm ist für Repositorys aktiviert, die Sie auswerten möchten
Informationen zur Lizenzcompliance
Mit der Open Source-Lizenzcompliance können Sie eine Richtlinie definieren, die angibt, welche Lizenzen Ihre Abhängigkeiten verwenden dürfen.
Wenn die Richtlinie mit Regelsätzen durchgesetzt wird, wertet GitHub Pull Requests aus, die Paketmanifeste ändern, überprüft direkte und transitive Abhängigkeiten und vergleicht erkannte Lizenzen mit Ihrer Richtlinie. Pullanforderungen mit nicht kompatiblen Abhängigkeiten bleiben blockiert, bis Verstöße aufgelöst werden.
Verstöße werden in der Regel behoben durch:
- Aktualisieren der Pullanforderung, um kompatible Abhängigkeiten zu verwenden
- Genehmigen einer Ausnahme für ein Paket
- Aktualisieren der Richtlinie, um eine Lizenz ggf. zuzulassen
Erstellen einer Lizenzrichtlinie
- Navigieren Sie zu Ihrem Unternehmen. Beispielsweise auf der Seite Unternehmen in GitHub.com.
- Klicken Sie oben auf der Seite auf "Richtlinien".
- Klicken Sie in der Seitenleiste auf Lizenzkonformität.
- Klicken Sie auf "Standardrichtlinie".
- Klicken Sie auf der Seite "Lizenzrichtlinie bearbeiten " auf " Lizenzen hinzufügen ", und wählen Sie "Aus Liste auswählen" aus.
- Wählen Sie in der Lizenzauswahl die Lizenzen aus, die Sie zulassen möchten. Die Lizenzen in dieser Liste werden basierend auf ihrem allgemeinen Risikoniveau für die Verwendung in Unternehmensumgebungen kategorisiert, aber dies ist rein informativ und stellt keine rechtliche Beratung dar. Stimmen Sie sich bei Richtlinienfragen immer mit der Rechtsabteilung Ihrer Organisation ab.
- Speichern Sie die Änderungen.
Wenn Sie über eine lizenzrichtlinie aus einem anderen Tool verfügen, können Sie sie alternativ als Liste von SPDX-Ausdrücken importieren.
- Klicken Sie auf der Seite "Lizenzrichtlinie bearbeiten " auf " Lizenzen hinzufügen ", und wählen Sie "Manuelle Eingabe" aus.
- Geben Sie einen oder mehrere SPDX-Lizenz-IDs in einer neuen Zeile ein.
- Speichern Sie die Änderungen.
Die Lizenzen, die Sie hinzufügen, bilden Ihre Basisrichtlinie. Sie können später Ausnahmen auf Paketebene hinzufügen, wenn Warnungen behandelt werden.
Konfigurieren des Zugriffs für Enterprise Open Source License Managers
- Navigieren Sie zu Ihrem Unternehmen. Beispielsweise auf der Seite Unternehmen in GitHub.com.
- Klicken Sie oben auf der Seite auf "Personen".
- Klicken Sie in der linken Randleiste auf Enterprise-Rollen.
- Klicken Sie auf Rollenzuweisungen.
- Klicken Sie auf "Rolle zuweisen".
- Wählen Sie die Enterprise Open Source License Manager-Rolle aus.
- Wählen Sie einen Benutzer oder ein Team aus, dem die Rolle zugewiesen werden soll.
- Klicken Sie auf "Rolle zuweisen".
Durch das Zuweisen dieser Rolle abonnieren Sie Prüfer auch für Benachrichtigungen über Anträge auf Ablehnung, damit sie schnell darauf reagieren können.
Optional benutzerdefinierte Eigenschaften zum Steuern des Rollouts pro Repository verwenden
Wenn Sie ein graduelles Rollout wünschen, verwenden Sie eine benutzerdefinierte Repositoryeigenschaft, um zu steuern, ob sich jedes Repository inaktiv, ausgewertet oder im aktiven Erzwingungsmodus befindet.
-
Navigieren Sie auf GitHub zur Hauptseite der Organisation.
-
Klicke unter dem Organisationsnamen auf Settings. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü die Option Einstellungen aus.

-
Klicke auf der linken Randleiste im Abschnitt „Code, planning, and automation“ auf Repository und anschließend auf Custom properties.

-
Erstellen Sie eine benutzerdefinierte Repositoryeigenschaft mit Einfachauswahl, z. B.
open_source_license_compliance. -
Fügen Sie Werte für
inactive,evaluateundactive. -
Legen Sie den Standardwert auf
inactive. -
Entscheiden Sie, wer den Eigenschaftswert ändern kann.
-
Weisen Sie Repositories basierend auf ihrer Rolloutphase Eigenschaftswerte zu.
Richtlinien in Pull Requests mit Regelsätzen erzwingen
Es wird empfohlen, zwei Regelsätze zu erstellen, eine für den Auswertungsmodus und eine für den aktiven Modus. Wenn Sie benutzerdefinierte Eigenschaften zum Steuern des Rollouts erstellt haben, können Sie diese Eigenschaften hier als Ziel festlegen.
-
Wechseln Sie zur Seite „Rulesets“ für den Geltungsbereich, in dem die Durchsetzung erfolgen soll.
-
Erstellen Sie einen Regelsatz für Branches.
-
Legen Sie unter dem Namen des Regelsatzes den Erzwingungsstatus fest:
- Wählen Sie für Ihren ersten Regelsatz Auswerten aus.
- Wählen Sie für das zweite Regelet "Aktiv" aus.
-
Wählen Sie aus, wie Repositorys als Ziel verwendet werden:
- Wenn Sie benutzerdefinierte Eigenschaften verwenden, adressieren Sie anhand von
open_source_license_compliance:- Für den Regelsatz für den Auswertungsmodus: Ziel-Repositorys, bei denen der Eigenschaftswert
evaluateist. - Wählen Sie für den Regelsatz des aktiven Modus die Repositorys aus, bei denen der Eigenschaftswert
activeist.
- Für den Regelsatz für den Auswertungsmodus: Ziel-Repositorys, bei denen der Eigenschaftswert
- Wenn Sie keine benutzerdefinierten Eigenschaften verwenden, wählen Sie Repositorys anhand eines Repository-Musters oder durch explizite Repository-Auswahl aus.
- Wenn Sie benutzerdefinierte Eigenschaften verwenden, adressieren Sie anhand von
-
Aktivieren Sie Ergebnisse zur Lizenzkonformität vor dem Zusammenführen anfordern.
-
Speichern Sie die Änderungen.
Weitere Informationen zu Regelets finden Sie unter Informationen zu Regelsätzen und Erstellen von Regelsätzen für Repositorys in deiner Organisation.
Test der Durchsetzung von Richtlinien
- Öffnen Sie in einem gezielten Repository eine Pullanforderung, die Abhängigkeitsmanifeste ändert.
- Vergewissern Sie sich, dass Anmerkungen zu Pull Requests die Ergebnisse der Lizenzkonformitätsprüfung anzeigen.
- Wenn eine Abhängigkeit gegen die Richtlinie verstößt, überprüfen Sie die generierte Warnung, und fordern Sie die Kündigung an, wenn eine Ausnahme erforderlich ist.
Wenn Verstöße nicht aufgelöst werden, bleibt die Pullanforderung blockiert.
Überprüfen und Behandeln von Ausnahmeanforderungen
- Öffnen Sie als Enterprise Open Source License Manager die Liste der ausstehenden Lizenzwarnungsanforderungen in Ihren Unternehmenssicherheitsansichten.
- Überprüfen Sie jede Anforderung, und entscheiden Sie, ob sie verweigert oder genehmigt werden soll.
- Wenn Sie dies genehmigen, wählen Sie aus, ob die Ausnahme auf ein Paket, eine Lizenz oder ein Paketmuster angewendet werden soll.
- Wählen Sie aus, ob die Ausnahme auf Repositorybereich oder Unternehmensbereich angewendet werden soll.
- Speichern Sie die Ausnahme.
Nachdem eine Anforderung genehmigt wurde, wird die Warnung geschlossen, und die Pullanforderung wird aufgehoben, solange keine anderen erforderlichen Prüfungen fehlschlagen.
Überprüfen einer effektiven Richtlinie für ein Repository
-
Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
-
Klicke unter dem Repositorynamen auf Settings. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü die Option Einstellungen aus.

-
Klicken Sie in der Randleiste unter "Sicherheit" auf "Lizenzrichtlinie".
-
Überprüfen Sie die kombinierte Richtlinie und den für dieses Repository geltenden Ausnahmeregelsatz.
-
Aktualisieren Sie die Richtlinie auf Unternehmensebene oder auf Repositoryebene nach Bedarf.