Azure RBAC på Azure Arc-aktiverade Kubernetes-kluster
Kubernetes ClusterRoleBinding- och RoleBinding-objekttyper hjälper till att definiera auktorisering i Kubernetes internt. Med rollbaserad åtkomstkontroll i Azure (Azure RBAC) kan du använda Microsoft Entra-ID och rolltilldelningar i Azure för att kontrollera auktoriseringskontroller i klustret. På så sätt kan fördelarna med Azure-rolltilldelningar, till exempel aktivitetsloggar som visar alla Azure RBAC-ändringar i en Azure-resurs, användas med ditt Azure Arc-aktiverade Kubernetes-kluster.
Arkitektur
För att dirigera alla åtkomstkontroller för auktorisering till auktoriseringstjänsten i Azure distribueras en webhook-server (guard) i klustret.
Klustret apiserver
är konfigurerat för att använda webhook-tokenautentisering och webhook-auktorisering så att TokenAccessReview
och SubjectAccessReview
begäranden dirigeras till guard webhook-servern. Begäranden TokenAccessReview
och SubjectAccessReview
utlöses av begäranden för Kubernetes-resurser som skickas till apiserver
.
Guard anropar checkAccess
sedan auktoriseringstjänsten i Azure för att se om den begärande Microsoft Entra-entiteten har åtkomst till resursen.
Om entiteten har en roll som tillåter den här åtkomsten skickas ett allowed
svar från auktoriseringstjänsten för att skydda. Guard skickar i sin tur ett allowed
svar till , apiserver
vilket gör det möjligt för den anropande entiteten att komma åt den begärda Kubernetes-resursen.
Om entiteten inte har en roll som tillåter den här åtkomsten skickas ett denied
svar från auktoriseringstjänsten för att skydda. Guard skickar ett denied
svar till apiserver
, vilket ger den anropande entiteten ett 403-förbjudet fel på den begärda resursen.
Nästa steg
- Använd vår snabbstart för att ansluta ett Kubernetes-kluster till Azure Arc.
- Konfigurera Azure RBAC i ditt Azure Arc-aktiverade Kubernetes-kluster.