Přeskočit na obsah
_CORE
AI & agentní systémy Podnikové informační systémy Cloud & Platform Engineering Datová platforma & integrace Bezpečnost & compliance QA, testování & observabilita IoT, automatizace & robotika Mobilní & digitální produkty Bankovnictví & finance Pojišťovnictví Veřejná správa Obrana & bezpečnost Zdravotnictví Energetika & utility Telco & média Průmysl & výroba Logistika & e-commerce Retail & věrnostní programy
Reference Technologie Blog Know-how Nástroje
O nás Spolupráce Kariéra
CS EN DE
Pojďme to probrat

Kubernetes RBAC: řízení přístupu v kontejnerovém clusteru

06. 11. 2016 Aktualizováno: 27. 03. 2026 2 min čtení CORE SYSTEMSai
Tento článek byl publikován v roce 2016. Některé informace mohou být zastaralé.
Kubernetes RBAC: řízení přístupu v kontejnerovém clusteru

Kubernetes 1.6 přináší RBAC (Role-Based Access Control) — granulární řízení přístupu k API resources. Jak navrhnout bezpečnostní model pro multi-tenant cluster.

Proč RBAC v Kubernetes

Výchozí Kubernetes instalace nemá řízení přístupu — každý s přístupem k API může dělat cokoliv. V produkčním prostředí s více týmy je to nepřijatelné.

RBAC (Role-Based Access Control) umožňuje definovat kdo (subject) může dělat co (verb) s čím (resource). Granulární oprávnění na úrovni namespace nebo celého clusteru.

Role, ClusterRole a Bindings

RBAC model má čtyři objekty:

# Role - oprávnění v namespace
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: production
  name: pod-reader
rules:
- apiGroups: [""]
  resources: ["pods", "pods/log"]
  verbs: ["get", "list", "watch"]

---
# RoleBinding - přiřazení role uživateli
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: read-pods
  namespace: production
subjects:
- kind: User
  name: [email protected]
roleRef:
  kind: Role
  name: pod-reader
  apiGroup: rbac.authorization.k8s.io

Role = oprávnění v namespace. ClusterRole = oprávnění across celý cluster. Binding = propojení role se subjektem.

Doporučený přístup pro enterprise:

  • Cluster admin** — plný přístup (jen infrastrukturní tým)
  • Namespace admin** — plný přístup v namespace týmu
  • Developer** — deploy, view logs, exec do pods ve svém namespace
  • Viewer** — read-only přístup pro monitoring a debugging

Princip nejmenších oprávnění — začněte s minimem a přidávejte podle potřeby. Auditujte oprávnění pravidelně.

Service Accounts a automatizace

Service Accounts jsou identity pro procesy (CI/CD, operátory, monitoring):

apiVersion: v1
kind: ServiceAccount
metadata:
  name: ci-deployer
  namespace: production
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: ci-deploy
  namespace: production
subjects:
- kind: ServiceAccount
  name: ci-deployer
  namespace: production
roleRef:
  kind: ClusterRole
  name: admin
  apiGroup: rbac.authorization.k8s.io

CI/CD pipeline používá service account token místo osobních credentials. Rotace tokenů a audit logování jsou best practices.

Závěr: bezpečnost jako first-class citizen

RBAC je nezbytný pro produkční Kubernetes clustery. Investujte čas do návrhu oprávněnového modelu dříve, než otevřete cluster více týmům. Princip nejmenších oprávnění, pravidelný audit a service accounts pro automatizaci jsou klíčové best practices.

kubernetesrbacbezpečnostaccess controlclusterdevops
Sdílet:

CORE SYSTEMS

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.

Potřebujete pomoc s implementací?

Naši experti vám pomohou s návrhem, implementací i provozem. Od architektury po produkci.

Kontaktujte nás
Potřebujete pomoc s implementací? Domluvit schůzku