Bevilja åtkomst till Azure Kubernetes Fleet Manager-resurser med rollbaserad åtkomstkontroll i Azure

Rollbaserad åtkomstkontroll i Azure (Azure RBAC) är ett auktoriseringssystem som bygger på Azure Resource Manager och som ger detaljerad åtkomsthantering till Azure-resurser.

Den här artikeln innehåller en översikt över de olika inbyggda Azure RBAC-roller som du kan använda för att komma åt Azure Kubernetes Fleet Manager-resurser (Kubernetes Fleet).

Kontrollplan

Den här rollen ger åtkomst till Azure Resource Manager-resurser (ARM) fleet-resurser och underresurser och gäller både Kubernetes Fleet-resurs med och utan ett hubbkluster.

Rollnamn beskrivning Användning
Azure Kubernetes Fleet Manager-deltagare Den här rollen ger läs- och skrivåtkomst till Azure-resurser som tillhandahålls av Azure Kubernetes Fleet Manager, inklusive flottor, medlemmar i flottan, uppdateringsstrategier för flottan, uppdateringskörningar för flottan med mera. Du kan använda den här rollen för att bevilja deltagarbehörigheter som endast gäller för Kubernetes Fleet-resurser och underresurser. Den här rollen kan till exempel ges till en Azure-administratör som har till uppgift att definiera och underhålla fleet-resurser.
Användarroll för Azure Kubernetes Fleet Manager Hub-kluster Den här rollen ger skrivskyddad åtkomst till Fleet Manager-hubbklustret samt Kubernetes-konfigurationsfilen för att ansluta till det hanterade navklustret för flottan. Du kan visa Fleet Manager-resurser och ladda ned hubbklustrets kubeconfig för att inspektera konfigurationer och arbetsbelastningar utan att göra några ändringar.

Dataplanet

De här rollerna ger åtkomst till Kubernetes-objekt för Fleet Hub och gäller därför endast för Kubernetes Fleet-resurser med ett hubbkluster.

Du kan tilldela dataplansroller i Fleet Hub-klusteromfånget eller i ett enskilt Kubernetes-namnområdesomfång genom att lägga /namespace/<namespace> till rolltilldelningsomfånget.

