Skip to content

Runbook 01 — Kubernetes Compliance Assessment

Kubernetes security is not complete when individual controls are configured.

An enterprise must also be able to answer:

Are our Kubernetes environments
configured according to our
approved security requirements?

That requires a repeatable assessment process.

This runbook provides a professional workflow for evaluating Kubernetes environments against organizational security baselines and applicable compliance requirements.

The objective is not simply:

Find Misconfigurations

The objective is:

Define Requirements
Collect Evidence
Evaluate Controls
Identify Gaps
Assess Risk
Remediate
Validate
Maintain Compliance

Type: Security & Compliance Assessment Runbook

Difficulty: Intermediate to Advanced

Primary Audience:

Kubernetes Security Engineers
Cloud Security Engineers
DevSecOps Engineers
Platform Engineers
Security Consultants
GRC Professionals
Security Architects
Internal Auditors

Primary Skills:

Kubernetes Security Assessment
Compliance Validation
Control Testing
Evidence Collection
RBAC Review
Workload Security
Network Security
Policy-as-Code
Runtime Security
Risk Assessment
Remediation Management

You have been asked to assess an enterprise Kubernetes environment.

Management wants to understand:

Is the cluster securely configured?
Are identities properly controlled?
Are workloads hardened?
Is network communication restricted?
Are secrets protected?
Are admission policies enforced?
Can suspicious activity be detected?
Can security controls be demonstrated
with evidence?

Your responsibility is to produce:

Assessment Scope
Control Matrix
Evidence Package
Security Findings
Risk Ratings
Remediation Plan
Compliance Summary

A Kubernetes compliance assessment should follow:

Evidence
+
Risk
+
Repeatability
+
Traceability

Avoid assessments based solely on:

Looks Secure

or:

Team Says It Is Configured

Every important conclusion should be supported by evidence.

Never begin by randomly checking Kubernetes resources.

First define the scope.

Document:

Organization:
Assessment Date:
Assessor:
Environment:
Cluster:
Kubernetes Platform:
Cloud Provider:
Region:
Business Owner:
Technical Owner:
Assessment Type:
Applicable Security Baseline:
Applicable Compliance Requirements:
Environment:
Production
Platform:
Managed Kubernetes
Assessment:
Kubernetes Security and Compliance Review
Included:
Cluster Configuration
Identity and RBAC
Namespaces
Workloads
Network Policies
Secrets
Admission Controls
Logging
Runtime Security
Excluded:
Application Source Code
External SaaS Platforms
Unrelated Cloud Accounts

Identify exactly what is:

In Scope
Out of Scope
Shared Responsibility
Third-Party Managed

This is especially important with managed Kubernetes.

Conceptually:

Cloud Provider
Managed Control Plane
Customer
IAM
RBAC
Workloads
Nodes
Networking
Secrets
Policies
Logging
Runtime Security

The exact boundary varies by platform.

Document it before assessing controls.

Compliance should start with requirements.

Possible sources include:

Organizational Security Baseline
Kubernetes Hardening Standard
CIS Kubernetes Benchmark
Cloud Security Standards
Internal Policies
Customer Requirements
Regulatory Requirements
Industry Frameworks

Do not automatically assume every control from every framework applies equally.

Requirement
Security Control
Kubernetes Implementation
Evidence
Assessment Result
Requirement:
Workloads must operate with least privilege.
Control:
Container privilege restrictions.
Implementation:
securityContext
Evidence:
Deployment manifests
Result:
Pass / Fail / Partial

Create a working assessment matrix.

ID Control Area Requirement Evidence Result
K8S-01 Identity Least privilege RBAC TBD
K8S-02 Workload Non-root Pod specs TBD
K8S-03 Network Segmentation NetworkPolicy TBD
K8S-04 Secrets Restricted access RBAC/config TBD
K8S-05 Admission Guardrails Policies TBD
K8S-06 Logging Audit visibility Logging config TBD
K8S-07 Runtime Threat detection Runtime tooling TBD

Use consistent result values such as:

Pass
Partial
Fail
Not Applicable
Not Tested

Before collecting evidence:

Terminal window
kubectl config current-context

