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 31

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

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

    Rust 8 7

  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
  • docs Public

    Kubewarden's documentation

    kubewarden/docs’s past year of commit activity
    MDX 11 CC-BY-4.0 22 13 1 Updated Aug 8, 2024
  • kwctl Public

    Go-to CLI tool for Kubewarden users

    kubewarden/kwctl’s past year of commit activity
    Rust 71 Apache-2.0 15 18 2 Updated Aug 8, 2024
  • policy-evaluator Public

    Crate used by Kubewarden that is able to evaluate policies with a given input, request to evaluate and settings.

    kubewarden/policy-evaluator’s past year of commit activity
    Rust 15 Apache-2.0 9 21 0 Updated Aug 8, 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 0 Updated Aug 8, 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 Aug 8, 2024
  • rancher-kubectl-builder Public

    Workflow to rebuild and sign rancher/kubectl image

    kubewarden/rancher-kubectl-builder’s past year of commit activity
    Shell 1 2 1 4 Updated Aug 7, 2024
  • go-wasi-context-aware-test-policy Public

    A test context-aware policy written using Go Wasi

    kubewarden/go-wasi-context-aware-test-policy’s past year of commit activity
    Go 1 Apache-2.0 1 1 0 Updated Aug 7, 2024
  • go-wasi-policy-template Public template

    Template of a plain WASI policy written using Go

    kubewarden/go-wasi-policy-template’s past year of commit activity
    Go 0 Apache-2.0 1 1 1 Updated Aug 7, 2024
  • load-testing Public

    HTTP load to stress policy-server

    kubewarden/load-testing’s past year of commit activity
    Python 1 Apache-2.0 1 4 (2 issues need help) 0 Updated Aug 7, 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 Aug 7, 2024