Veröffentlicht am: 25. Februar 2025
11 Minuten Lesezeit
Erfahre Schritt für Schritt, wie du Token identifizierst, verwaltest und schützt, um die Sicherheit in deinem gesamten Software-Entwicklungsprozess zu verbessern.

Stell dir Folgendes vor: Du bist Entwickler(in) in einem aufstrebenden Technologieunternehmen, es ist 2 Uhr morgens und du erhältst einen dringenden Anruf. Eine wichtige Bereitstellungs-Pipeline ist fehlgeschlagen und dein Team versucht, den Grund herauszufinden. Nach stundenlangem Suchen stellst du fest, dass jemand einen persönlichen Zugriffs-Token widerrufen hat, der zu einem bzw. einer Entwickler(in) gehörte, der bzw. die schon seit Wochen nicht mehr für das Unternehmen arbeitet. Dieser Token war an mehrere Automatisierungsprozesse gekoppelt, sodass jetzt dein gesamtes System im Chaos versunken ist. Wie stellst du sicher, dass so etwas nicht nochmals passiert?
40 Stunden weniger Arbeit pro Woche: Cube nutzt GitLab Duo für mehr Effizienz. Codevorschläge, Testgenerierung und KI-Chat verhelfen zu einer besseren Arbeitsweise – schnell, sicher und effizient. Erfahre, wie Cube mit GitLab Duo den KI-Einsatz im SDLC perfektioniert. Erfolgsstory lesen
Folge dieser Anleitung und erfahre Schritt für Schritt, wie du mit GitLab Token identifizieren, verwalten und schützen kannst. Dies ist eine praktische Ergänzung zur umfassenden Token-Übersichtsdokumentation für GitLab-Administrator(inn)en, Entwickler(innen) und Sicherheitsteams, die eine robuste Token-Verwaltung in ihren Projekten benötigen.
In diesem Leitfaden geht es um folgende Themen:
Mit der Auswahl des richtigen Tokens garantierst du die für deinen Anwendungsfall optimale Sicherheit und Funktionsfähigkeit. Token können zur Authentifizierung von API-Anfragen, zur Automatisierung von CI/CD-Pipelines, zur Integration von externen Tools, zur Verwaltung von Bereitstellungen und Repositories und für vieles mehr verwendet werden.