Review:

Terminal window
kubectl cluster-info

Then:

Terminal window
kubectl get nodes

Record:

Cluster:
Context:
Environment:
Node Count:
Assessment Identity:

Compliance assessment access should normally be:

Read-Only

where practical.

Do not change production configuration simply to test whether a control exists.

Create a structured evidence model.

Assessment
├── 01-Scope
├── 02-Cluster
├── 03-Identity-RBAC
├── 04-Workloads
├── 05-Network
├── 06-Secrets
├── 07-Admission
├── 08-Logging
├── 09-Runtime
├── 10-Findings
└── 11-Remediation

Evidence should be:

Relevant
Timestamped
Traceable
Protected
Minimized
Reproducible

Never collect sensitive values unnecessarily.

Record the cluster version.

Terminal window
kubectl version

Review node information:

Terminal window
kubectl get nodes -o wide

Assess:

Supported Version?
Upgrade Required?
Known End-of-Support Concern?
Version Consistency?
Node Version Drift?

Version support policies change, so compare the observed version against the current vendor and Kubernetes support policy applicable at assessment time.

Document:

Control Plane Model
Worker Nodes
Node Pools
Ingress Architecture
Load Balancers
Container Runtime
Storage Architecture
Identity Integration
Logging Architecture
Runtime Security

Build a simple diagram:

Users
Identity Provider
Kubernetes API
RBAC
Namespaces
Workloads
Services
Network
External Systems

List namespaces:

Terminal window
kubectl get namespaces

Assess whether namespaces provide meaningful separation for:

Applications
Teams
Environments
Security Boundaries
Platform Services
Are production and development separated?
Are sensitive workloads isolated?
Are system namespaces protected?
Are namespace owners known?
Are abandoned namespaces present?

Check for:

Ownership
Labels
Resource Quotas
Limit Ranges
Network Policies
Pod Security Controls
Admission Policies

A namespace should not simply exist without governance.

Determine how administrators and users authenticate.

Possible mechanisms include:

Enterprise Identity Provider
Cloud IAM
Certificates
Federated Identity
Managed Kubernetes Authentication

Assess:

Centralized Identity
MFA
Lifecycle Management
Shared Credentials
Temporary Access
Privileged Access

Review RBAC subjects:

Users
Groups
ServiceAccounts

Security objective:

Named Identity
+
Business Requirement
+
Minimum Access

List:

Terminal window
kubectl get clusterrolebindings

Inspect relevant bindings:

Terminal window
kubectl describe clusterrolebinding <binding-name>

Pay particular attention to bindings involving highly privileged roles.

Who Has Cluster-Wide Administrative Access?

List across namespaces:

Terminal window
kubectl get rolebindings -A

Assess:

Subject
Role
Namespace
Business Requirement
Privilege Level

List:

Terminal window
kubectl get roles -A

Then:

Terminal window
kubectl get clusterroles

Look for broad permissions such as:

resources: ["*"]
verbs: ["*"]

Wildcards are not automatically vulnerabilities.

They require context and justification.

For important identities, evaluate effective permissions.

Where authorized:

Terminal window
kubectl auth can-i --list --as=<identity>

For ServiceAccounts:

Terminal window
kubectl auth can-i --list --as=system:serviceaccount:<namespace>:<service-account>

Focus on permissions involving:

Secrets
Pods
Deployments
Jobs
DaemonSets
RBAC
ServiceAccounts
Nodes
Persistent Storage

Identify subjects bound to highly privileged roles.

For each privileged identity document:

Identity:
Type:
Business Requirement:
Owner:
MFA:
Access Method:
Approval:
Review Date:
Finding:
Excessive Cluster Administrative Access
Observation:
Multiple identities possess broad
cluster-wide administrative privileges.
Risk:
Compromise of one privileged identity
could result in cluster-wide impact.
Recommendation:
Reduce administrative assignments,
use group-based access,
implement privileged access controls,
and periodically recertify permissions.

List:

Terminal window
kubectl get serviceaccounts -A

Identify:

