Skip to main content
This is the complete set of IAM actions — 184 actions across 36 services. Use it to write policy statements; see Permissions model for how matching works.

How to read this page

Every row is an action and the KRN template the request is checked against. Braces mark values filled in from the request:
{?supervisor} resolves to * when the query parameter is absent — so those routes are checked against krn:vks:supervisor:*:.... Any policy meant to restrict them must be scoped by the other segments, not by the supervisor.
Where a row lists more than one KRN, different routes share the action at different scopes. A policy needs to cover whichever one the route you care about uses.

Wildcards

Not on this page

A handful of routes bypass IAM entirely and cannot be granted or denied by policy: the health check, the /auth/* endpoints, and everything under /api/iam/me/ — your own permissions, groups, and API tokens. The MCP endpoint at /mcp is authorized per tool instead. Routes that appear in neither place are unmapped, and unmapped routes are denied outright when IAM_ENABLED=true.

Actions by service

ai

The assistant and its stored conversations.

app

Platform application definitions — the catalog rendered onto clusters.

argocd

Argo CD discovery and onboarding.

argocd-appset

Argo CD ApplicationSets.

audit-log

capi

Cluster API provider installation and status, including ClusterClasses and addons.

ceph

Rook-Ceph discovery, status, and operator install.

certs

cert-manager, its issuers, and the certificates they hold.

cilium

The CNI itself — install, configuration, BGP, egress HA — and projects, whose routes are gated by these same actions.
cilium:Install also covers installing the FRR-K8s BGP engine, and cilium:Apply covers project create/update/delete and FRR configuration. There is no separate project:* or frrk8s:* service.

cloud-init-template

Reusable cloud-init documents for VM provisioning.

cluster

Tenant cluster lifecycle and reads. Note the three credential actions.
cluster:GetKubeconfig, cluster:GetTalosconfig, and cluster:GetSshPassword hand out working credentials for the tenant cluster. They are deliberately excluded from K8sGateOperator and K8sGateViewer — grant them through K8sGateSensitiveRead to named people.

cluster-addon

Addon definitions and their per-cluster enablement.

cluster-template

The blueprints cluster creation renders from.

database

discovery

Read-only lookups that populate form dropdowns. Denying these leaves creation forms empty rather than returning an obvious error.

domain

DNS domains available for ingress and gateway publication.

gateway

Gateway API objects, listeners, TLS secrets, and the Envoy Gateway controller.

gitlab-app

GitOps application entries committed to the GitLab repository.

helm-release

Helm releases inside a tenant cluster.

iam

Policies, groups, and group membership. Granting any of these is granting the ability to grant.
iam:AttachGroupPolicy plus iam:AddGroupMember is effectively full access: the holder can attach K8sGateAdmin to a group and add themselves to it.

kubeconfig

Supervisor kubeconfigs stored in the database.
kubeconfig:Download returns admin credentials for a supervisor, not a tenant cluster. Only K8sGateAdmin carries it among the built-in policies.

monitoring

The observability stack — Prometheus, Loki, Alloy, ClickHouse, and the flow pipeline all share these two actions.

oidc

platform

registry

Container registries and per-supervisor image buckets.

repository

Git repositories backing GitOps flows.

secrets

The secret store integration — Vault and External Secrets Operator.

settings

Global platform settings — a single resource, not per-supervisor.

site

Physical locations that supervisors and registries are tagged with.

storage

Storage drivers, storage classes, disks, and Rook.
storage:InstallDriver also covers wiping disks during Rook preparation. It is not a read-adjacent permission.

supervisor

The supervisor itself — summary, refresh, bootstrap, onboarding, power profile.

sysprep-template

Windows sysprep documents for VM provisioning.

vcluster

virt

KubeVirt and the snapshot controller.

vm

Virtual machine lifecycle and console access.
vm:VncProxy grants interactive console access to a running VM — keyboard and screen, with no further authentication. It is included in K8sGateOperator but not in K8sGateViewer.

vm-cloudinit-template

Built-in policies

These are reconciled at startup and cannot be edited in the UI. To vary them, write a custom policy and attach both.

Permissions model

How actions and KRNs are matched.

Authentication & IAM

Groups, OIDC claim mapping, and the first admin.