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 Twitter.

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?

  1. Checkout the step-by-step tutorials inside of our documentation 📖
  2. Add kwctl to your toolbox 🛠️ 🧰
  3. Pick one of the languages from below
Language Project Template SDK Validation Mutation Maturity
Rust :octocat: :octocat: ✔️ ✔️ 🔝
Go (TinyGo) :octocat: :octocat: ✔️ ✔️ ↗️
Swift :octocat: :octocat: ✔️ ✔️ ↗️
Rego - Open Policy Agent :octocat: Rego built-ins ✔️ 🔝
Rego - Gatekeeper :octocat: Rego built-ins ✔️ 🔝
DotNet :octocat: ✔️ ✔️ ↗️

Can't find your favorite language? 🔍 Reach out to us and let's have a chat!

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 71 15

  2. policy-server policy-server Public

    Webhook server that evaluates WebAssembly policies to validate Kubernetes requests

    Rust 134 17

  3. kubewarden-controller kubewarden-controller Public

    Manage admission policies in your Kubernetes cluster with ease

    Go 184 30

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

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

    Rust 8 6

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

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

    Go 9 15

  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 93 repositories
  • kubecon-24-eu-kubewarden Public

    Experiment for Kubewarden booth at Kubecon EU 2024

    kubewarden/kubecon-24-eu-kubewarden’s past year of commit activity
    JavaScript 1 Apache-2.0 2 1 14 Updated Jul 26, 2024
  • policy-server Public

    Webhook server that evaluates WebAssembly policies to validate Kubernetes requests

    kubewarden/policy-server’s past year of commit activity
    Rust 134 Apache-2.0 17 14 1 Updated Jul 26, 2024
  • 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 6 Apache-2.0 8 9 1 Updated Jul 26, 2024
  • kubewarden-controller Public

    Manage admission policies in your Kubernetes cluster with ease

    kubewarden/kubewarden-controller’s past year of commit activity
    Go 184 Apache-2.0 30 70 2 Updated Jul 26, 2024
  • raw-validation-wasi-policy Public

    Demo policy showing how to write a raw WASI validating policy

    kubewarden/raw-validation-wasi-policy’s past year of commit activity
    Go 0 Apache-2.0 1 1 1 Updated Jul 26, 2024
  • kyverno-dsl-policy Public

    [Experimental] Reuse Kyverno policies with Kubewarden

    kubewarden/kyverno-dsl-policy’s past year of commit activity
    Go 1 Apache-2.0 1 3 0 Updated Jul 26, 2024
  • 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 Jul 26, 2024
  • pod-privileged-policy Public

    A Kubewarden Policy that limits the ability to create privileged containers

    kubewarden/pod-privileged-policy’s past year of commit activity
    Rust 8 Apache-2.0 6 1 0 Updated Jul 26, 2024
  • docs Public

    Kubewarden's documentation

    kubewarden/docs’s past year of commit activity
    MDX 11 CC-BY-4.0 22 13 2 Updated Jul 26, 2024
  • raw-mutation-wasi-policy Public

    Demo policy showing how to write a raw WASI mutation policy

    kubewarden/raw-mutation-wasi-policy’s past year of commit activity
    Go 0 Apache-2.0 1 1 0 Updated Jul 26, 2024