Default ServiceAccounts
Application ServiceAccounts
Automation Identities
Privileged ServiceAccounts
Unused ServiceAccounts
Does every ServiceAccount have an owner?
Does the workload need Kubernetes API access?
Are permissions namespace-scoped?
Is token mounting required?

19 — Review Service Account Token Exposure

Section titled “19 — Review Service Account Token Exposure”

Inspect workloads for:

serviceAccountName
automountServiceAccountToken

Security principle:

No API Requirement
No Unnecessary API Credential

Do not review only obvious:

cluster-admin

Some permissions can create indirect privilege.

Review capabilities involving:

Creating Pods
Modifying Workloads
Using Powerful ServiceAccounts
Reading Secrets
Modifying RBAC
Creating Jobs
Creating DaemonSets
Low-Privilege Identity
Create Workload
Attach Powerful Identity
Gain Additional Access

Compliance assessments should evaluate effective attack paths, not only role names.

Inventory:

Terminal window
kubectl get deployments -A

Then:

Terminal window
kubectl get daemonsets -A

Then:

Terminal window
kubectl get statefulsets -A

Then:

Terminal window
kubectl get jobs -A

Review representative and high-risk workloads in detail.

Inspect whether workloads explicitly implement:

runAsNonRoot

Assess:

Does the workload require root?
Is the requirement documented?
Can the image support non-root?

Search workload specifications for:

privileged: true

Privileged workloads require strong justification.

Document:

Workload
Namespace
Owner
Reason
Compensating Controls

Check:

allowPrivilegeEscalation

Desired standard for ordinary workloads:

false

unless justified.

Review:

capabilities

Look for:

Capabilities Added
Capabilities Dropped
Use of ALL

Desired model:

Drop Unnecessary Capabilities
Add Only Required Capabilities

Assess:

seccompProfile

Determine whether workloads use an approved seccomp configuration.

A common hardened approach is:

RuntimeDefault

where compatible.

Assess:

readOnlyRootFilesystem

Ask:

Does the application need
the entire root filesystem writable?

Where possible:

Read-Only Root
+
Explicit Writable Volumes

Identify workloads using:

hostNetwork
hostPID
hostIPC

Each should have:

Technical Requirement
Risk Assessment
Owner
Approval

Identify:

hostPath

mounts.

Prioritize:

Sensitive Host Paths
Writable Host Paths
Broad Host Filesystem Access
Privileged Container
+
Writable hostPath
Potential Node-Level Impact

Collect:

Image Repository
Registry
Tag
Digest
Owner

Assess:

Approved Registry?
Controlled Version?
Image Scanning?
Image Signing/Verification?
Minimal Image?
Known Vulnerabilities?

Identify production workloads relying on mutable tags such as:

latest

Evaluate organizational policy.

The objective is:

Deployment
Known Image
Traceable Build

Assess whether image retrieval behavior matches the organization’s deployment and supply-chain requirements.

Do not treat one universal setting as correct for every environment.

Consider:

Immutability
Registry Availability
Tag Strategy
Digest Usage
Deployment Process

Check workloads for:

CPU Requests
CPU Limits
Memory Requests
Memory Limits

Missing resource governance can affect:

Availability
Scheduling
Node Stability
Multi-Tenant Reliability

List:

Terminal window
kubectl get resourcequota -A

Assess whether important namespaces have appropriate resource governance.

List:

Terminal window
kubectl get limitrange -A

Determine whether default/minimum/maximum resource policies are appropriate for the environment.

Assess whether the organization uses controls aligned with:

Privileged
Baseline
Restricted

Determine the expected security level for:

Application Namespaces
Platform Namespaces
System Workloads

Inspect relevant namespace labels:

Terminal window
kubectl get namespaces --show-labels

Look for Pod Security Admission configuration where applicable.

Assess:

Enforce
Audit
Warn

and the organization’s rollout strategy.

Document:

Ingress
Egress
Service Communication
Namespace Communication
External Connectivity
Cloud Network Controls
Internet
Ingress
Service
Pod
Internal Services
External Dependencies

List:

Terminal window
kubectl get networkpolicy -A

Identify namespaces with:

No NetworkPolicy

Then determine whether that represents a genuine security gap.

