プロファイル適用性: レベル1
特別なグループ
system:mastersは、RBACが完全に利用可能になる前のブートストラップアクセスなど、厳密に必要な場合を除き、ユーザやサービスアカウントに権限を付与するために使用すべきではありませんsystem:mastersグループは、Kubernetes APIへの無制限のアクセスがAPIサーバのソースコードにハードコーディングされています。このグループのメンバーである認証済みユーザは、これに言及するすべてのバインディングとクラスター役割バインディングが削除されても、アクセスを制限されることはありません。クライアント証明書認証と組み合わせることで、このグループを使用すると、クラスターに対して取り消し不可能なクラスター管理者レベルの認証情報が存在する可能性があります。
GKEには、
CertificateSubjectRestrictionアドミッションコントローラーが含まれており、system:mastersグループのリクエストを拒否します。CertificateSubjectRestriction このアドミッションコントローラーは、spec.signerNameがkubernetes.io/kube-apiserver-clientであるCertificateSigningRequestリソースの作成を監視します。system:mastersの「グループ」(または「組織属性」) を指定するリクエストを拒否します。詳細については、Kubernetesのドキュメントを参照してください。
注意デフォルトでは、いくつかのクラスターがこのグループのメンバーである「ブレークグラス」クライアント証明書を作成します。このクライアント証明書へのアクセスは慎重に管理されるべきであり、一般的なクラスター操作には使用されるべきではありません。
|
影響
RBACシステムがクラスターで稼働すると、
system:mastersは特に必要なくなります。制限のないアクセスが必要な場合、プリンシパルからcluster-adminクラスター役割への通常のバインディングを行うことができます。監査
クラスターにアクセスできるすべての認証情報のリストを確認し、グループ
system:mastersが使用されていないことを確認してください。修復
system:mastersグループをクラスタ内のすべてのユーザから削除します。
