Verwalten verschlüsselter Geheimnisse
Geheimnisse sind verschlüsselte Umgebungsvariablen, die Sie erstellen können, um Token, Anmeldeinformationen oder andere Arten vertraulicher Informationen zu speichern, die Ihre GitHub Actions-Workflows und -Aktionen nutzen. Nach der Erstellung können sie in den Workflows und Aktionen verwendet werden, die Zugriff auf die Organisation, das Repository oder die Repositoryumgebung haben, wo sie gespeichert sind.
In diesem Abschnitt lernen Sie die verschiedenen Tools und Strategien kennen, die Ihnen in GitHub Enterprise Cloud und GitHub Enterprise Server zur Verfügung stehen, um die Verwendung von verschlüsselten Geheimnissen zu verwalten. Außerdem wird erläutert, wie Sie auf verschlüsselte Geheimnisse in Ihren Workflows und Aktionen zugreifen.
Verwalten verschlüsselter Geheimnisse auf Organisationsebene
Das Erstellen verschlüsselter Geheimnisse auf Organisationsebene zum Speichern vertraulicher Informationen ist eine hervorragende Möglichkeit, die Sicherheit dieser Informationen zu gewährleisten und gleichzeitig den Verwaltungsaufwand in Ihrem Unternehmen zu minimieren.
Angenommen, einige Entwickler, die Workflows in Ihrer GitHub Organisation schreiben, benötigen die Anmeldeinformationen, um Code in einigen ihrer Workflows in der Produktion bereitzustellen. Um die Freigabe dieser vertraulichen Informationen zu vermeiden, können Sie ein verschlüsseltes Geheimnis erstellen, das die Anmeldeinformationen auf Organisationsebene enthält. Auf diese Weise können die Anmeldeinformationen in den Workflows verwendet werden, ohne sie offenzulegen.
Um ein Geheimnis auf Organisationsebene zu erstellen, navigieren Sie zu den Einstellungen Ihrer Organisation, und wählen Sie dann in der Seitenleiste Geheimnisse und Variablen > Aktionen > Neues Organisationsgeheimnis aus. Geben Sie auf dem angezeigten Bildschirm einen Namen und einen Wert ein, und wählen Sie eine Repositoryzugriffsrichtlinie für Ihr Geheimnis aus:
Die Zugriffsrichtlinie wird nach dem Speichern unterhalb des Geheimnisses in der Geheimnisliste angezeigt:
Sie können Aktualisieren auswählen, um weitere Details zu den konfigurierten Berechtigungen für Ihr Geheimnis zu erhalten.
Verwalten verschlüsselter Geheimnisse auf Repositoryebene
Wenn Sie ein verschlüsseltes Geheimnis für ein bestimmtes Repository benötigen, können Sie mit GitHub Enterprise Cloud und GitHub Enterprise Server auch Geheimnisse auf Repositoryebene erstellen.
Um ein Geheimnis auf Repositoryebene zu erstellen, navigieren Sie zu den Einstellungen für Ihr Repository, und wählen Sie in der Seitenleiste Geheimnisse und Variablen > Aktionen > Neues Repositorygeheimnis aus. Geben Sie auf dem angezeigten Bildschirm einen Namen und einen Wert für Ihr Geheimnis ein:
Zugreifen auf verschlüsselte Geheimnisse in Aktionen und Workflows
In Workflows
Um auf ein verschlüsseltes Geheimnis in einem Workflow zuzugreifen, müssen Sie den secrets
-Kontext in Ihrer Workflowdatei verwenden. Beispiel:
steps:
- name: Hello world action
with: # Set the secret as an input
super_secret: ${{ secrets.SuperSecret }}
env: # Or as an environment variable
super_secret: ${{ secrets.SuperSecret }}
In Aktionen
Um in einer Aktion auf ein verschlüsseltes Geheimnis zuzugreifen, müssen Sie das Geheimnis als input
-Parameter in der action.yml
-Metadatendatei angeben. Beispiel:
inputs:
super_secret:
description: 'My secret token'
required: true
Wenn Sie auf das verschlüsselte Geheimnis im Code Ihrer Aktion zugreifen müssen, kann der Aktionscode den Wert der Eingabe mithilfe der $SUPER_SECRET
-Umgebungsvariablen lesen.
Warnung
Achten Sie beim Erstellen eigener Aktionen darauf, keine verschlüsselten Geheimnisse in den Quellcode Ihrer Aktion einzuschließen, da es sich bei Aktionen um gemeinsam verwendbare Arbeitseinheiten handelt. Wenn Ihre Aktion verschlüsselte Geheimnisse oder andere vom Benutzer bereitgestellte Eingaben verwenden muss, ist es am besten, das Kernmodul aus dem Actions-Toolkit zu verwenden.