Assess whether sensitive namespaces use an appropriate default-deny model.

Conceptually:

Default Deny
Explicit Required Communication

This reduces unnecessary connectivity.

Assess:

Public Exposure
TLS
Authentication
Ingress Controller
Allowed Hosts
Sensitive Services
Administrative Interfaces

Ask:

Which applications are Internet-facing?

Determine whether workloads can establish unnecessary outbound connections.

Review:

Internet Egress
Database Access
Cloud Metadata Access
Internal Services
External APIs
Allow Required Communication

rather than:

Allow Everything

Determine whether:

Development
Testing
Production
Sensitive Applications

are appropriately segmented.

Remember:

Namespace
Automatic Network Isolation

NetworkPolicy or equivalent controls are required for network segmentation.

Inventory metadata without exposing secret values:

Terminal window
kubectl get secrets -A

Do not unnecessarily decode production secrets during a compliance assessment.

Secret Type
Namespace
Owner
Workload Usage
RBAC Access
Rotation
Storage Protection

Determine which identities can:

get
list
watch

Secrets.

Secret access should receive high scrutiny.

Determine whether the environment implements appropriate protection for Kubernetes data at rest.

Review:

Encryption Configuration
Managed Platform Controls
Key Management
Key Rotation
Access Governance

Determine whether sensitive applications use:

Cloud Secret Manager
Enterprise Vault
External Secrets Integration
Other Approved Secret Platform

where required by organizational architecture.

Ask:

Who Owns the Secret?
When Was It Rotated?
Can It Be Rotated Without Major Downtime?
What Happens After Exposure?

Identify admission-security mechanisms.

Examples may include:

Pod Security Admission
Kyverno
OPA Gatekeeper
Platform-Specific Controls
Can insecure workloads
be prevented automatically?

Where Kyverno is deployed:

Terminal window
kubectl get clusterpolicies

and, where applicable:

Terminal window
kubectl get policies -A

Assess:

Policy Coverage
Audit vs Enforce
Exceptions
Policy Failures
Ownership
Testing

Where Gatekeeper is deployed, review its constraint templates and constraints using the resource names available in the installed version.

Assess:

Constraint Coverage
Enforcement
Exceptions
Violations
Ownership

Look for controls addressing requirements such as:

Privileged Containers
Non-Root
Privilege Escalation
Capabilities
Approved Registries
Host Namespaces
HostPath
Resource Requirements
Requirement Control Status
Non-root Admission policy Pass/Fail
No privileged containers Admission policy Pass/Fail
Registry restriction Admission policy Pass/Fail
Resource controls Admission policy Pass/Fail
Capability restrictions Admission policy Pass/Fail

Every exception should answer:

Who Requested It?
Why?
Which Workload?
Which Namespace?
What Risk?
Which Compensating Controls?
Who Approved It?
When Does It Expire?
Permanent Exception
+
No Owner
+
No Expiration

Determine whether Kubernetes API activity is appropriately logged.

Important event categories include:

Authentication
Authorization
Resource Creation
Resource Modification
Resource Deletion
Secret Access
RBAC Changes
pods/exec

Assess whether relevant logs are centralized.

Kubernetes
Audit Logs
+
Node Logs
+
Container Logs
+
Application Logs
+
Cloud Logs
Central Logging / SIEM

Ask:

Can Workload Administrators Delete Security Logs?
Are Logs Retained?
Are Logs Protected From Modification?
Is Access Monitored?
Are Timestamps Consistent?

Determine whether the environment can detect:

Unexpected Privileged Workloads
Suspicious RBAC Changes
Secret Access
Unexpected Shell Execution
Suspicious Processes
Unusual API Activity
Unexpected Network Connections

Determine whether runtime monitoring exists.

Examples may include technologies capable of observing:

Processes
System Activity
File Access
Network Behavior
Container Events

The assessment should evaluate capability rather than requiring one specific vendor.

Ask:

Which Behaviors Are Detected?
Who Owns the Rules?
Where Are Alerts Sent?
How Are Alerts Investigated?
How Are False Positives Tuned?
How Are Detection Gaps Tracked?

Desired architecture:

