Získání zabezpečeného přístupu k prostředkům Azure ve službě Azure Kubernetes Service pomocí důvěryhodného přístupu
V tomto článku se dozvíte, jak získat zabezpečený přístup ke službám Azure k serveru rozhraní Kubernetes API ve službě Azure Kubernetes Service (AKS) pomocí důvěryhodného přístupu.
Funkce Důvěryhodného přístupu poskytuje službám zabezpečený přístup k serveru rozhraní API AKS pomocí back-endu Azure bez nutnosti privátního koncového bodu. Místo toho, abyste se museli spoléhat na identity, které mají oprávnění Microsoft Entra , může tato funkce použít spravovanou identitu přiřazenou systémem k ověřování pomocí spravovaných služeb a aplikací, které chcete používat s clustery AKS.
Poznámka:
Rozhraní API důvěryhodného přístupu je obecně dostupné. Poskytujeme podporu obecné dostupnosti (GA) pro Azure CLI, ale je stále ve verzi Preview a vyžaduje použití rozšíření aks-Preview.
Přehled funkcí důvěryhodného přístupu
Důvěryhodný přístup řeší následující scénáře:
- Pokud je autorizovaný rozsah IP adres nastavený nebo v privátním clusteru, nemusí mít služby Azure přístup k serveru rozhraní API Kubernetes, pokud neimplementujete model přístupu privátního koncového bodu.
- Poskytnutí přístupu správce služby Azure k rozhraní Kubernetes API nedodržuje osvědčený postup přístupu s nejnižšími oprávněními a může vést k eskalaci oprávnění nebo riziku úniku přihlašovacích údajů. Možná budete muset například implementovat oprávnění mezi službami s vysokou úrovní oprávnění a nejsou ideální v kontrole auditu.
Důvěryhodný přístup můžete použít k udělení výslovného souhlasu se spravovanou identitou přiřazenou systémem povolených prostředků pro přístup ke clusterům AKS pomocí prostředku Azure označovaného jako vazby role. Vaše prostředky Azure přistupují ke clusterům AKS prostřednictvím regionální brány AKS prostřednictvím ověřování spravované identity přiřazené systémem. Příslušná oprávnění Kubernetes se přiřazují prostřednictvím prostředku Azure označovaného jako role. Prostřednictvím důvěryhodného přístupu můžete přistupovat ke clusterům AKS s různými konfiguracemi, mezi které patří mimo jiné privátní clustery, clustery, které mají vypnuté místní účty, clustery Microsoft Entra a autorizované clustery rozsahu IP adres.
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Typy prostředků, které podporují spravovanou identitu přiřazenou systémem
- Azure CLI verze 2.53.0 nebo novější Spuštěním
az --version
vyhledejte svou verzi. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI. - Informace o rolích, které se mají použít v různých scénářích, najdete v těchto článcích:
- Ve stejném předplatném jako prostředek Azure, ke kterému chcete získat přístup ke clusteru, vytvořte cluster AKS.
Připojení ke clusteru
Nakonfigurujte kubectl
připojení ke clusteru az aks get-credentials
pomocí příkazu.
export RESOURCE_GROUP_NAME="myResourceGroup"
export CLUSTER_NAME="myClusterName"
az aks get-credentials --resource-group ${RESOURCE_GROUP_NAME} --name ${CLUSTER_NAME} --overwrite-existing
Pomocí příkazu ověřte připojení ke clusteru kubectl get
.
kubectl get nodes
Vyberte požadované role důvěryhodného přístupu.
Vybrané role závisí na službách Azure, ke kterým chcete získat přístup ke clusteru AKS. Služby Azure pomáhají vytvářet role a vazby rolí, které vytvářejí připojení ze služby Azure ke službě AKS.
Pokud chcete najít role, které potřebujete, přečtěte si dokumentaci ke službě Azure, kterou chcete připojit k AKS. Pomocí Azure CLI můžete také zobrazit seznam rolí dostupných pro službu Azure pomocí az aks trustedaccess role list --location <location>
příkazu.
Vytvoření vazby role důvěryhodného přístupu
Jakmile potvrdíte, kterou roli použít, pomocí Azure CLI vytvořte vazbu role důvěryhodného přístupu v clusteru AKS. Vazba role přidruží vybranou roli ke službě Azure.
export ROLE_BINDING_NAME="myRoleBindingName"
export SOURCE_RESOURCE_ID="mySourceResourceID"
export ROLE_NAME_1="myRoleName1"
export ROLE_NAME_2="myRoleName2"
az aks trustedaccess rolebinding create --resource-group ${RESOURCE_GROUP_NAME} --cluster-name ${CLUSTER_NAME} --name ${ROLE_BINDING_NAME} --source-resource-id ${SOURCE_RESOURCE_ID} --roles ${ROLE_NAME_1},${ROLE_NAME_2}
Výsledky:
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/${RESOURCE_GROUP_NAME}/providers/Microsoft.ContainerService/managedClusters/${CLUSTER_NAME}/trustedAccessRoleBindings/${ROLE_BINDING_NAME}",
"name": "${ROLE_BINDING_NAME}",
"provisioningState": "Succeeded",
"resourceGroup": "${RESOURCE_GROUP_NAME}",
"roles": [
"${ROLE_NAME_1}",
"${ROLE_NAME_2}"
],
"sourceResourceId": "${SOURCE_RESOURCE_ID}",
"systemData": null,
"type": "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings"
}
Aktualizace existující vazby role důvěryhodného přístupu
Pro existující vazbu role, která má přidruženou zdrojovou službu, můžete pomocí příkazu aktualizovat vazbu role s novými rolemi az aks trustedaccess rolebinding update --resource-group $RESOURCE_GROUP_NAME --cluster-name $CLUSTER_NAME --name $ROLE_BINDING_NAME --roles $ROLE_NAME_3,$ROLE_NAME_4
. Tento příkaz aktualizuje vazbu role novými rolemi, které zadáte.
Poznámka:
Správce doplňků aktualizuje clustery každých pět minut, takže může trvat až pět minut, než se nová vazba role projeví. Než se nová vazba role projeví, stávající vazba role stále funguje.
Pomocí příkazu můžete az aks trusted access rolebinding list
zkontrolovat aktuální vazbu role.
Zobrazení vazby role důvěryhodného přístupu
Pomocí příkazu zobrazte určitou vazbu role důvěryhodného az aks trustedaccess rolebinding show --name $ROLE_BINDING_NAME --resource-group $RESOURCE_GROUP_NAME --cluster-name $CLUSTER_NAME
přístupu.
Zobrazení seznamu všech vazeb rolí důvěryhodného přístupu pro cluster
Pomocí příkazu vypíšete všechny vazby rolí důvěryhodného přístupu pro cluster az aks trustedaccess rolebinding list --resource-group $RESOURCE_GROUP_NAME --cluster-name $CLUSTER_NAME
.
Související obsah
Azure Kubernetes Service