0Pricing
DevOps Bootcamp · Lektion

Secret-Management mit GitHub

Vertiefen Sie Ihr Wissen über das sichere Speichern und Abrufen vertraulicher Zugangsdaten mit GitHub Secrets und OpenID Connect (OIDC).

Secret-Management mit GitHub ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.

Warum ist ein sicheres Secret-Management wichtig?

In jedem Softwareprojekt müssen Sie häufig sensible Informationen wie API-Schlüssel, Datenbankzugangsdaten oder Zugriffstokens verwenden. Wenn Sie diese direkt in Ihrem Code oder Repository speichern, stellt das ein erhebliches Sicherheitsrisiko dar.

Secret-Management bezeichnet die sichere Speicherung und Verwaltung dieser sensiblen Daten. Dadurch wird sichergestellt, dass nur autorisierte Systeme und Benutzer darauf zugreifen können, und eine unbefugte Offenlegung wird verhindert.

Was sind GitHub Secrets?

GitHub bietet mit den sogenannten GitHub Secrets eine sichere Möglichkeit, sensible Informationen zu speichern. Dabei handelt es sich um verschlüsselte Umgebungsvariablen, die Sie in Ihren GitHub-Actions-Workflows verwenden können.

  • Sie werden standardmäßig nicht in die Protokolle geschrieben.
  • Nach ihrer Erstellung sind sie in der Benutzeroberfläche nicht sichtbar.
  • Sie sind nur für ausgewählte Workflows zugänglich.

So bleiben Ihre Zugangsdaten vor einer versehentlichen Offenlegung geschützt.

Repository-Secrets einrichten

Sie können Secrets auf verschiedenen Ebenen definieren: Repository, Umgebung oder Organisation. Am häufigsten beginnen Sie mit Repository-Secrets.

So erstellen Sie ein Secret:

  1. Öffnen Sie den Tab Settings Ihres Repositorys.
  2. Wechseln Sie zu Secrets and variables > Actions.
  3. Klicken Sie auf New repository secret.

Geben Sie einen eindeutigen Namen dafür an, z. B. API_KEY, und fügen Sie den Wert Ihres Secrets ein.

Auf Secrets in Workflows zugreifen

Sobald ein Secret definiert ist, können Sie es in Ihren Workflow-YAML-Dateien verwenden. GitHub Actions fügt Secrets automatisch als Umgebungsvariablen in Ihre Jobs ein.

Sie greifen über den Kontext ${{ secrets.SECRET_NAME }} darauf zu. Dieses Skript simuliert einen Schritt, der ein solches Secret verwenden würde. Stellen Sie sich für die Ausführung vor, dass MY_API_KEY von GitHub Actions als Umgebungsvariable gesetzt wurde.

#!/bin/bash
# This script simulates a workflow step
# where a secret is passed as an environment variable.

echo "Attempting to use an API key..."

# In a real GitHub Action, MY_API_KEY would be
# set by ${{ secrets.MY_API_KEY }} in the workflow YAML.

if [ -z "$MY_API_KEY" ]; then
  echo "Error: MY_API_KEY is not set!"
  echo "Please define it as a secret in your workflow."
else
  echo "Successfully accessed API key (partially shown): ${MY_API_KEY:0:5}..."
fi

Größere Geltungsbereiche für Secrets

Über Repository-Secrets hinaus bietet GitHub zwei weitere leistungsfähige Geltungsbereiche:

  • Organization Secrets: Sind für mehrere Repositorys innerhalb einer Organisation verfügbar. Sie eignen sich für Secrets, die von vielen Projekten gemeinsam genutzt werden, z. B. ein organisationsweiter Deployment-Token.
  • Environment Secrets: Sind an bestimmte Deployment-Umgebungen gebunden, z. B. staging oder production. Für sie können Schutzregeln gelten, etwa die Anforderung einer manuellen Genehmigung vor dem Deployment.

Verwenden Sie aus Sicherheitsgründen immer den kleinstmöglichen erforderlichen Geltungsbereich.

Was ist OpenID Connect (OIDC)?

OpenID Connect (OIDC) ist eine Authentifizierungsschicht, die auf OAuth 2.0 aufbaut. Dabei handelt es sich um einen Standard, mit dem Clients die Identität eines Endbenutzers anhand der von einem Autorisierungsserver durchgeführten Authentifizierung überprüfen können.