Der Einfachheit halber zeigt dieses Diagramm einen unkomplizierten Anwendungsfall, bei der nur ein(e) Benutzer(in) die Inhaberschaft hat. Weitere Informationen findest du in unsere Dokumentation zu Benutzerrollen und Berechtigungen in den einzelnen Namensräumen (Benutzer(innen)/Gruppe) in deiner Instanz oder Hauptgruppe. Beispiele für Anwendungsfälle:
Unten findest du eine Liste mit GitLab-Token und deren standardmäßigen Präfixen und Anwendungsfällen. Weitere Informationen findest du auf der GitLab-Token-Übersichtsseite.
| Token | Präfix | Beschreibung |
|---|---|---|
| Persönlicher Zugriffs-Token | glpat | Für den Zugriff auf benutzerspezifische Daten |
| OAuth-2.0-Token | gloas | Für die Integration mit externen Anwendungen über das OAuth2.0-Authentifizierungsprotokoll |
| Imitations-Token | glpat | Für administrative Handlungen im Namen anderer Benutzer(innen) |
| Projektzugriffs-Token | glpat | Für den Zugriff auf Daten eines bestimmten Projekts |
| Gruppenzugriffs-Token | glpat | Für den Zugriff auf Daten einer bestimmten Gruppe |
| Bereitstellungs-Token | gldt | Zum Klonen, Pushen und Pullen von Container-Registry-Images eines Projekts ohne Benutzer(in) und Passwort |
| Bereitstellungsschlüssel | n.v. | Ermöglicht den Lese- oder Schreibzugriff auf deine Repositories |
| Runner-Authentifizierungs-Token | glrt | Für die Authentifizierung von GitLab-Runners |
| CI/CD-Job-Token | glcbt | Für die Automatisierung von CI/CD-Prozessen |
| Trigger-Token | glptt | Löst Pipelines manuell oder programmatisch aus |
| Feed-Token | glft | Für die Authentifizierung des Zugriffs auf Paket-/RSS-Feeds |
| Token für eingehende Mails | glimt | Für die Verarbeitung eingehender E-Mails |
| Token für GitLab Agent for Kubernetes | glagent | Für die Verwaltung von Kubernetes-Clustern über den GitLab Agent |
| SCIM-Token | glsoat | Ermöglicht SCIM-Integrationen für die Benutzerbereitstellung |
| Client-Token für Feature-Flags | glffct | Für programmatische Feature-Flags |
| Webhook-Token | n.v. | Vom bzw. von der Benutzer(in) festgelegter geheimer Token, um Webhook-Payloads zu sichern und zu gewährleisten, dass Anfragen von GitLab stammen |
In GitLab Ultimate können Administrator(inn)en (GitLab Self-Managed) und Eigentümer(innen) von Hauptgruppen eines Unternehmens (GitLab.com ab Version 17.5) die Zugangsdaten in ihrem Namensraum überwachen.
Dieses Inventar verfolgt Token-Details wie:
Ein gut gepflegtes Credentials Inventory hilft dabei, Token mit zu vielen Berechtigungen zu identifizieren, und gibt Aufschluss über Zugangsdaten, die möglicherweise rotiert werden müssen, um einen sicheren und effizienten Workflow zu gewährleisten.
Als Ergänzung zur UI entwickeln wir derzeit eine Credentials Inventory API über den neuen Endpunkt /group/:id/manage. Die unter diesem Endpunkt zugänglichen Zugangsdaten sind auf Enterprise-Benutzer(innen) beschränkt und können vom bzw. von der Eigentümer(in) der Hauptgruppe eines Unternehmens abgerufen werden. Ein Beispiel für den zukünftigen API-Aufruf wäre:
curl --header "PRIVATE-TOKEN: <pat>" "https://verified_domain.com/api/v4/groups/<group_id>/manage/personal_access_tokens"
Mit der GitLab-API kannst du Token in deinem Unternehmen programmgesteuert auflisten und verwalten. Wichtige authentifizierungsbezogene Endpunkte unterstützen verschiedene Token-Typen), darunter persönliche Token, Gruppen-Token, CI/CD-Token und mehr. Ein Beispiel für die Verwendung eines persönlichen Zugriffs-Tokens zum Auflisten aller sichtbaren Projekte in GitLab für authentifizierte Benutzer(innen) ist:
curl --header "PRIVATE-TOKEN: <your_access_token>" \
"https://gitlab.example.com/api/v4/projects"
In diesem Video erfährst du, wie du API-Aufrufe an die GitLab-API sendest.
Kund(inn)en können auf verschiedene Arten herausfinden, wo Token verwendet werden:
Informationen zur Token-Nutzung werden alle 10 Minuten für last_used und einmal pro Minute für last_used_ip aktualisiert.
Die Möglichkeit, IP-Adressen anzuzeigen, wurde in GitLab 17.9 eingeführt und wird durch das Feature-Flag

