Ansichten:
Profilanwendbarkeit: Stufe 1 - Masterknoten
Legen Sie explizit eine öffentliche Schlüsseldatei für Dienstkonten auf dem Apiserver fest.
Standardmäßig verwendet der apiserver, wenn kein --service-account-key-file angegeben ist, den privaten Schlüssel aus dem TLS-Servierzertifikat, um Service-Account-Token zu verifizieren. Um sicherzustellen, dass die Schlüssel für Service-Account-Token bei Bedarf rotiert werden können, sollte ein separates öffentliches/privates Schlüsselpaar für die Signierung von Service-Account-Token verwendet werden. Daher sollte der öffentliche Schlüssel dem apiserver mit --service-account-key-file angegeben werden.
Hinweis
Hinweis
Standardmäßig ist das Argument --service-account-key-file nicht festgelegt.

Auswirkung

Der entsprechende private Schlüssel muss dem Controller-Manager bereitgestellt werden. Sie müssen die Schlüsseldatei sicher verwalten und die Schlüssel gemäß der Schlüsselrotation-Richtlinie Ihrer Organisation rotieren.

Prüfung

Führen Sie den folgenden Befehl auf dem Steuerungsebenenknoten aus:
ps -ef | grep kube-apiserver
Überprüfen Sie, ob das Argument --service-account-key-file existiert und entsprechend festgelegt ist.

Wiederherstellung

Bearbeiten Sie die API-Server-Podspezifikationsdatei /etc/kubernetes/manifests/kube-apiserver.yaml auf dem Steuerungsknoten und setzen Sie den --service-account-key-file-Parameter auf die öffentliche Schlüsseldatei für Dienstkonten:
--service-account-key-file=<filename>