Kubernetes Security

Audit Kubernetes RBAC, enforce policies, and manage secrets. Use for security reviews, permission audits, policy enforcement with Kyverno/Gatekeeper, and secret management.

Rohit Ghumare

@rohitg00

Install

$ openclaw skills install @rohitg00/k8s-security

Kubernetes Security

Security auditing, RBAC management, and policy enforcement using kubectl-mcp-server tools.

Requires the cilium, istio, policy, security toolsets: start kubectl-mcp-server with --toolsets default,cilium,istio,policy,security (or MCP_TOOLSETS=default,cilium,istio,policy,security). For deep work, the project-maintained MCP servers may fit better: Kyverno: https://github.com/nirmata/kyverno-mcp.

When to Apply

Use this skill when:

  • User mentions: "security", "RBAC", "permissions", "policy", "audit", "secrets"
  • Operations: security review, permission check, policy enforcement
  • Keywords: "who can", "access control", "compliance", "vulnerable"

Priority Rules

PriorityRuleImpactTools
1Check cluster-admin bindings firstCRITICALkubectl_get
2Audit secrets access permissionsCRITICALReview role rules
3Verify network isolationHIGHanalyze_network_policies
4Check policy complianceHIGHkyverno_*, gatekeeper_*
5Review pod security contextsMEDIUMkubectl_describe

Quick Reference

TaskToolExample
List roleskubectl_getkubectl_get(resource_type="roles", namespace)
Cluster roleskubectl_getkubectl_get(resource_type="clusterroles")
Role bindingskubectl_getkubectl_get(resource_type="roles", namespace)
Service accountskubectl_getkubectl_get(resource_type="serviceaccounts", namespace)
Kyverno policiesget_policy_listget_policy_list()

RBAC Auditing

List Roles and Bindings

kubectl_get(resource_type="roles", namespace)
kubectl_get(resource_type="clusterroles")
kubectl_get(resource_type="roles", namespace)
kubectl_get(resource_type="clusterroles")

Check Service Account Permissions

kubectl_get(resource_type="serviceaccounts", namespace)

Common RBAC Patterns

PatternRisk LevelCheck
cluster-admin bindingCriticalkubectl_get(resource_type="clusterroles")
Wildcard verbs (*)HighReview role rules
secrets accessHighCheck get/list on secrets
pod/execHighAllows container access

See RBAC-PATTERNS.md for detailed patterns and remediation.

Policy Enforcement

Kyverno Policies

get_policy_list(namespace)
get_policy_list()
get_policy(name, namespace)

OPA Gatekeeper

get_policy_list()
get_policy(kind, name)
get_policy_list()

Common Policies to Enforce

PolicyPurpose
Disallow privilegedPrevent root containers
Require resource limitsPrevent resource exhaustion
Restrict host namespacesIsolate from node
Require labelsEnsure metadata
Allowed registriesControl image sources

Secret Management

List Secrets

kubectl_get(resource_type="secrets", namespace)

Secret Best Practices

  1. Use external secret managers (Vault, AWS SM)
  2. Encrypt secrets at rest (EncryptionConfiguration)
  3. Limit secret access via RBAC
  4. Rotate secrets regularly

Network Policies

List Policies

analyze_network_policies(namespace)

Cilium Network Policies

cilium_list_policies(namespace)
cilium_get_policy(name, namespace)

Default Deny Template

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-all
spec:
  podSelector: {}
  policyTypes:
  - Ingress
  - Egress

Security Scanning Workflow

  1. RBAC Audit

    kubectl_get(resource_type="clusterroles")
    kubectl_get(resource_type="roles", namespace)
    
  2. Policy Compliance

    get_policy_list()
    get_policy_list()
    
  3. Network Isolation

    analyze_network_policies(namespace)
    cilium_list_endpoints(namespace)
    
  4. Pod Security

    kubectl_get(resource_type="pods", namespace)
    kubectl_describe(name, namespace)
    

Multi-Cluster Security

Audit across clusters:

kubectl_get(resource_type="clusterroles", context="production")
kubectl_get(resource_type="clusterroles", context="staging")

Automated Audit Script

For comprehensive security audit, see scripts/audit-rbac.py.

Related Tools

  • RBAC: kubectl_get, kubectl_get, kubectl_get
  • Policy: kyverno_*, gatekeeper_*
  • Network: analyze_network_policies, cilium_policies_*
  • Istio: istio_authorizationpolicies_list, istio_peerauthentications_list

Related Skills

Top skills in this category