View a markdown version of this page

GitLab Zugriffstoken - AWS Secrets Manager

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

GitLab Zugriffstoken

Felder für geheime Werte

Die folgenden Felder müssen im Secrets Manager-Schlüssel enthalten sein:

{ "token": "GitLab access token value", "tokenId": "numeric token ID", "gitlabUrl": "GitLab instance URL", "projectId": "project ID (optional)", "groupId": "group ID (optional)" }
Token

Der Wert des GitLab Zugriffstokens (beginnt mitglpat-). Dies ist das Feld, das gedreht wird.

Token-ID

Die numerische Token-ID. Jede Rotation wurde mit der ID des neuen Tokens aktualisiert.

GitLabUrl

Ihre GitLab Instanz-URL (zum Beispiel). https://gitlab.com Muss HTTPS verwenden.

projectId

(Optional) Numerische Projekt-ID. Stellen Sie nur Projektzugriffstoken bereit.

groupId

(Optional) Numerische Gruppen-ID. Stellen Sie nur Gruppenzugriffstoken bereit.

Geheime Metadatenfelder

Im Folgenden sind die Metadatenfelder für das GitLab Zugriffstoken aufgeführt:

{ "adminSecretArn": "arn:aws:secretsmanager:us-east-1:111122223333:secret:GitLabAdmin", "daysToExpiry": "30 (optional)" }
admin SecretArn

(Optional) Der Amazon-Ressourcenname (ARN) für einen geheimen Schlüssel, der ein API-bezogenes GitLab Zugriffstoken enthält GitLabAccessToken , das für die Rotation dieses Geheimnisses verwendet wird. Wenn es weggelassen wird, dreht sich das Token von selbst (erfordert oder Gültigkeitsbereich). api self_rotate Für Projekt-Token benötigt das Admin-Token die Rolle des Betreuers im Projekt. Für Gruppen-Token benötigt es die Rolle des Besitzers in der Gruppe.

Tage ToExpiry

(Optional) Anzahl der Tage, bis das neue Token abläuft (1—365). Wird dem expires_at Feld in der GitLab Rotate-API zugeordnet. Wenn es weggelassen wird, erbt das neue Token das Standardablaufdatum der Instanz.

Ablauf der Nutzung

Diese Rotation unterstützt sowohl Architekturen mit nur einem Geheimnis (Eigenrotation) als auch Architekturen mit zwei Geheimnissen (vom Administrator unterstützt). Der Umfang des Tokens wird durch die optionalen Felder und bestimmt. projectId groupId Wenn keines der Felder vorhanden ist, handelt es sich bei dem Token um ein persönliches Zugriffstoken. Falls vorhanden, projectId handelt es sich bei dem Token um ein Projektzugriffstoken. Falls vorhanden, groupId handelt es sich bei dem Token um ein Gruppenzugriffstoken.

Erstellen Sie Ihr Geheimnis mithilfe des CreateSecret Anrufs. Geben Sie den Geheimwert in die oben beschriebenen Felder ein und legen Sie den Geheimtyp auf fest GitLabAccessToken. Verwenden Sie den RotateSecret Aufruf, um die Rotation zu konfigurieren. Geben Sie einen Rollen-ARN an, der dem Dienst die erforderlichen Berechtigungen zum Rotieren des Secrets gewährt. Ein Beispiel für eine Berechtigungsrichtlinie finden Sie unter Sicherheit und Berechtigungen.

Wenn Sie die administratorgestützte Rotation verwenden, ist das Admin-Secret ebenfalls vom Typ. GitLabAccessToken Sie müssen der Rotationsrolle explizit Zugriff auf das Admin-Secret gewähren. Sie können dies tun, indem Sie direkt in der Rollenrichtlinie eine Anweisung hinzufügen, die auf den ARN des Administratorgeheimnisses beschränkt ist.

Während der Rotation überprüft der Treiber, ob das aktuelle Token aktiv ist. Dann ruft er den GitLab Rotate-Endpunkt auf, der atomar ein neues Token erstellt und das alte widerruft. Secrets Manager speichert den neuen Token-Wert und die neue ID als AWSPENDING, verifiziert sie über die GitLab API und stuft sie auf AWSCURRENT hoch. Anwendungen, die die Secrets Manager-Caching-Bibliothek verwenden, übernehmen das neue Token automatisch bei ihrer nächsten Aktualisierung.