Hinweis: Das Streamen von Überwachungsprotokollen ist derzeit für GitHub Enterprise Server als Betaversion verfügbar. Änderungen sind vorbehalten.
Informationen zum Streamen von Überwachungsprotokollen
Zum Schutz deines geistigen Eigentums und zur Einhaltung von Vorschriften in deinem Unternehmen kannst du Streaming verwenden. Dabei werden Kopien von Überwachungsprotokolldaten gespeichert, und es wird Folgendes überwacht: * Zugriff auf Ihre Organisations- oder Repositoryeinstellungen
- Änderungen an Berechtigungen
- Hinzugefügte oder entfernte Benutzer*innen in einer Organisation, einem Repository oder einem Team
- Benutzerinnen, die zu Administratorinnen ernannt werden
- Änderungen an Berechtigungen einer GitHub App
Das Streamen von Überwachungsdaten bietet folgende Vorteile:
- Datenuntersuchung Du kannst gestreamte Ereignisse mithilfe deines bevorzugten Tools zum Abfragen großer Datenmengen untersuchen. Der Stream enthält sowohl Überwachungsereignisse als auch Git-Ereignisse für das gesamte Unternehmenskonto.
- Datenaufbewahrung Du kannst deine exportierten Überwachungsprotokolle und Git-Ereignisdaten solange wie erforderlich speichern.
Unternehmensinhaber*innen können Streams jederzeit einrichten oder löschen. Mit dem Stream werden die Überwachungsdaten und Git-Ereignisdaten für alle Organisationen in einem Unternehmen exportiert.
Hinweis: Alle Überwachungsprotokolle werden im JSON-Format gestreamt.
Einrichten des Überwachungsprotokollstreamings
Den Überwachungsprotokollstream auf GitHub Enterprise Server richtest du ein, indem du die Anweisungen für deinen Anbieter befolgst.
Einrichten des Streamings an Amazon S3
Zum Streamen von Überwachungsprotokollen an den S3-Endpunkt von Amazon musst du über einen Bucket und Zugriffsschlüssel verfügen. Weitere Informationen findest du unter Erstellen, Konfigurieren und Arbeiten mit Amazon S3-Buckets in der AWS-Dokumentation. Stelle zum Schutz deiner Überwachungsprotokolldaten sicher, dass der öffentliche Zugriff auf den Bucket blockiert ist.
Zum Einrichten des Überwachungsprotokollstreamings von GitHub benötigst du Folgendes:
- Den Namen deines Amazon S3-Buckets
- Die ID deines AWS-Zugriffsschlüssels
- Deinen geheimen AWS-Schlüssel
Informationen zum Erstellen oder Zugreifen auf deine Zugriffsschlüssel-ID und ihren geheimen Schlüssel findest du unter Deine AWS-Anmeldeinformationen in der AWS-Dokumentation.
-
Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
1. Klicke auf der Randleiste des Unternehmenskontos auf Einstellungen. 1. Wähle unter „ Einstellungen“ die Option Überwachungsprotokoll aus. -
Klicke unter „Überwachungsprotokoll“ auf Protokollstreaming. 1. Wähle das Dropdown Datenstrom konfigurieren aus, und klicke auf Amazon S3.
-
Konfiguriere die Streameinstellungen.
- Gib unter „Bucket“ den Namen des Buckets ein, an den du streamen möchtest. Beispiel:
auditlog-streaming-test
. - Gib unter „Zugriffsschlüssel-ID“ deine Zugriffsschlüssel-ID ein. Beispiel:
ABCAIOSFODNN7EXAMPLE1
. - Gib unter „Geheimer Schlüssel“ deinen geheimen Schlüssel ein. Beispiel:
aBcJalrXUtnWXYZ/A1MDENG/zPxRfiCYEXAMPLEKEY
.
- Gib unter „Bucket“ den Namen des Buckets ein, an den du streamen möchtest. Beispiel:
-
Zum Überprüfen, ob GitHub eine Verbindung mit dem Amazon S3-Endpunkt herstellen und in ihm schreiben kann, klicke auf Endpunkt überprüfen.
1. Nachdem du den Endpunkt erfolgreich überprüft hast, klicke auf Speichern.
Integrieren mit AWS CloudTrail Lake
Du kannst deine Überwachungsprotokolle aus GitHub Enterprise Server mit AWS-Aktivitätsprotokollen konsolidieren, indem du das Überwachungsprotokollstreaming in S3 mit AWS CloudTrail Lake integrierst. Weitere Informationen findest du in der Dokumentation zu AWS CloudTrail oder unter Integration von GitHub-Überwachungsprotokollen mit CloudTrail Lake im Repository aws-samples/aws-cloudtrail-lake-github-audit-log
.
Einrichten des Streamings an Azure Blob Storage
Bevor du in GitHub einen Stream einrichtest, musst du in Microsoft Azure ein Speicherkonto und einen Container erstellen. Informationen hierzu findest du in der Microsoft-Dokumentation unter Einführung in Azure Blob Storage.
Zum Konfigurieren des Streams in GitHub benötigst du die URL eines SAS-Tokens.
Führe im Microsoft Azure-Portal folgende Schritte durch:
- Klicke auf der Startseite auf Speicherkonten.
- Klicke unter „Name“ auf den Namen des Speicherkontos, das du verwenden möchtest.
- Klicke unter „Datenspeicher“ auf Container.
- Klicke auf den Namen des Containers, den du verwenden möchtest.
- Klicke in der linken Seitenleiste unter „Einstellungen“ auf Freigegebene Zugriffstoken.
- Wähle das Dropdownmenü Berechtigungen aus, wähle dann
Create
undWrite
aus, und heben die Auswahl für alle anderen Optionen auf. - Lege ein Ablaufdatum fest, das deiner Richtlinie für die Geheimnisrotation entspricht.
- Klicke auf SAS-Token und URL generieren.
- Kopiere den Wert des angezeigten Felds Blob-SAS-URL. Diese URL wird in GitHub verwendet.
Auf GitHub: 1. Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
-
Klicke unter „Überwachungsprotokoll“ auf Protokollstreaming.
-
Klicke auf Configure stream (Stream konfigurieren), und wähle Azure Blob Storage aus.
-
Gib auf der Konfigurationsseite die BLOB-SAS-URL ein, die du in Azure kopiert hast. Das Feld Container wird basierend auf der URL automatisch ausgefüllt.
-
Klicke auf Check endpoint (Endpunkt überprüfen), um sich zu vergewissern, dass GitHub eine Verbindung mit dem Azure Blob Storage-Endpunkt herstellen und in ihm schreiben kann.
-
Nachdem du den Endpunkt erfolgreich überprüft hast, klicke auf Speichern.
Einrichten des Streamings an Azure Event Hubs
In GitHub kannst du einen Stream erst einrichten, wenn du in Microsoft Azure über einen Event Hub-Namespace verfügst. Dann musst du im Namespace eine Event Hub-Instanz erstellen. Zum Einrichten des Streams benötigst du die Details dieser Event Hub-Instanz. Informationen hierzu findest du in der Microsoft-Dokumentation Schnellstart: Erstellen eines Event Hubs mithilfe des Azure-Portals.
du benötigst zwei Angaben zu deinem Event Hub: den Instanznamen und die Verbindungszeichenfolge.
Führe im Microsoft Azure-Portal folgende Schritte durch:
-
Verwende oben auf der Seite neben „Microsoft Azure“ das Suchfeld, um nach „Event Hubs“ zu suchen.
-
Klicke auf Event Hubs. Daraufhin werden die Namen deiner Event Hubs angezeigt.
-
Notiere dich den Namen des Event Hubs, auf den du streamen möchtest.
-
Klicke auf den erforderlichen Event Hub. Wähle anschließend im linken Menü Richtlinien für gemeinsamen Zugriff aus.
-
Wähle in der Liste mit den Richtlinien eine Richtlinie für den gemeinsamen Zugriff aus, oder erstelle eine neue Richtlinie.
-
Klicke auf die Schaltfläche rechts neben dem Feld Verbindungszeichenfolge – Primärschlüssel, um die Verbindungszeichenfolge zu kopieren.
Auf GitHub: 1. Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
-
Klicke unter „Überwachungsprotokoll“ auf Protokollstreaming.
-
Klicke auf Configure stream (Stream konfigurieren), und wähle Azure Event Hubs aus.
-
Gib auf der Konfigurationsseite Folgendes ein:
- Den Namen der Azure Event Hubs-Instanz.
- Verbindungszeichenfolge.
-
Klicke auf Check endpoint (Endpunkt überprüfen), um sich zu vergewissern, dass GitHub eine Verbindung mit dem Azure Event Hub-Endpunkt herstellen und in ihm schreiben kann.
-
Nachdem du den Endpunkt erfolgreich überprüft hast, klicke auf Speichern.
Einrichten des Streamings an Google Cloud Storage
Zum Einrichten des Streamings an Google Cloud Storage musst du in Google Cloud ein Dienstkonto mit den entsprechenden Anmeldeinformationen und Berechtigungen erstellen und anschließend in GitHub Enterprise Server mithilfe der Anmeldeinformationen des Dienstkontos für die Authentifizierung das Streamen von Überwachungsprotokollen konfigurieren.
-
Erstelle ein Dienstkonto für Google Cloud. Du musst keine Zugriffssteuerelemente oder IAM-Rollen für das Dienstkonto festlegen. Weitere Informationen findest du in der Google Cloud-Dokumentation zum Erstellen und Verwalten von Dienstkonten.
-
Erstelle einen JSON-Schlüssel für das Dienstkonto, und speichere den Schlüssel sicher. Weitere Informationen findest du in der Google Cloud-Dokumentation zum Erstellen und Verwalten von Dienstkontoschlüsseln.
-
Wenn du noch keinen Bucket erstellt hast, erstelle den Bucket. Weitere Informationen findest du in der Google Cloud-Dokumentation zum Erstellen von Storage-Buckets.
-
Weise dem Dienstkonto die Rolle „Storage Object Creator“ für den Bucket zu. Weitere Informationen findest du in der Google Cloud-Dokumentation zum Verwenden von Cloud IAM-Berechtigungen.
-
Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
1. Klicke auf der Randleiste des Unternehmenskontos auf Einstellungen. 1. Wähle unter „ Einstellungen“ die Option Überwachungsprotokoll aus. -
Klicke unter „Überwachungsprotokoll“ auf Protokollstreaming.
-
Klicke im Dropdownmenü „Configure stream“ (Stream konfigurieren) auf Google Cloud Storage.
-
Gib unter „Bucket“ den Namen deines Google Cloud Storage-Buckets ein.
-
Füge unter „JSON Credentials“ (JSON-Anmeldeinformationen) den gesamten Inhalt der Datei für den JSON-Schlüssel deines Dienstkontos ein.
-
Klicke auf Check endpoint (Endpunkt überprüfen), um sich zu vergewissern, dass GitHub eine Verbindung mit dem Google Cloud Storage-Bucket herstellen und in ihm schreiben kann.
-
Nachdem du den Endpunkt erfolgreich überprüft hast, klicke auf Speichern.
Einrichten des Streamings an Splunk
Zum Streamen von Überwachungsprotokollen an den HEC-Endpunkt (HTTP Event Collector) von Splunk musst du sicherstellen, dass der Endpunkt so konfiguriert ist, dass HTTPS-Verbindungen zulässig sind. Weitere Informationen findest du in der Splunk-Dokumentation unter Set up and use HTTP Event Collector in Splunk Web (Einrichten und Verwenden von HTTP Event Collector in Splunk Web).
-
Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
1. Klicke auf der Randleiste des Unternehmenskontos auf Einstellungen. 1. Wähle unter „ Einstellungen“ die Option Überwachungsprotokoll aus. -
Klicke unter „Überwachungsprotokoll“ auf Protokollstreaming.
-
Klicke auf Configure stream (Stream konfigurieren), und wähle Splunk aus.
-
Gib auf der Konfigurationsseite Folgendes ein:
-
Die Domäne, in der die Anwendung gehostet wird, an die gestreamt werden soll.
Wenn du Splunk Cloud verwendest, muss
Domain
aufhttp-inputs-<host>
festgelegt sein, wobeihost
die Domäne ist, die du in Splunk Cloud verwendest. Beispiel:http-inputs-mycompany.splunkcloud.com
. -
Der Port, auf dem die Anwendung Daten empfängt.
Wenn du Splunk Cloud verwendest, muss
Port
auf443
festgelegt sein, sofern du die Portkonfiguration nicht geändert hast. Wenn du die kostenlose Testversion von Splunk Cloud verwendest, mussPort
auf8088
festgelegt sein. -
Ein Token, das von GitHub verwendet werden kann, um die Anwendung eines Drittanbieters zu authentifizieren.
-
-
Lass das Kontrollkästchen Enable SSL verification (SSL-Überprüfung aktivieren) aktiviert.
Überwachungsprotokolle werden immer als verschlüsselte Daten übertragen. Wenn diese Option aktiviert ist, wird jedoch das SSL-Zertifikat deiner Splunk-Instanz beim Bereitstellen von Ereignissen durch GitHub überprüft. Durch die SSL-Überprüfung wird sichergestellt, dass Ereignisse sicher an deinen URL-Endpunkt übermittelt werden. Du kannst die Auswahl dieser Option deaktivieren, aber es wird empfohlen, die SSL-Überprüfung aktiviert zu lassen.
-
Klicke auf Check endpoint (Endpunkt überprüfen), um sich zu vergewissern, dass GitHub eine Verbindung mit dem Splunk-Endpunkt herstellen und in ihm schreiben kann.
1. Nachdem du den Endpunkt erfolgreich überprüft hast, klicke auf Speichern.
Löschen des Überwachungsprotokollstreams
-
Klicke oben rechts auf GitHub Enterprise Server auf dein Profilfoto und dann auf Unternehmenseinstellungen.
1. Klicke auf der Randleiste des Unternehmenskontos auf Einstellungen. 1. Wähle unter „ Einstellungen“ die Option Überwachungsprotokoll aus. -
Klicke unter „Überwachungsprotokoll“ auf Protokollstreaming.
-
Klicke auf Delete stream (Stream löschen).
-
Eine Bestätigungsmeldung wird angezeigt. Klicke auf Delete stream (Stream löschen), um den Vorgang zu bestätigen.