Rollnamn beskrivning Användning
RBAC-läsare för Azure Kubernetes Fleet Manager Ger skrivskyddad åtkomst till de flesta Kubernetes-resurser i ett namnområde i det flotthanterade hubbklustret. Det tillåter inte visning av roller eller rollbindningar. Den här rollen tillåter inte visning av hemligheter eftersom läsning av innehållet i Hemligheter ger åtkomst till ServiceAccount autentiseringsuppgifter i namnområdet, vilket skulle ge API-åtkomst som alla ServiceAccount i namnområdet (en form av eskalering av privilegier). Om du använder den här rollen i klusteromfånget får du åtkomst till alla namnområden. Du kan använda den här rollen för att ge möjlighet att läsa valda meningslösa Kubernetes-objekt i antingen namnområde eller klusteromfång. Du kan till exempel bevilja den här rollen i granskningssyfte.
Azure Kubernetes Fleet Manager RBAC Writer Ger läs- och skrivåtkomst till de flesta Kubernetes-resurser i ett namnområde i det flotthanterade hubbklustret. Den här rollen tillåter inte visning eller ändring av roller eller rollbindningar. Den här rollen tillåter dock åtkomst till hemligheter som alla ServiceAccount i namnområdet, så den kan användas för att få API-åtkomstnivåerna för alla ServiceAccount i namnområdet. Om du använder den här rollen i klusteromfånget får du åtkomst till alla namnområden. Du kan använda den här rollen för att ge möjlighet att skriva valda Kubernetes-objekt i antingen namnområde eller klusteromfång. Till exempel för användning av ett projektteam som ansvarar för objekt i ett visst namnområde.
RBAC-administratör för Azure Kubernetes Fleet Manager Ger läs- och skrivåtkomst till Kubernetes-resurser i ett namnområde i det vagnparkshanterade hubbklustret. Ger skrivbehörigheter för de flesta objekt inom ett namnområde, förutom själva ResourceQuota objektet och själva namnområdesobjektet. Om du använder den här rollen i klusteromfånget får du åtkomst till alla namnområden. Du kan använda den här rollen för att ge möjlighet att administrera valda Kubernetes-objekt (inklusive roller och rollbindningar) i antingen namnområde eller klusteromfång. Till exempel för användning av ett projektteam som ansvarar för objekt i ett visst namnområde.
Azure Kubernetes Fleet Manager RBAC-klusteradministratör Ger läs-/skrivåtkomst till alla Kubernetes-resurser i det vagnparkshanterade hubbklustret. Du kan använda den här rollen för att ge åtkomst till alla Kubernetes-objekt (inklusive CRD:er) i antingen namnrymden eller klusteromfånget.
Azure Kubernetes Fleet Manager RBAC-läsare för medlemskluster Åtkomst på enbart läsbar nivå till de flesta objekt i namnområdet på medlemsklustret. Det går inte att visa roller eller rollbindningar. Det går inte att visa hemligheter (förhindrar behörighetseskalering via autentiseringsuppgifter för ServiceAccount). Du kan använda den här rollen för att ge möjlighet att läsa valda meningslösa Kubernetes-objekt i namnområdets omfång för medlemmar i flottan.
Azure Kubernetes Fleet Manager RBAC Writer för medlemskluster Läs- och skrivåtkomst till de flesta Kubernetes-resurser i namnområdet. Det går inte att visa eller ändra roller eller rollbindningar. Kan läsa hemligheter (kan därför förutsätta alla ServiceAccount i namnområdet). Du kan använda den här rollen för att ge möjlighet att skriva valda Kubernetes-objekt i ett namnområde på en medlem i flottan. Till exempel för användning av ett projektteam som ansvarar för objekt i ett visst namnområde.
Azure Kubernetes Fleet Manager RBAC-administratör för medlemskluster Läs- och skrivåtkomst till Kubernetes-resurser i namnområdet i medlemsklustret. Du kan använda den här rollen för att ge möjlighet att administrera valda Kubernetes-objekt (inklusive roller och rollbindningar) i namnområdesomfånget för medlemmar i flottan. Till exempel för användning av ett projektteam som ansvarar för objekt i ett visst namnområde.
Azure Kubernetes Fleet Manager RBAC-klusteradministratör för medlemskluster Fullständig läs-/skrivåtkomst till alla Kubernetes-resurser i medlemskluster i en flotta. Du använder den här rollen för att ge fullständig åtkomst till alla resurser i medlemskluster. Till exempel en plattformsadministratör som behöver åtkomst till flera namnområden i medlemskluster.

Exempel på rolltilldelningar

Du kan bevilja Azure RBAC-roller med hjälp av Azure CLI. Om du till exempel vill skapa en rolltilldelning i Kubernetes Fleet Hub-klusteromfånget:

IDENTITY=$(az ad signed-in-user show --output tsv --query id)
FLEET_ID=$(az fleet show --resource-group $GROUP --name $FLEET --output tsv --query id)

az role assignment create --role 'Azure Kubernetes Fleet Manager RBAC Reader' --assignee "$IDENTITY" --scope "$FLEET_ID"

Du kan också omfångsbegränsa rolltilldelningar till ett enskilt Kubernetes-namnområde. Om du till exempel vill skapa en rolltilldelning för kubernetes Fleet-hubbens standardnamnområde för Kubernetes:

IDENTITY=$(az ad signed-in-user show --output tsv --query id)
FLEET_ID=$(az fleet show --resource-group $GROUP --name $FLEET --output tsv --query id)

az role assignment create --role 'Azure Kubernetes Fleet Manager RBAC Reader' --assignee "$IDENTITY" --scope "$FLEET_ID/namespaces/default"