Runtime Sensor
Security Alert
SIEM / Monitoring
SOC
Investigation Runbook

Detection without response capability provides limited value.

61 — Review Kubernetes Incident Readiness

Section titled “61 — Review Kubernetes Incident Readiness”

Determine whether the organization has procedures for:

Compromised Pod
Compromised ServiceAccount
Suspicious RBAC Change
Malicious Image
Node Compromise
Secret Exposure
Runtime Alert

Determine whether investigators can obtain:

Kubernetes Audit Logs
Container Logs
Runtime Alerts
Cloud Logs
Network Logs
Workload Manifests
Image Information
RBAC Configuration
Relevant Node Evidence

Assess:

Cluster State Backup
Application Data Backup
Configuration Recovery
Secret Recovery
Disaster Recovery
Restore Testing

A backup that has never been tested may not provide reliable recovery assurance.

Determine how Kubernetes changes reach production.

Expected model:

Change
Review
Security Validation
Approval
Deployment
Monitoring

Where Kubernetes resources are managed through:

GitOps
Helm
Terraform
Kustomize
CI/CD

review:

Repository Access
Pull Request Approval
Pipeline Identity
Secret Handling
Policy Checks
Deployment Authorization

Assess:

Source
Dependencies
Build
Image
Registry
Admission
Runtime

For each stage ask:

Who Can Modify It?
How Is Integrity Validated?
What Evidence Exists?

Assess node-level controls appropriate to the platform.

Consider:

Operating System Hardening
Patch Management
Administrative Access
Container Runtime
Endpoint/Runtime Monitoring
Network Exposure
Cloud IAM
Disk Protection

Determine:

Who Can Access Nodes?
How?
Is MFA Required?
Is Access Logged?
Are Shared Accounts Used?
Is Emergency Access Controlled?

For managed Kubernetes, review the connection between:

Cloud IAM
+
Kubernetes RBAC

An identity may have important permissions outside Kubernetes itself.

Workload
Cloud Identity
Cloud API
Storage / Secrets / Databases

Kubernetes compliance assessments should not ignore cloud workload identities.

Determine how workloads access cloud resources.

Assess:

Dedicated Identity
Least Privilege
Credential Lifetime
Static Keys
Federated Identity
Auditability

Prefer designs that avoid long-lived embedded cloud credentials where supported.

If multiple teams or tenants share a cluster, assess:

Namespace Isolation
RBAC
Network Isolation
Resource Isolation
Admission Controls
Secret Isolation
Node Isolation
Logging

Kubernetes namespaces alone should not automatically be treated as a complete hostile multi-tenant isolation boundary.

Every major security control should have an owner.

Example:

Control Owner
Cluster configuration Platform Team
RBAC Platform + Security
NetworkPolicy Platform/Application
Admission policies Security Platform
Runtime detection Security Operations
Secrets Application + Security
Compliance evidence GRC/Security

Without ownership:

Security Gap
Nobody Fixes It

Create an exception register.

Exception ID:
Control:
Workload:
Namespace:
Reason:
Risk:
Compensating Control:
Owner:
Approver:
Created:
Expiration:
Status:

Summarize each domain.

Domain Status
Cluster Security Pass / Partial / Fail
Identity & RBAC Pass / Partial / Fail
Workload Security Pass / Partial / Fail
Network Security Pass / Partial / Fail
Secrets Pass / Partial / Fail
Admission Controls Pass / Partial / Fail
Logging Pass / Partial / Fail
Runtime Security Pass / Partial / Fail
Incident Readiness Pass / Partial / Fail

Avoid hiding serious failures behind a simple percentage.

Every failed control should be evaluated for risk.

Use:

Control Failure
Threat Scenario
Potential Impact
Likelihood
Risk
Finding ID:
Title:
Affected Environment:
Affected Resources:
Control Requirement:
Observation:
Evidence:
Threat Scenario:
Business Impact:
Likelihood:
Severity:
Recommendation:
Owner:
Target Date:
Status:
Finding ID:
K8S-001
Title:
Excessive Kubernetes Administrative Access
Observation:
Multiple identities possess broad
cluster-wide administrative permissions.
Threat Scenario:
Compromise or misuse of one identity
could provide extensive control over
cluster resources.
Impact:
Cluster-wide unauthorized modification,
data exposure, or service disruption.
Severity:
High
Recommendation:
Apply least privilege, remove unnecessary
administrative bindings, use controlled
privileged access, and implement periodic
access reviews.