In CI/CD ermöglicht OIDC Ihren Workflows die sichere Authentifizierung bei Cloud-Anbietern wie AWS, Azure oder GCP, ohne langlebige Zugangsdaten wie API-Schlüssel als GitHub Secrets speichern zu müssen.

So funktioniert OIDC mit Actions

GitHub Actions kann als OIDC-Anbieter fungieren. Wenn ein Workflow ausgeführt wird, generiert GitHub ein eindeutiges, kurzlebiges OIDC-Token für diesen bestimmten Job.

Dieses Token enthält überprüfbare Angaben zum Workflow, etwa Repository, Branch und Job-ID. Cloud-Anbieter können anschließend so konfiguriert werden, dass sie von GitHub ausgestellten Tokens vertrauen und anhand dieser Angaben vorübergehend Zugriff gewähren.

Die wichtigsten Vorteile von OIDC

Die Verwendung von OIDC mit GitHub Actions bietet erhebliche Sicherheitsvorteile:

  • Keine langlebigen Zugangsdaten: Sie speichern keine statischen Cloud-API-Schlüssel in GitHub Secrets.
  • Geringeres Risiko: Kurzlebige Tokens minimieren die Auswirkungen, falls ein Token kompromittiert wird.
  • Feingranularer Zugriff: Cloud-Rollen können bestimmten Workflow-Bedingungen zugeordnet werden, z. B. der Bedingung, dass ein Deployment nur vom main-Branch aus zulässig ist.
  • Überwachung: Es lässt sich leichter nachvollziehen, wer was getan hat, da die Identitäten an die Workflow-Ausführung gebunden sind.

OIDC in die Cloud integrieren

Um OIDC zu verwenden, müssen Sie Ihren Cloud-Anbieter, etwa AWS IAM, Azure AD oder GCP IAM, so konfigurieren, dass er GitHubs OIDC-Aussteller vertraut.

Dies umfasst typischerweise:

  1. Einrichten eines Identity Providers (IdP) in Ihrem Cloud-Konto.
  2. Definieren einer Rolle bzw. Richtlinie, die bestimmte Berechtigungen gewährt.
  3. Hinzufügen einer „Trust Policy“ zur Rolle, die es GitHubs OIDC-Tokens erlaubt, diese Rolle zu übernehmen, häufig mit Bedingungen auf Grundlage der Token-Angaben, z. B. nur aus einem bestimmten Repository.

Der Workflow fordert anschließend ein Token an und verwendet es zur Authentifizierung.

Schnelltest: Sicherer Zugriff

Sie haben GitHub Secrets zum Speichern sensibler Daten und OpenID Connect für eine Cloud-Authentifizierung ohne Zugangsdaten kennengelernt.

Welche der folgenden Aussagen zur Verwaltung von Secrets in GitHub Actions sind RICHTIG?

Zusammenfassung: Ihre Zugangsdaten schützen

Sehr gut! Sie haben gelernt, wie Sie sensible Daten in Ihren CI/CD-Pipelines sicher verwalten.

  • GitHub Secrets bieten verschlüsselten Speicher für API-Schlüssel und Tokens innerhalb Ihres Repositorys, Ihrer Organisation oder bestimmter Umgebungen.
  • OpenID Connect (OIDC) ermöglicht eine noch sicherere Authentifizierung bei Cloud-Anbietern, indem kurzlebige, überprüfbare Tokens anstelle statischer Zugangsdaten verwendet werden.

Diese Praktiken sind entscheidend für den Aufbau robuster und sicherer DevOps-Pipelines.

Häufig gestellte Fragen

Ist die Lektion „Secret-Management mit GitHub“ kostenlos?

Ja — der vollständige Text von „Secret-Management mit GitHub“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Secret-Management mit GitHub“?

Vertiefen Sie Ihr Wissen über das sichere Speichern und Abrufen vertraulicher Zugangsdaten mit GitHub Secrets und OpenID Connect (OIDC). Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um DevOps Bootcamp zu starten?

Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Secret-Management mit GitHub“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?

Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Bewährte Sicherheitspraktiken in CI/CD
  2. Secret-Management mit GitHub
  3. Statische Anwendungssicherheitstests (SAST)
  4. Sicherheit von Abhängigkeiten und der Lieferkette (SCA)
← Zurück zu DevOps Bootcamp