In der folgenden Tabelle findest du Videos, in denen gezeigt wird, wie Token im UI erstellt werden und wie sie über die API genutzt werden können.
| Token | GitLab-UI | GitLab-API |
|---|---|---|
| Persönlicher Zugriffs-Token | Dokumentation und Video | Dokumentation und Video |
| Gruppenzugriffs-Token | Dokumentation und Video | Dokumentation und Video |
| Projektzugriffs-Token | Dokumentation und Video | Dokumentation und Video |
Indem du Token rotierst und strikte Richtlinien für Ablaufdaten einführst, reduzierst du das Komprimittierungsrisiko und stellst die Einhaltung von Sicherheitsstandards sicher. Regelmäßige Rotation und erzwungene Abläufe verhindern, dass veraltete Zugangsdaten zu Sicherheitslücken werden.
Bisher wurden abgelaufene Gruppen- und Projektzugriffs-Token nach Ablauf automatisch gelöscht, was die Überwachung und Sicherheitsüberprüfung schwieriger machte, da keine Aufzeichnungen zu inaktiven Token vorlagen. Um dieses Problem zu beheben, wurde eine neue Funktion eingeführt, um Aufzeichnungen zu inaktiven Gruppen- und Projektzugriffs-Token 30 Tage, nachdem sie inaktiv wurden, im UI aufzubewahren. Diese Verbesserung soll es den Teams ermöglichen, die Verwendung, den Ablauf und den Widerruf von Token zu verfolgen, um die Compliance und Überwachung zu verbessern.
Um die Rotation von Token und die Verwaltung von Ablaufdaten proaktiv zu gestalten, kannst du Folgendes tun:
Bis GitLab 17.7 mussten Kund(inn)en Zugriffs-Token programmgesteuert mit der API rotieren. Die entsprechende Funktion ist jetzt im UI verfügbar. Sieh dir das Video in der folgenden Tabelle an oder lies dir die Dokumentation durch.
In der folgenden Tabelle findest du Videos, in denen die Rotation von GitLab-Token erläutert wird.
| Token | Voraussetzungen | GitLab-UI | GitLab-API |
|---|---|---|---|
| Persönliches Zugriffs-Token | Geltungsbereich: API | Dokumentation und Video | Dokumentation und Video |
| Gruppenzugriffs-Token | Geltungsbereich: API und Rolle(n): Eigentümer(in) | Dokumentation und Video | Dokumentation und Video |
| Projektzugriffs-Token | Geltungsbereich: API und Rolle(n): Eigentümer(in), Betreuer(in) | Dokumentation und Video | Dokumentation und Video |
Mindere Risiken, indem du Berechtigungen für Token wirklich nur für die jeweiligen unbedingt nötigen Aufgaben zuweist. Auf diese Weise kannst du Fehlerquellen in deinen Systemen proaktiv vorhersagen und beheben. Beachte dazu Folgendes:
Dienstkonten stellen sicher, dass Token an nicht-menschliche Entitäten gebunden sind. Dadurch werden sie von einzelnen Benutzerkonten getrennt und die Abhängigkeit von bestimmten Benutzer(inne)n wird verringert. Anstatt persönliche Konten zu verwenden, um Token für die Automatisierung zu generieren, solltest du Dienstkonten mit eingeschränktem Geltungsbereich erstellen. Zu den Vorteilen gehören:
GitLab plant die Veröffentlichung einer neuen Benutzeroberfläche für Dienstkonten als Gegenstück zur API-basierten Erstellung, wodurch die Verwaltung von Dienstkonten und der damit verbundenen Token vereinfacht werden soll. In der folgenden Demo wird die programmgesteuerte Verwendung von Dienstkonten erläutert.
Nutze die integrierten Sicherheitstools von GitLab, um Sicherheitslücken, die durch die Nutzung von Token entstehen, zu identifizieren und zu beheben. Für eine maximale Abdeckung wird empfohlen, alle Tools gemeinsam zu verwenden.
Pflege den Zustand von Token, indem du regelmäßig Audit-Protokolle und die Token-Nutzung auf Instanz- und/oder Gruppenebene überprüfst.
Angesichts des großen Token-Katalogs von GitLab gibt es laufende Pläne für eine Konsolidierung mit Schwerpunkt auf der Lebensdauer, detaillierten Geltungsbereichen, konsistenter Verwaltung und Nutzung. Derzeit priorisieren wir hinsichtlich der Token-Funktionen ein umfassendes UI für Dienstkonten, zusätzliche Arten von Zugangsdaten im Credentials Inventory sowie ein verbessertes Auditing für Token und Dienstkonten.
Melde dich für eine kostenlose Testversion von GitLab Ultimate an, um die Token-Verwaltung zu nutzen.
Dieser Blogbeitrag hat gefallen oder es gibt Fragen oder Feedback? Ein neues Diskussionsthema im GitLab-Community-Forum erstellen und Eindrücke austauschen.
Feedback teilen