k8s-resource-audit
Kubernetes Resource Audit
Collects customer-confidential Kubernetes operations, optional usage samples, Pending-pod forensics, version-lifecycle, metadata-only security posture, and offline image supply-chain signals through the supported SaaS evaluator contract.
- Safety level
- Level 2: sensitive cluster configuration inventory; internal review required
- Bundle Contract
- 1.0.0 · bundle schema 2026.06
- Download metadata
- tar.gz release bundle · SHA-256 bf1cf65eac994d0caf9006ee8d2e4ffb7d327254e1d6b297347fde5323dbfa2e · checksum-published unsigned public preview
- Execution policy
- Local-only collection · explicit upload required · remediation disabled
- Bundle spec
- 0 raw artifacts · 0 normalized outputs · dry-run fixture available
- Download links
- Artifact Checksums Release notes
- Signing key
- https://github.com/tacitness/tstools/tree/main/signing
Collects
- Cluster and namespace resource inventory
- Exact Kubernetes, k3s, runtime, node OS, kernel, and kubelet versions
- Warning events, best-effort k3s certificate status, and filtered security-relevant kubelet warnings
- Workload requests, limits, replicas, and scheduling metadata
- PodScheduled conditions, container waiting states, and namespace events
- PVC, PV, StorageClass, service, ingress, and configuration references
- Deployment, StatefulSet, DaemonSet, Job, and ReplicaSet owner chains
- Privileged execution, host access, container security context, and service-account metadata
- Pod Security Admission, NetworkPolicy, RBAC, service exposure, and ingress TLS metadata
- Pod and controller image references, resolved digests, and pull failures
- Optional normalized local Syft, Grype, Trivy, and version results
- Service, ingress, storage, and configuration references
- Optional node and per-container usage samples from the metrics API
- Machine-readable capability coverage and advisor input index
Does not collect by default
- Kubernetes Secret objects or values
- Certificate private keys or certificate contents
- Unfiltered node or workload journals
- Workload environment values or arbitrary annotations
- Registry credentials, Docker authentication configuration, or raw scan artifacts
- Container filesystem contents
- Live workload traffic
Release flow
public-preview · published 2026-08-08
Install
curl -fsSLO https://tacitsoft.dev/downloads/collectors/k8s-resource-audit/0.2.0/k8s-resource-audit-0.2.0.tar.gzcurl -fsSLO https://tacitsoft.dev/downloads/collectors/k8s-resource-audit/0.2.0/SHA256SUMSsha256sum -c SHA256SUMStar -xzf k8s-resource-audit-0.2.0.tar.gz./k8s-resource-audit/install.sh --prefix ./out/k8s-resource-audit
Dry run
./k8s-resource-audit/install.sh --dry-run --prefix ./out/k8s-resource-audit./out/k8s-resource-audit/run-collector.sh --dry-run --output ./out/k8s-bundle
Bundle expectations
- The bundle is created locally under the output path and is not uploaded automatically.
- bundle.json identifies collector, schema, and contract versions, cluster context, safety flags, and capability coverage.
- Raw inventory is customer-confidential: bundle.json sets contains_sensitive_data=true and handling_state=raw.
- upload_safe_after_review permits controlled internal upload only; it never makes raw content customer-shareable.
- redaction/coverage.json records raw, redacted, omitted, or not-collected status for every artifact class.
- bundle.json and redaction/coverage.json are included in the manifest and checksum chain.
- Files left under raw/ remain raw regardless of a conflicting coverage claim.
- raw/ contains sanitized Kubernetes metadata without Secret objects or values, environment values, arbitrary annotations, or live traffic capture.
- Reports identify checks unavailable because optional collector capabilities were missing.
Source references
docs/collectors/k8s-resource-audit-contract.mddocs/strategies/cmmc-stig-diagnostics-saas-platform.mddocs/strategies/tacitsoft-full-spectrum-strategy-map.md