Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Verwenden von API-Token

Deprecation of v3 API tokens

Rancher v2.13 introduced a new token resource in the ext.cattle.io API group to serve as the public API for tokens, which was only accessible through kubectl.

Starting with Rancher v2.14.1:

  • Legacy v3 API tokens (tokens.management.cattle.io) are being phased out and scheduled for removal in a future release. If you currently rely on legacy tokens for automation or API access, transition to the new tokens.ext.cattle.io tokens to ensure continued compatibility.

  • The Rancher dashboard provides basic support for tokens.ext.cattle.io (create, view or list, and delete).

Rancher v2.8.0 führte die Rancher Kubernetes API ein, die verwendet werden kann, um Rancher-Ressourcen über kubectl zu verwalten. Diese Seite enthält Informationen zu API-Token, die mit dem Rancher CLI, kubeconfig-Dateien, Terraform und dem v3 API-Browser verwendet werden.

Standardmäßig werden einige clusterweite API-Token mit unbegrenzter Lebensdauer (ttl=0) generiert. Mit anderen Worten, API-Token mit ttl=0 laufen nie ab, es sei denn, Sie machen sie ungültig. Token werden nicht ungültig, wenn ein Passwort geändert wird.

Sie können API-Token deaktivieren, indem Sie sie löschen oder das Benutzerkonto deaktivieren.

Token löschen

Um ein Token zu löschen:

  1. Gehen Sie zur Liste aller Token in der Rancher API-Ansicht unter https://<Rancher-Server-IP>/v3/tokens.

  2. Greifen Sie auf das Token zu, das Sie anhand seiner ID löschen möchten. Zum Beispiel, https://<Rancher-Server-IP>/v3/tokens/kubectl-shell-user-vqkqt

  3. Klicken Sie auf Löschen.

Die folgende Liste enthält alle mit ttl=0 generierten Token:

Token Beschreibung

kubectl-shell-*

Zugriff auf kubectl Shell im Browser

agent-*

Token für die Agentenbereitstellung

compose-token-*

Token für Compose

helm-token-*

Token für die Helm-Chart-Bereitstellung

drain-node-*

Token für Drain (Rancher verwendet kubectl für Drain, da es keine native Kubernetes-API gibt).

TTL für Kubeconfig-Token festlegen

Administratoren können eine globale Lebensdauer (TTL) für Kubeconfig-Token festlegen. Die Änderung der standardmäßigen Kubeconfig-TTL kann durch Navigieren zu den globalen Einstellungen und Festlegen von kubeconfig-default-token-ttl-minutes auf die gewünschte Dauer in Minuten erfolgen. Seit Rancher v2.8 beträgt der Standardwert von kubeconfig-default-token-ttl-minutes 43200, was bedeutet, dass Token nach 30 Tagen ablaufen.

Diese Einstellung wird von allen Kubeconfig-Token verwendet, außer von denen, die von der CLI zum Generieren von Kubeconfig-Token erstellt wurden.

Tokens in generierten Kubeconfigs deaktivieren

Setzen Sie die Einstellung kubeconfig-generate-token auf false. Diese Einstellung weist Rancher an, beim Klicken eines Benutzers auf den Download einer Kubeconfig-Datei keinen Token mehr automatisch zu generieren. Wenn diese Einstellung deaktiviert ist, verweist eine generierte Kubeconfig auf die Rancher CLI, um ein kurzlebiges Token für den Cluster abzurufen. Wenn diese Kubeconfig in einem Client wie kubectl verwendet wird, muss die Rancher CLI installiert sein, um die Anmeldeanforderung abzuschließen.

Token-Hashing

Sie können Token-Hashing aktivieren, bei dem Token mit dem SHA256-Algorithmus einem Einweg-Hash unterzogen werden. Dies ist ein nicht umkehrbarer Prozess: Einmal aktiviert, kann dieses Feature nicht deaktiviert werden. Sie sollten diese Einstellung zuerst in einer Testumgebung bewerten und/oder Sicherungen erstellen, bevor Sie sie aktivieren.

