プロファイル適用性: レベル1 - マスターノード
apiserver上のサービスアカウントに対してサービスアカウントの公開鍵ファイルを明示的に設定します。
デフォルトでは、apiserverに
--service-account-key-fileが指定されていない場合、サービスアカウントトークンを検証するためにTLSサーバー証明書の秘密鍵が使用されます。サービスアカウントトークンのキーを必要に応じてローテーションできるようにするためには、サービスアカウントトークンの署名には別の公開/秘密鍵ペアを使用する必要があります。したがって、公開鍵は--service-account-key-fileを使用してapiserverに指定する必要があります。
注意デフォルトでは、
--service-account-key-file引数は設定されていません。 |
影響
対応する秘密鍵はコントローラーマネージャに提供する必要があります。鍵ファイルを安全に管理し、組織の鍵ローテーションポリシーに基づいて鍵をローテーションする必要があります。
監査
Control Planeノードで次のコマンドを実行します。
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>
