KB
Kubernetes
Provider Setup

Connect Kubernetes

ConfigTrace connects to a Kubernetes cluster with a read-only kubeconfig and monitors the configuration that determines your cluster's security posture — workload privilege, RBAC, network exposure, and admission policy. This is configuration-security monitoring, not runtime threat detection: ConfigTrace never execs into pods, reads logs, or inspects Secret contents.

Prerequisites

  • A Kubernetes cluster you administer, with API server access
  • Permission to create a ServiceAccount, ClusterRole, and ClusterRoleBinding (or an equivalent read-only credential)
  • A ConfigTrace workspace (owner or admin role)

Connection model

ConfigTrace connects using a standard kubeconfig with a bearer token or client certificate bound to a read-only ServiceAccount. ConfigTrace does not support kubeconfigs that rely on exec-based or auth-provider-based authentication plugins (for example, cloud CLI credential helpers) — use a static token or certificate credential instead.

Step 1 — Prepare read-only access

Create a dedicated ServiceAccount scoped to read-only get/list/watch verbs across the resource types ConfigTrace monitors (see below). A minimal read-only ClusterRole covering workloads, RBAC objects, networking, and admission resources is recommended — avoid binding cluster-admin or any role with write verbs.

Do not grant create, update, patch, delete, exec, or portforward verbs. ConfigTrace only needs get, list, and watch on the resource types it reads.

Step 2 — Connect Kubernetes in ConfigTrace

  1. 1
    Open Integrations
    In the ConfigTrace sidebar, click Integrations, then click Connect on the Kubernetes card.
  2. 2
    Paste the kubeconfig
    Paste the kubeconfig for the read-only ServiceAccount (token or certificate-based). ConfigTrace encrypts it before storage and never displays it again.
  3. 3
    Save integration
    Click Save integration. ConfigTrace performs a read-only validation call against the cluster API server to confirm access.

Step 3 — Run your first sync

Click Sync Now. The first sync captures workload, RBAC, networking, and admission configuration across accessible namespaces as a baseline snapshot — this becomes the reference point for all future diffs.

What ConfigTrace monitors

Reads (configuration metadata)
  • Workload security context: privileged flags, host namespace / host networking posture, image references
  • RBAC: Roles, ClusterRoles, RoleBindings, ClusterRoleBindings, ServiceAccounts, and privilege-escalation paths
  • Services, Ingress, and Gateway API exposure configuration
  • NetworkPolicy coverage and namespace isolation posture
  • Admission webhooks and Pod Security Admission configuration
  • ResourceQuota and LimitRange objects
Never reads
  • Secret or ConfigMap contents
  • Pod logs, exec, attach, or port-forward sessions
  • Container image contents
  • Runtime, syscall, vulnerability, or malware scan data
  • Audit log events
  • API server flags or node configuration

What ConfigTrace never reads

ConfigTrace monitors configuration, not runtime behavior. It never reads Secret or ConfigMap contents, never execs into or port-forwards to a workload, and never performs vulnerability or malware scanning. This is configuration-security posture monitoring, not a runtime threat-detection tool.

For a full breakdown across all providers, see the Data Access & Permissions reference.

Known limitations

  • kubeconfigs using exec or auth-provider authentication plugins (cloud CLI credential helpers) are not supported — use a static bearer token or client certificate
  • Gateway API resources are reported as "unsupported" rather than flagged invalid when the Gateway API CRDs are not installed on the cluster
  • ReferenceGrant, API server flags, and node-level configuration are not currently monitored
  • No runtime, syscall, vulnerability, or malware scanning — configuration and RBAC posture only

Troubleshooting

  • "Unsupported authentication method" on save: Your kubeconfig likely uses an exec or auth-provider plugin. Generate a static ServiceAccount token or client certificate instead.
  • Forbidden errors during sync: The bound ClusterRole is missing get/list/watch on one of the monitored resource types. Check the sync error detail for the exact resource and verb.
  • Gateway API section is empty: The cluster does not have the Gateway API CRDs installed — this is reported as unsupported, not an error.
  • To revoke access: Delete the ServiceAccount, ClusterRole, and ClusterRoleBinding from the cluster, or disconnect the integration from ConfigTrace. ConfigTrace stops reading immediately.

For other issues, see the general Troubleshooting guide.