Dieses Feature betrifft alle Token, die Folgendes umfassen, aber nicht darauf beschränkt sind:

  • Kubeconfig-Token

  • Bearer-Token API-Schlüssel/Aufrufe

  • Tokens, die von internen Operationen verwendet werden

Token-Einstellungen

Diese globalen Einstellungen beeinflussen das Verhalten von Rancher-Token.

Einstellung Beschreibung

auth-user-session-ttl-minutes

TTL in Minuten für ein Benutzer-Authentifizierungssitzungstoken.

auth-user-session-idle-ttl-minutes

TTL in Minuten für ein Benutzer-Authentifizierungssitzungstoken ohne Benutzeraktivität.

kubeconfig-default-token-ttl-minutes

Standard-TTL, der auf alle kubeconfig-Token angewendet wird, außer auf Token die von Rancher CLI generiert werden.

auth-token-max-ttl-minutes

Maximale TTL für alle Token, außer für die, die von auth-user-session-ttl-minutes kontrolliert werden.

kubeconfig-generate-token

Wenn wahr, werden automatisch Token generiert, wenn ein Benutzer eine kubeconfig herunterlädt.

auth-user-session-ttl-minuten

Die Lebensdauer (TTL) in Minuten, die verwendet wird, um zu bestimmen, wann ein Benutzer-Authentifizierungssitzungstoken abläuft. Wenn abgelaufen, muss sich der Benutzer anmelden und ein neues Token erhalten. Diese Einstellung wird nicht von auth-token-max-ttl-minutes beeinflusst. Sitzungstoken werden erstellt, wenn sich ein Benutzer bei Rancher anmeldet.

auth-user-session-idle-ttl-minuten

Die Lebensdauer (TTL) ohne Benutzeraktivität für Anmeldesitzungstoken in Minuten. Standardmäßig ist auth-user-session-idle-ttl-minutes auf denselben Wert wie auth-user-session-ttl-minutes (zur Rückwärtskompatibilität) eingestellt. Es darf niemals den Wert von auth-user-session-ttl-minutes überschreiten.

kubeconfig-default-token-ttl-minuten

Die Lebensdauer (TTL) in Minuten, die verwendet wird, um zu bestimmen, wann ein kubeconfig-Token abläuft. Wenn das Token abgelaufen ist, lehnt die API das Token ab. Diese Einstellung darf nicht größer sein als auth-token-max-ttl-minutes. Diese Einstellung gilt für Token, die in einer angeforderten kubeconfig-Datei generiert werden, mit Ausnahme von Token die vom Rancher CLI generiert werden. Seit Rancher v2.8 beträgt die Standarddauer 43200, was bedeutet, dass Tokens nach 30 Tagen ablaufen.

auth-token-max-ttl-minuten

Maximale Lebensdauer (TTL) in Minuten, die für Auth-Tokens erlaubt ist. Wenn ein Benutzer versucht, ein Token mit einer TTL größer als auth-token-max-ttl-minutes zu erstellen, setzt Rancher die Token-TTL auf den Wert von auth-token-max-ttl-minutes. Gilt für alle kubeconfig-Tokens und API-Tokens. Seit Rancher v2.8 beträgt die Standarddauer 129600, was bedeutet, dass Tokens nach 90 Tagen ablaufen.

kubeconfig-generate-token

Wenn wahr, enthalten über die UI angeforderte kubeconfigs ein gültiges Token. Wenn falsch, enthalten kubeconfigs einen Befehl, der das Rancher CLI verwendet, um den Benutzer zur Anmeldung aufzufordern. Das CLI ruft dann ein Token für den Benutzer ab und speichert es im Cache. cli/kubectl.adoc#_authentifizierung_mit_kubectl_und_kubeconfig_tokens_mit_ttl[Das CLI ruft dann ein Token für den Benutzer ab und speichert es im Cache].