プロファイル適用性: レベル 1 - マスターノード
apiserver上のサービスアカウントに対してサービスアカウントの公開鍵ファイルを明示的に設定します。
デフォルトでは、apiserverに
--service-account-key-file
が指定されていない場合、サービスアカウントトークンを検証するためにTLSサービング証明書の秘密鍵を使用します。サービスアカウントトークンの鍵を必要に応じてローテーションできるようにするためには、サービスアカウントトークンの署名には別の公開/秘密鍵ペアを使用する必要があります。したがって、公開鍵は--service-account-key-file
でapiserverに指定する必要があります。
注意デフォルトでは、
--service-account-key-file 引数は設定されていません。 |
影響
対応する秘密鍵をコントローラーマネージャーに提供する必要があります。鍵ファイルを安全に管理し、組織の鍵ローテーションポリシーに基づいて鍵をローテーションする必要があります。
監査
コントロールプレーンノードで次のコマンドを実行します:
ps -ef | grep kube-apiserver
--service-account-key-file
引数が存在し、適切に設定されていることを確認してください。修復
コントロールプレーンノードでAPIサーバーポッド仕様ファイル
/etc/kubernetes/manifests/kube-apiserver.yaml
を編集し、--service-account-key-file
パラメータをサービスアカウントの公開鍵ファイルに設定します:--service-account-key-file=<FileName>