77 — Example Finding: Missing Network Segmentation

Section titled “77 — Example Finding: Missing Network Segmentation”
Finding ID:
K8S-002
Title:
Insufficient Kubernetes Network Segmentation
Observation:
Sensitive application namespaces do not
have documented network restrictions.
Threat Scenario:
A compromised workload may communicate
with services that are not required for
its business function.
Impact:
Increased lateral movement opportunities.
Severity:
High
Recommendation:
Implement an appropriate default-deny
strategy and explicitly allow required
application communication.

78 — Example Finding: Workload Hardening

Section titled “78 — Example Finding: Workload Hardening”
Finding ID:
K8S-003
Title:
Inconsistent Kubernetes Workload Hardening
Observation:
Multiple workloads do not explicitly
implement the organization's expected
container security controls.
Risk Areas:
Non-Root
Privilege Escalation
Capabilities
Filesystem Protection
Seccomp
Recommendation:
Define a standard workload-security
baseline and enforce applicable controls
through admission policy.

79 — Example Finding: Runtime Visibility

Section titled “79 — Example Finding: Runtime Visibility”
Finding ID:
K8S-004
Title:
Insufficient Runtime Threat Detection
Observation:
The environment lacks consistent detection
for suspicious container runtime behavior.
Threat Scenario:
An attacker exploiting an application may
execute post-compromise activity without
timely detection.
Severity:
High
Recommendation:
Implement runtime telemetry and prioritized
behavioral detections integrated with
central security monitoring.

Prioritize findings based on:

Privilege
Exploitability
Internet Exposure
Data Sensitivity
Network Reachability
Identity Permissions
Business Criticality
Existing Compensating Controls
Privileged Container
+
Writable Host Mount
+
Production

should normally receive more attention than:

Missing Non-Security Metadata Label

Do not treat findings only as isolated problems.

Connect them.

Example:

Internet-Facing Application
Application Vulnerability
Privileged Container
Powerful ServiceAccount
Broad Network Access
Sensitive Services

Five individual findings may form:

One Critical Attack Path

For each finding define:

Finding
Priority
Owner
Action
Dependencies
Target Date
Validation Method
Status
Finding Priority Owner Action
Excessive RBAC High Platform Reduce bindings
Missing NetworkPolicy High Platform Implement segmentation
Privileged workload High App Team Harden workload
Missing runtime detection High Security Implement detections

Never close findings based only on:

Developer Says Fixed

Use:

Remediation
Collect New Evidence
Retest
Compare Requirement
Close or Reopen
Finding ID:
Original Evidence:
Remediation:
Validation Evidence:
Validation Date:
Validated By:
Result:
Closed:
Yes / No

Not every issue can be remediated immediately.

If risk is accepted:

Finding
Risk Assessment
Business Owner
Formal Approval
Expiration
Periodic Review

Risk acceptance should not become:

Permanent Ignore List

Leadership usually needs:

What Is the Overall Risk?
What Are the Top Findings?
Which Systems Are Affected?
What Could Happen?
What Must Be Fixed First?
Who Owns Remediation?

Avoid overwhelming executives with raw Kubernetes YAML.

Assessment:
Kubernetes Security & Compliance Assessment
Overall Risk:
Moderate / High / Critical
Critical Findings:
High Findings:
Medium Findings:
Key Themes:
Immediate Actions:
Strategic Improvements:
Assessment Conclusion:

Technical teams need:

Exact Resource
Namespace
Evidence
Expected State
Observed State
Risk
Remediation
Validation Procedure

Provide enough information to reproduce and remediate the issue without exposing unnecessary sensitive information.

The final evidence package may contain:

01 Scope
02 Architecture
03 Cluster Inventory
04 RBAC Evidence
05 Workload Evidence
06 Network Evidence
07 Secrets Assessment
08 Admission Policies
09 Logging Evidence
10 Runtime Security Evidence
11 Findings
12 Remediation Tracker

