Check ID:
Provider: Kubernetes
Service:
Severity: CRITICAL
Categories:
Resource type:
rbac_cluster_admin_usageProvider: Kubernetes
Service:
rbacSeverity: CRITICAL
Categories:
identity-access, cluster-securityResource type:
ClusterRoleBindingWhat this check verifies
RBAC ClusterRoleBindings that bind to thecluster-admin ClusterRole are identified, showing where subjects receive super-user permissions across all namespaces.
Risk
Excessivecluster-admin grants give full API control, risking:
- Secret exfiltration (confidentiality)
- RBAC tampering (integrity)
- Destructive actions causing outages (availability)
Recommendation
Apply least privilege: replacecluster-admin with narrowly scoped Roles/ClusterRoles and bind per namespace. Reserve super-user access for break-glass, time-bound with approval and audit. Enforce separation of duties, review RBAC regularly, and monitor role/binding changes for defense in depth.
Remediation
- CLI
- Terraform
- Dashboard steps
kubectl delete clusterrolebinding <example_resource_name>
References
- https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles
- https://kubernetes.io/docs/reference/access-authn-authz/rbac/#clusterrolebinding-example
Where this check fires
This check runs on every scheduled scan against your Kubernetes account. Findings appear at Cloud Security → Findings filterable byCheck ID = rbac_cluster_admin_usage. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to Kubernetes checks