Informationen zum externen Speicher für GitHub Actions
GitHub Actions verwendet externen Blobspeicher, um durch Workflowausführungen generierte Daten zu speichern. Gespeicherte Daten umfassen Workflowprotokolle, Caches, und von Benutzer*innen hochgeladene Buildartefakte. Weitere Informationen findest du unter Erste Schritte mit GitHub Actions für GitHub Enterprise Server.
Es gibt zwei Optionen zum Konfigurieren von GitHub Enterprise Server, um eine Verbindung mit deinem externen Speicheranbieter herzustellen:
- OpenID Connect (OIDC)
- Herkömmliche, auf Anmeldeinformationen basierende Authentifizierung mithilfe von Geheimnissen
Es wird empfohlen, OIDC nach Möglichkeit zu verwenden, da du keine vertraulichen und langlebigen Anmeldeinformationsgeheimnisse für deinen Speicheranbieter erstellen oder verwalten musst und so riskierst, dass sie verfügbar gemacht werden. Nach dem Definieren einer Vertrauensstellung mit OIDC stellt dein Cloudspeicheranbieter automatisch kurzlebige Zugriffstoken für deine GitHub Enterprise Server-Instanz aus, die automatisch ablaufen.
Voraussetzungen
Stelle vor dem Aktivieren von GitHub Actions sicher, dass du die folgenden Schritte ausgeführt hast:
-
Erstellen deines Azure-Speicherkontos zum Speichern von Workflowdaten. GitHub Actions speichert seine Daten als Blockblobs, und zwei Speicherkontotypen werden unterstützt:
-
Ein allgemeines Speicherkonto (auch bekannt als
general-purpose v1
odergeneral-purpose v2
) mit der Standard-Leistungsstufe.Warnung: Die Verwendung der Premium-Leistungsstufe mit einem allgemeinen Speicherkonto wird nicht unterstützt. Die Standard-Leistungsstufe muss beim Erstellen des Speicherkontos ausgewählt werden und kann später nicht geändert werden.
-
Ein BlockBlobStorage-Speicherkonto, das die Premium-Leistungsstufe verwendet.
Weitere Informationen zu Azure-Speicherkontotypen und Leistungsstufen findest du in der Azure-Dokumentation.
-
-
Überprüfe die Hardwareanforderungen für GitHub Actions. Weitere Informationen findest du unter Erste Schritte mit GitHub Actions für GitHub Enterprise Server.
-
TLS muss für die Domäne von Ihre GitHub Enterprise Server-Instance konfiguriert sein. Weitere Informationen findest du unter TLS konfigurieren.
Hinweis: Es wird dringend empfohlen, TLS für GitHub Enterprise Server mit einem Zertifikat zu konfigurieren, das von einem vertrauenswürdigen Aussteller signiert ist. Ein selbst signiertes Zertifikat kann zwar funktionieren, erfordert jedoch zusätzliche Konfiguration für deine selbstgehosteten Runner und wird für Produktionsumgebungen nicht empfohlen.
-
Wenn du einen HTTP-Proxyserver auf Ihre GitHub Enterprise Server-Instance konfiguriert hast:
-
Du musst der HTTP-Proxyausschluss-Liste
.localhost
und127.0.0.1
hinzufügen. -
Wenn dein externer Speicherort nicht routingfähig ist, musst du der Ausschlussliste auch die URL zu deinem externen Speicher hinzufügen.
Weitere Informationen zum Ändern deiner Proxyeinstellungen findest du unter Konfigurieren eines ausgehenden Webproxyservers.
-
Wenn du OIDC für die Verbindung mit deinem Speicheranbieter verwendest, musst du die folgenden OIDC-Tokendienst-URLs für deine GitHub Enterprise Server-Instanz für das öffentliche Internet verfügbar machen:
https://HOSTNAME/_services/token/.well-known/openid-configuration https://HOSTNAME/_services/token/.well-known/jwks
Dadurch wird sichergestellt, dass der Speicheranbieter deine GitHub Enterprise Server-Instanz zur Authentifizierung kontaktieren kann.
Aktivieren von GitHub Actions mit Azure Blob Storage mithilfe von OIDC (empfohlen)
Um GitHub Enterprise Server für die Verwendung von OIDC mit einem Azure-Speicherkonto zu konfigurieren, müssen Sie zunächst eine Microsoft Entra ID-Anwendung (früher bekannt als Azure AD) mit OIDC-Anmeldeinformationen registrieren, dann Ihr Speicherkonto konfigurieren und schließlich GitHub Enterprise Server für den Zugriff auf den Speichercontainer mithilfe der Entra ID konfigurieren.
1. Registrieren Sie eine Entra ID-Anwendung
-
Melden Sie sich beim Microsoft Entra Admin Center an.
-
Registrieren Sie eine neue App in Entra ID. Weitere Informationen finden Sie unter Schnellstart: Registrieren einer Anwendung mit der Microsoft Identity Platform auf Microsoft Learn.
-
Notieren Sie sich die Werte für „Anwendungs-ID (Client)“ und „Verzeichnis-ID (Mandant)“ unter „Essentials“ in Ihrer Entra ID-Anwendung. Diese Werte werden später verwendet.
-
Klicken Sie in Ihrer Entra ID-Anwendung unter „Verwalten“ auf Zertifikate und Geheimnisse, wählen Sie die Registerkarte Verbundanmeldeinformationen aus, und klicken Sie dann auf Anmeldeinformationen hinzufügen.
-
Gib die folgenden Details für die Anmeldeinformationen ein:
-
Wähle für „Szenario mit Verbundanmeldeinformationen“ die Option Anderer Aussteller aus.
-
Gib für „Aussteller“
https://HOSTNAME/_services/token
ein, wobeiHOSTNAME
der öffentliche Hostname für deine GitHub Enterprise Server-Instanz ist. Beispiel:https://my-ghes-host.example.com/_services/token
. -
Gib für „Antragstellerbezeichner“ den öffentlichen Hostnamen für deine GitHub Enterprise Server-Instanz ein. Beispiel:
my-ghes-host.example.com
.Hinweis: Der Antragstellerbezeichner darf nur den Hostnamen von deine GitHub Enterprise Server-Instanz aufweisen und darf das Protokoll nicht enthalten.
-
Gib für „Name“ einen Namen für die Anmeldeinformationen ein.
-
Klicke auf Hinzufügen.
-
2. Konfigurieren eines Speicherkontos
-
Navigieren Sie im Microsoft Azure-Portal zu Ihrem Speicherkonto.
-
Klicke auf Zugriffssteuerung (IAM) , dann auf Hinzufügen und anschließend auf Rollenzuweisung hinzufügen.
-
Wähle für die Rolle „Besitzer von Speicherblobdaten“ aus, und klicke dann auf Weiter.
-
Klicken Sie für die Mitglieder auf Mitglieder auswählen, und suchen Sie dann nach dem Namen der zuvor erstellten Entra ID-Anwendung, und wählen Sie diese aus. Klicke auf Auswählen.
-
Klicke auf Überprüfen + zuweisen, überprüfe die Rollenzuweisung, und klicke dann erneut auf Überprüfen + zuweisen.
-
Klicke im linken Menü unter „Einstellungen“ auf Endpunkte.
-
Notiere dir den Wert für „Blobdienst“ unter „Blobdienst“, insbesondere das Suffix für den Blobendpunkt. Dies ist der Wert nach
https://<storageaccountname>.blob
. In der Regel entspricht diescore.windows.net
, kann jedoch in Abhängigkeit von deiner Azure-Region oder deinem Kontotyp variieren.Wenn deine Blobdienst-URL beispielsweise
https://my-storage-account.blob.core.windows.net
lautet, istcore.windows.net
das Blobendpunktsuffix.Notiere dir den Speicherkontonamen und das Blobendpunktsuffix, da diese Werte später verwendet werden.
3. Konfigurieren von GitHub Enterprise Server zum Herstellen einer Verbindung mit Entra ID mithilfe von OIDC
-
Klicke in einem Verwaltungskonto auf GitHub Enterprise Server und dann in der rechten oberen Ecke einer beliebigen Seite auf „“.
-
Wenn du dich nicht bereits auf der Seite „Websiteadministrator“ befindest, klicke in der oberen linken Ecke auf Websiteadministrator.
-
Wähle auf der Randleiste „ Websiteadministrator“ die Option Verwaltungskonsole aus.
-
Klicke auf der Randleiste unter „Einstellungen“ auf Aktionen.
-
Wähle unter „GitHub Actions“ die Option GitHub Actions aktivieren aus.
-
Klicke unter „Artefakt- und Protokollspeicher“ neben „Azure Blob Storage“ auf Einrichten.
-
Wähle unter „Authentifizierung“ die Option OpenID Connect (OIDC) aus, und gib die Werte für den Speicher ein, die du dir in den vorherigen Schritten notiert hast:
- Entra ID-Mandanten-ID
- Entra ID-Client-ID
- Azure-Speicherkontoname
- Azure-Blobendpunktsuffix 1. Klicke auf die Schaltfläche Speichereinstellungen testen, um deine Speichereinstellungen zu überprüfen.
Wenn bei der Überprüfung der Speichereinstellungen Fehler auftreten, überprüfe die Einstellungen mit dem Speicheranbieter, und versuche es erneut.
-
Klicke auf der Randleiste unter „Einstellungen“ auf Einstellungen speichern.
Hinweis: Durch das Speichern von Einstellungen in der Verwaltungskonsole werden Systemdienste neu gestartet, was zu einer für den Benutzer feststellbaren Downtime führen könnte.
-
Warten Sie auf den Abschluss der Konfigurationsausführung.
Aktivieren von GitHub Actions mit Azure Blob Storage mithilfe einer Verbindungszeichenfolge
-
Klicke in einem Verwaltungskonto auf GitHub Enterprise Server und dann in der rechten oberen Ecke einer beliebigen Seite auf „“.
-
Wenn du dich nicht bereits auf der Seite „Websiteadministrator“ befindest, klicke in der oberen linken Ecke auf Websiteadministrator.
-
Wähle auf der Randleiste „ Websiteadministrator“ die Option Verwaltungskonsole aus.
-
Klicke auf der Randleiste unter „Einstellungen“ auf Aktionen.
-
Wähle unter „GitHub Actions“ die Option GitHub Actions aktivieren aus.
-
Klicke unter „Artefakt- und Protokollspeicher“ neben „Azure Blob Storage“ auf Einrichten.
-
Wähle unter „Authentifizierung“ die Option Basierend auf Anmeldeinformationen aus, und gib die Verbindungszeichenfolge deines Azure-Speicherkontos ein. Weitere Informationen zum Abrufen der Verbindungszeichenfolge für dein Speicherkonto findest du in der Azure-Dokumentation.
-
Klicke auf die Schaltfläche Speichereinstellungen testen, um deine Speichereinstellungen zu überprüfen.
Wenn bei der Überprüfung der Speichereinstellungen Fehler auftreten, überprüfe die Einstellungen mit dem Speicheranbieter, und versuche es erneut.
-
Klicke auf der Randleiste unter „Einstellungen“ auf Einstellungen speichern.
Hinweis: Durch das Speichern von Einstellungen in der Verwaltungskonsole werden Systemdienste neu gestartet, was zu einer für den Benutzer feststellbaren Downtime führen könnte.
-
Warten Sie auf den Abschluss der Konfigurationsausführung.
Nächste Schritte
Nachdem die Konfigurationsausführung erfolgreich abgeschlossen wurde, werden GitHub Actions für Ihre GitHub Enterprise Server-Instance aktiviert. Informationen zu den nächsten Schritten, z. B. das Verwalten von GitHub Actions-Zugriffsberechtigungen und Hinzufügen selbstgehosteter Runner findest du unter Erste Schritte mit GitHub Actions für GitHub Enterprise Server.