A one-time assessment is useful.

But Kubernetes changes constantly.

Developer
New Deployment
Platform Team
Configuration Change
Security Team
New Policy
Kubernetes
Version Upgrade

Therefore compliance should become continuous.

DEFINE
AUTOMATE
MONITOR
DETECT DRIFT
REMEDIATE
REPORT

Controls that can be reliably automated should increasingly move into:

CI/CD Checks
Admission Policies
Configuration Scanning
Cloud Security Monitoring
Runtime Detection
Compliance Dashboards

Instead of manually discovering:

Privileged Container

after deployment:

Deployment Request
Admission Policy
Reject

A compliant environment today may become non-compliant tomorrow.

Drift can occur because of:

Emergency Changes
Manual Changes
New Applications
Policy Exceptions
Cluster Upgrades
New Administrators
Configuration Errors

Continuous validation helps identify drift.

Assessment frequency should be risk-based.

Possible triggers include:

Scheduled Security Review
Major Cluster Upgrade
Production Launch
Significant Architecture Change
Security Incident
New Compliance Requirement
Acquisition or Migration
Manual Checks
Limited Standards
Few Guardrails
Documented Baseline
Regular Assessments
Assigned Owners
Policy-as-Code
Automated Validation
Central Monitoring
Continuous Compliance
Drift Detection
Integrated Evidence
Risk-Based Remediation
Security Engineering
Threat-Informed Controls
Automated Governance
Metrics-Driven Improvement

Track meaningful metrics such as:

Privileged Workloads
Workloads Running as Root
Excessive RBAC Bindings
Namespaces Without Required Network Controls
Policy Violations
Expired Exceptions
Unresolved Critical Findings
Mean Time to Remediate
Unsupported Cluster Versions
Runtime Detection Coverage

Metrics should drive action, not merely populate dashboards.

  • Environment identified
  • Cluster identified
  • Owners identified
  • Assessment boundaries documented
  • Requirements identified
  • Version reviewed
  • Architecture documented
  • Nodes reviewed
  • Namespaces reviewed
  • Managed-service responsibilities understood
  • Authentication reviewed
  • ClusterRoleBindings reviewed
  • RoleBindings reviewed
  • Privileged identities identified
  • ServiceAccounts reviewed
  • Effective permissions assessed
  • Indirect privilege considered
  • Non-root reviewed
  • Privileged workloads reviewed
  • Privilege escalation reviewed
  • Capabilities reviewed
  • Seccomp reviewed
  • Filesystem security reviewed
  • Host namespaces reviewed
  • hostPath reviewed
  • Resources reviewed
  • Image sources reviewed
  • Image versions reviewed
  • Scanning reviewed
  • Registry controls reviewed
  • Deployment pipeline reviewed
  • Network architecture documented
  • NetworkPolicies reviewed
  • Ingress reviewed
  • Egress reviewed
  • Namespace segmentation reviewed
  • Secret inventory reviewed
  • Secret RBAC reviewed
  • Storage protection reviewed
  • Rotation reviewed
  • External secret management reviewed
  • Pod security controls reviewed
  • Kyverno reviewed where applicable
  • Gatekeeper reviewed where applicable
  • Policy coverage assessed
  • Exceptions reviewed
  • Audit logging reviewed
  • Log centralization reviewed
  • Runtime monitoring reviewed
  • Detection coverage reviewed
  • Alert response reviewed
  • Incident procedures reviewed
  • Evidence availability reviewed
  • Forensic readiness reviewed
  • Recovery capability reviewed
  • Findings documented
  • Risk assigned
  • Attack paths identified
  • Remediation owners assigned
  • Executive summary prepared
  • Evidence package completed

At completion, produce:

