Sdílet prostřednictvím


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

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 .