Skip to content

Kubewarden is a policy engine for Kubernetes. It helps with keeping your Kubernetes clusters secure 🔐 and compliant ✔.

Kubewarden policies can be written using regular programming languages or Domain Specific Languages (DSL).

Policies are compiled into WebAssembly modules that are then distributed using traditional container registries.

Getting Started 📚

Check our first-stop kubewarden/community 👋 repository for information about the organization of the project.

Take a look at our documentation 📖 Stay up to date by reading our official blog 📣 and by following us on Bluesky or Mastodon.

Get in touch with us on Slack: join the kubewarden channel hosted by the official Kubernetes workspace 👨‍💻 💬 👩‍💻

Enforcing Policies 🔒

Discover ready to use policies by visiting ArtifactHub 📦

Don't forget to take a look at kwctl, our handy multi-purpose tool for managing policies 🛠️ 🧰

Writing policies 📝

Interested in writing a new policy?

Kubewarden allows you to write policies using a variety of programming languages, including Rust, Go, Rego, CEL and others.

These are some useful resources to get you started:

Useful GitHub tags :octocat: 🏷️

Use these tags to find repositories over all GitHub 🗺️ 🌌

Purpose Tag
Policy Template kubewarden-policy-template
Policy kubewarden-policy
Policy SDK kubewarden-policy-sdk

Contributing 🙌

That's fantastic news! 🥳

Check our general CONTRIBUTING.md docs.

Quick links to "core" projects:

Project Scope Language
kubewarden-controller Kubernetes integration point Go
policy-server Run Kubewarden policies Rust
kwctl Kubewarden policy multi-purpose cli tool Rust

Pinned Loading

  1. kwctl kwctl Public

    Go-to CLI tool for Kubewarden users

    Rust 79 20

  2. policy-server policy-server Public

    Webhook server that evaluates WebAssembly policies to validate Kubernetes requests

    Rust 144 20

  3. kubewarden-controller kubewarden-controller Public

    Manage admission policies in your Kubernetes cluster with ease

    Go 207 37

  4. rust-policy-template rust-policy-template Public

    A Kubewarden rust policy template to be used with cargo-generate

    Rust 9 7

  5. go-policy-template go-policy-template Public template

    A template repository to quickly scaffold a Kubewarden policy written with Go language

    Go 11 16

  6. swift-policy-template swift-policy-template Public template

    A template repository to quickly scaffold a Kubewarden policy written with Swift language

    Swift 1 1

Repositories

Showing 10 of 100 repositories
  • k8s-objects-generator Public

    CLI tool that generates Kubernetes Go types that can be used with TinyGo starting from the official OpenAPI spec

    kubewarden/k8s-objects-generator’s past year of commit activity
    Go 8 Apache-2.0 5 1 1 Updated Apr 7, 2025
  • gostubpkg Public

    gostubpkg is a tool for generating stubs of Go packages

    kubewarden/gostubpkg’s past year of commit activity
    Go 3 Apache-2.0 0 3 1 Updated Apr 7, 2025
  • strfmt Public

    A stripped down version of go-openapi/strfrm that works with TinyGo

    kubewarden/strfmt’s past year of commit activity
    Go 0 Apache-2.0 2 1 1 Updated Apr 7, 2025
  • policy-server Public

    Webhook server that evaluates WebAssembly policies to validate Kubernetes requests

    kubewarden/policy-server’s past year of commit activity
    Rust 144 Apache-2.0 20 22 1 Updated Apr 7, 2025
  • kwctl Public

    Go-to CLI tool for Kubewarden users

    kubewarden/kwctl’s past year of commit activity
    Rust 79 Apache-2.0 20 17 0 Updated Apr 7, 2025
  • audit-scanner Public

    Reports evaluation of existing Kubernetes resources with your already deployed Kubewarden policies.

    kubewarden/audit-scanner’s past year of commit activity
    Go 8 Apache-2.0 9 9 0 Updated Apr 7, 2025
  • allow-privilege-escalation-psp-policy Public

    A Kubewarden Pod Security Policy that controls usage of allowPrivilegeEscalation

    kubewarden/allow-privilege-escalation-psp-policy’s past year of commit activity
    Rust 6 Apache-2.0 7 2 0 Updated Apr 7, 2025
  • share-pid-namespace-policy Public

    Policy validates pods sharing processes PID namespace

    kubewarden/share-pid-namespace-policy’s past year of commit activity
    Rust 0 Apache-2.0 1 1 0 Updated Apr 7, 2025
  • trusted-repos-policy Public

    A Kubewarden policy that restricts what registries, tags and images can pods on your cluster refer to

    kubewarden/trusted-repos-policy’s past year of commit activity
    Rust 7 Apache-2.0 3 2 (1 issue needs help) 0 Updated Apr 7, 2025
  • capabilities-psp-policy Public

    A Pod Security Policy that controls Container Capabilities

    kubewarden/capabilities-psp-policy’s past year of commit activity
    Rust 5 Apache-2.0 7 2 0 Updated Apr 7, 2025