Kubernetes Compliance Assessment Report
Control Assessment Matrix
RBAC Review
Workload Security Review
Network Security Review
Admission Policy Review
Runtime Security Review
Evidence Package
Risk Register
Remediation Tracker
Executive Summary
  1. What is a Kubernetes compliance assessment?
  2. How is compliance different from security?
  3. Why should assessment scope be defined first?
  4. What is a control matrix?
  5. What constitutes good compliance evidence?
  6. Why should assessment access preferably be read-only?
  7. How do you assess Kubernetes version risk?
  8. How do managed Kubernetes responsibilities affect assessments?
  9. What should be reviewed in ClusterRoleBindings?
  10. Why are wildcard RBAC permissions risky?
  11. What is indirect Kubernetes privilege?
  12. Why should ServiceAccounts be reviewed?
  13. What is the risk of unnecessary ServiceAccount tokens?
  14. How would you review workloads for root execution?
  15. Why are privileged containers important compliance findings?
  16. What does allowPrivilegeEscalation control?
  17. Why review Linux capabilities?
  18. Why review seccomp?
  19. What is the risk of hostPath?
  20. Why are host namespaces security-sensitive?
  21. How do Pod Security Standards support compliance?
  22. What is Pod Security Admission?
  23. Why are NetworkPolicies important?
  24. Why does a namespace not automatically provide network isolation?
  25. What is a default-deny strategy?
  26. Why should egress be reviewed?
  27. How should Kubernetes Secrets be assessed?
  28. Why is base64 not sufficient protection?
  29. Why is secret rotation important?
  30. What are admission controls?
  31. How can Kyverno support compliance?
  32. How can OPA Gatekeeper support compliance?
  33. Why must policy exceptions be governed?
  34. Why is Kubernetes audit logging important?
  35. What runtime behaviors should security teams detect?
  36. Why is runtime monitoring part of compliance readiness?
  37. What is forensic readiness?
  38. Why should backup restoration be tested?
  39. How does GitOps improve governance?
  40. Why should container-image provenance be assessed?
  41. How does cloud IAM interact with Kubernetes RBAC?
  42. What is workload identity?
  43. Why is multi-tenancy difficult in Kubernetes?
  44. How should security findings be risk-rated?
  45. What is an attack path?
  46. Why should remediation be independently validated?
  47. What is risk acceptance?
  48. What is compliance drift?
  49. What is continuous compliance?
  50. How would you present Kubernetes security risk to executives?

You should now be able to approach an unfamiliar Kubernetes environment and follow:

SCOPE
REQUIREMENTS
ARCHITECTURE
IDENTITY
WORKLOADS
NETWORK
SECRETS
ADMISSION
LOGGING
RUNTIME
INCIDENT READINESS
EVIDENCE
FINDINGS
REMEDIATION
VALIDATION

A Kubernetes compliance assessment is not:

Run Scanner
Export Findings
Done

A professional assessment is:

Understand Business Requirements
Understand Architecture
Evaluate Security Controls
Collect Defensible Evidence
Identify Real Risk
Connect Attack Paths
Prioritize Remediation
Validate Improvements

Before this runbook:

You knew how to implement
individual Kubernetes
security controls.

After this runbook:

You can systematically assess
an enterprise Kubernetes environment,
evaluate security controls,
collect evidence,
identify compliance gaps,
analyze attack paths,
document risk,
prioritize remediation,
and validate corrective actions.

You have moved from:

Kubernetes Security Implementation

to:

Kubernetes Security Assurance
and Compliance Assessment.

➡️ Runbook 02 — Kubernetes Forensics

In the next runbook, you will move from:

Is the Kubernetes Environment
Secure and Compliant?

to:

What Happened Inside
This Kubernetes Environment?

You will build a repeatable forensic workflow covering:

Incident Scoping
Timeline Reconstruction
Kubernetes Audit Logs
Pod and Container Evidence
Workload Configuration
Service Accounts
RBAC Activity
Runtime Evidence
Network Evidence
Node Evidence
Container Images
Evidence Preservation
Root Cause Analysis
Attack Path Reconstruction
Forensic Reporting

The runbook progression becomes:

Runbook 01
Kubernetes Compliance Assessment
Evaluate Security Posture
Runbook 02
Kubernetes Forensics
Reconstruct Security Events
Runbook 03
Kubernetes Incident Response
Contain and Recover

You are now ready to move from Kubernetes security assurance into Kubernetes forensic investigation.