Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Sterownik interfejsu CSI (Container Storage Interface) magazynu wpisów tajnych w usłudze Azure Kubernetes Service (AKS) zapewnia różne metody dostępu opartego na tożsamościach do usługi Azure Key Vault. W tym artykule przedstawiono metody i najlepsze praktyki dotyczące tego, kiedy używać Azure role-based access control (Azure RBAC) lub modeli zabezpieczeń OpenID Connect (OIDC) w celu uzyskania dostępu do magazynu kluczy i klastra AKS.
Możesz użyć jednej z następujących metod dostępu:
- Łącznik usługi z tożsamością zarządzaną
- Tożsamość obciążeń
- Tożsamość zarządzana przypisana przez użytkownika
Dowiedz się, jak nawiązać połączenie z usługą Azure Key Vault za pomocą sterownika CSI magazynu wpisów tajnych w klastrze usługi Azure Kubernetes Service (AKS) przy użyciu łącznika usługi. W tym artykule wykonasz następujące zadania:
- Utwórz klaster usługi AKS i usługę Azure Key Vault.
- Utwórz połączenie między klastrem AKS a usługą Azure Key Vault za pomocą łącznika usługi Service Connector.
- Utwórz identyfikator
SecretProviderClassCRD i elementPod, który używa dostawcy CSI do testowania połączenia. - Wyczyść zasoby.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
-
Interfejs wiersza polecenia platformy Azure. Zaloguj się przy użyciu
az loginpolecenia . -
Docker i kubectl. Aby zainstalować narzędzie kubectl lokalnie, użyj
az aks install-clipolecenia . - Podstawowa wiedza na temat kontenerów i usługi AKS. Rozpocznij pracę, przygotowując aplikację dla usługi AKS.
- Przed rozpoczęciem upewnij się, że wykonasz kroki opisane w artykule Używanie dostawcy usługi Azure Key Vault dla sterownika CSI magazynu wpisów tajnych w klastrze usługi Azure Kubernetes Service (AKS), aby włączyć sterownik CSI magazynu wpisów tajnych usługi Azure Key Vault w klastrze usługi AKS.
Początkowa konfiguracja
Jeśli używasz łącznika usługi po raz pierwszy, uruchom polecenie az provider register , aby zarejestrować dostawców zasobów usługi Service Connector i Kubernetes Configuration.
az provider register -n Microsoft.ServiceLinkeraz provider register -n Microsoft.KubernetesConfigurationNapiwek
Możesz sprawdzić, czy ci dostawcy zasobów zostali już zarejestrowani, uruchamiając polecenia
az provider show -n "Microsoft.ServiceLinker" --query registrationStateiaz provider show -n "Microsoft.KubernetesConfiguration" --query registrationState.Opcjonalnie użyj polecenia interfejsu wiersza polecenia platformy Azure, aby uzyskać listę obsługiwanych usług docelowych dla klastra usługi AKS.
az aks connection list-support-types --output table
Tworzenie zasobów platformy Azure
Utwórz grupę zasobów przy użyciu
az group createpolecenia .az group create \ --name <resource-group-name> \ --location <location>Utwórz klaster usługi AKS przy użyciu
az aks createpolecenia . Poniższy przykład tworzy klaster usługi AKS z jednym węzłem z włączoną tożsamością zarządzaną.az aks create \ --resource-group <resource-group-name> \ --name <cluster-name> \ --enable-managed-identity \ --node-count 1Połącz się z klastrem
az aks get-credentialsprzy użyciu polecenia .az aks get-credentials \ --resource-group <resource-group-name> \ --name <cluster-name>Utwórz magazyn kluczy platformy
az keyvault createAzure przy użyciu polecenia .az keyvault create \ --resource-group <resource-group-name> \ --name <key-vault-name> \ --location <location>Utwórz wpis tajny w magazynie kluczy przy użyciu
az keyvault secret setpolecenia .az keyvault secret set \ --vault-name <key-vault-name> \ --name <secret-name> \ --value <secret-value>
Tworzenie połączenia usługi w usłudze AKS za pomocą łącznika usługi
Połączenie usługi z usługą Azure Key Vault można utworzyć przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.
W witrynie Azure Portal przejdź do zasobu klastra usługi AKS.
W menu usługi w obszarze Ustawienia wybierz pozycję Service Connector>Utwórz.
Na stronie Tworzenie połączenia skonfiguruj następujące ustawienia na karcie Podstawowe :
- Przestrzeń nazw kubernetes: wybierz wartość domyślną.
- Typ usługi: wybierz pozycję Key Vault i zaznacz pole wyboru, aby włączyć dostawcę CSI usługi Azure Key Vault.
- Nazwa połączenia: wprowadź nazwę połączenia.
- Subskrypcja: wybierz subskrypcję zawierającą magazyn kluczy.
- Magazyn kluczy: wybierz utworzony magazyn kluczy.
- Typ klienta: wybierz pozycję Brak.
Wybierz pozycję Przejrzyj i utwórz, a następnie wybierz pozycję Utwórz , aby utworzyć połączenie.
Testowanie połączenia
Klonowanie przykładowego repozytorium i wdrażanie plików manifestu
Sklonuj przykładowe repozytorium przy użyciu
git clonepolecenia .git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.gitZmień katalogi na przykład dostawcy CSI usługi Azure Key Vault.
cd serviceconnector-aks-samples/azure-keyvault-csi-providersecret_provider_class.yamlW pliku zastąp następujące symbole zastępcze informacjami o usłudze Azure Key Vault:- Zastąp
<AZURE_KEYVAULT_NAME>ciąg nazwą utworzonego i połączonego magazynu kluczy. - Zastąp element
<AZURE_KEYVAULT_TENANTID>identyfikatorem dzierżawy magazynu kluczy. - Zastąp element
<AZURE_KEYVAULT_CLIENTID>identyfikatoremazureKeyvaultSecretsProviderklienta tożsamości dodatku. - Zastąp ciąg
<KEYVAULT_SECRET_NAME>utworzonym wpisem tajnym magazynu kluczy. Na przykładExampleSecret.
- Zastąp
Wdróż crD
SecretProviderClassprzy użyciukubectl applypolecenia .kubectl apply -f secret_provider_class.yamlWdróż plik manifestu
Podkubectl applyprzy użyciu polecenia .Polecenie tworzy zasobnik o nazwie
sc-demo-keyvault-csiw domyślnej przestrzeni nazw klastra usługi AKS.kubectl apply -f pod.yaml
Weryfikowanie połączenia
Sprawdź, czy zasobnik został pomyślnie utworzony przy użyciu
kubectl getpolecenia .kubectl get pod/sc-demo-keyvault-csiPo uruchomieniu zasobnika jest dostępna instalowana zawartość na ścieżce woluminu określonej w wdrożeniu YAML.
Pokaż wpisy tajne przechowywane w magazynie wpisów tajnych przy użyciu
kubectl execpolecenia .kubectl exec sc-demo-keyvault-csi -- ls /mnt/secrets-store/Wyświetl wpis tajny przy użyciu
kubectl execpolecenia .To przykładowe polecenie wyświetla wpis tajny testowy o nazwie
ExampleSecret.kubectl exec sc-demo-keyvault-csi -- cat /mnt/secrets-store/ExampleSecret
Wymagania wstępne dotyczące sterownika CSI
- Przed rozpoczęciem upewnij się, że wykonasz kroki opisane w artykule Używanie dostawcy usługi Azure Key Vault dla sterownika CSI magazynu wpisów tajnych w klastrze usługi Azure Kubernetes Service (AKS), aby włączyć sterownik CSI magazynu wpisów tajnych usługi Azure Key Vault w klastrze usługi AKS.
- Tożsamość obciążeń Microsoft Entra obsługuje zarówno klastry systemu Windows, jak i Linux.
Dostęp za pomocą Tożsamość obciążeń Microsoft Entra
Tożsamość obciążeń Microsoft Entra to tożsamość używana przez aplikację działającą w zasobniku do uwierzytelniania się w innych usługach platformy Azure, takich jak obciążenia w oprogramowaniu. Sterownik CSI magazynu wpisów tajnych integruje się z natywnymi możliwościami platformy Kubernetes w celu federacji z zewnętrznymi dostawcami tożsamości.
W tym modelu zabezpieczeń klaster usługi AKS działa jako wystawca tokenu. Następnie identyfikator Entra firmy Microsoft używa identyfikatora OIDC do odnajdywania publicznych kluczy podpisywania i weryfikowania autentyczności tokenu konta usługi przed wymianą go na token entra firmy Microsoft. Aby obciążenie wymieniało token konta usługi przewidywany na jego wolumin dla tokenu Entra firmy Microsoft, potrzebna jest biblioteka klienta tożsamości platformy Azure w zestawie Azure SDK lub biblioteka Microsoft Authentication Library (MSAL)
Uwaga
- Ta metoda uwierzytelniania zastępuje tożsamość zarządzaną zasobnika firmy Microsoft (wersja zapoznawcza). Tożsamość typu open source Microsoft Entra zarządzana przez pod (wersja przedpremierowa) w usłudze Azure Kubernetes Service została uznana za przestarzałą od 24 października 2022 r.
- Tożsamość obciążeń Microsoft Entra obsługuje zarówno klastry systemu Windows, jak i Linux.
Konfigurowanie tożsamości obciążenia
Ustaw subskrypcję przy użyciu
az account setpolecenia .export SUBSCRIPTION_ID=<subscription id> export RESOURCE_GROUP=<resource group name> export UAMI=<name for user assigned identity> export KEYVAULT_NAME=<existing keyvault name> export CLUSTER_NAME=<aks cluster name> az account set --subscription $SUBSCRIPTION_IDUtwórz tożsamość zarządzaną przy użyciu
az identity createpolecenia .Uwaga
W tym kroku założono, że masz istniejący klaster usługi AKS z włączoną tożsamością obciążenia. Jeśli tożsamość obciążenia nie jest włączona, zobacz Włączanie tożsamości obciążenia w istniejącym klastrze usługi AKS , aby ją włączyć.
az identity create --name $UAMI --resource-group $RESOURCE_GROUP export USER_ASSIGNED_CLIENT_ID="$(az identity show --resource-group $RESOURCE_GROUP --name $UAMI --query 'clientId' -o tsv)" export IDENTITY_TENANT=$(az aks show --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --query identity.tenantId -o tsv)Utwórz przypisanie roli, które przyznaje tożsamości obciążenia uprawnienia dostępu do wpisów tajnych magazynu kluczy, kluczy dostępu i certyfikatów przy użyciu
az role assignment createpolecenia .Ważne
- Jeśli magazyn kluczy jest ustawiony na
--enable-rbac-authorizationwartość i używaszkeylubcertificatewpisz, przypiszKey Vault Certificate Userrolę, aby nadać uprawnienia. - Jeśli magazyn kluczy jest ustawiony z
--enable-rbac-authorizationtypem i używaszsecretgo, przypiszKey Vault Secrets Userrolę. - Jeśli magazyn kluczy nie jest ustawiony
--enable-rbac-authorizationza pomocą polecenia , możesz użyćaz keyvault set-policypolecenia z parametrem--key-permissions get,--certificate-permissions getlub--secret-permissions get, aby utworzyć zasady magazynu kluczy w celu udzielenia dostępu dla kluczy, certyfikatów lub wpisów tajnych. Na przykład:
az keyvault set-policy --name $KEYVAULT_NAME --key-permissions get --object-id $IDENTITY_OBJECT_IDexport KEYVAULT_SCOPE=$(az keyvault show --name $KEYVAULT_NAME --query id -o tsv) # Example command for key vault with Azure RBAC enabled using `key` type az role assignment create --role "Key Vault Certificate User" --assignee $USER_ASSIGNED_CLIENT_ID --scope $KEYVAULT_SCOPE- Jeśli magazyn kluczy jest ustawiony na
Pobierz adres URL wystawcy OIDC klastra
az aks showusługi AKS przy użyciu polecenia .Uwaga
W tym kroku założono, że masz istniejący klaster usługi AKS z włączonym adresem URL wystawcy OIDC. Jeśli adres URL wystawcy OIDC nie jest włączony, zobacz Aktualizowanie klastra usługi AKS za pomocą wystawcy OIDC w celu jego włączenia.
export AKS_OIDC_ISSUER="$(az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --query "oidcIssuerProfile.issuerUrl" -o tsv)" echo $AKS_OIDC_ISSUERUstanów poświadczenia tożsamości federacyjnej między aplikacją Microsoft Entra, wystawcą konta usługi i tematem. Pobierz identyfikator obiektu aplikacji Microsoft Entra przy użyciu następujących poleceń. Pamiętaj, aby zaktualizować wartości dla
serviceAccountNameiserviceAccountNamespaceprzy użyciu nazwy konta usługi Kubernetes i jego przestrzeni nazw.export SERVICE_ACCOUNT_NAME="workload-identity-sa" # sample name; can be changed export SERVICE_ACCOUNT_NAMESPACE="default" # can be changed to namespace of your workload cat <<EOF | kubectl apply -f - apiVersion: v1 kind: ServiceAccount metadata: annotations: azure.workload.identity/client-id: ${USER_ASSIGNED_CLIENT_ID} name: ${SERVICE_ACCOUNT_NAME} namespace: ${SERVICE_ACCOUNT_NAMESPACE} EOFUtwórz poświadczenia tożsamości federacyjnej między tożsamością zarządzaną, wystawcą konta usługi i podmiotem
az identity federated-credential createprzy użyciu polecenia .export FEDERATED_IDENTITY_NAME="aksfederatedidentity" # can be changed as needed az identity federated-credential create --name $FEDERATED_IDENTITY_NAME --identity-name $UAMI --resource-group $RESOURCE_GROUP --issuer ${AKS_OIDC_ISSUER} --subject system:serviceaccount:${SERVICE_ACCOUNT_NAMESPACE}:${SERVICE_ACCOUNT_NAME}SecretProviderClassWdróż element przy użyciukubectl applypolecenia i następującego skryptu YAML.cat <<EOF | kubectl apply -f - # This is a SecretProviderClass example using workload identity to access your key vault apiVersion: secrets-store.csi.x-k8s.io/v1 kind: SecretProviderClass metadata: name: azure-kvname-wi # needs to be unique per namespace spec: provider: azure parameters: usePodIdentity: "false" clientID: "${USER_ASSIGNED_CLIENT_ID}" # Setting this to use workload identity keyvaultName: ${KEYVAULT_NAME} # Set to the name of your key vault cloudName: "" # [OPTIONAL for Azure] if not provided, the Azure environment defaults to AzurePublicCloud objects: | array: - | objectName: secret1 # Set to the name of your secret objectType: secret # object types: secret, key, or cert objectVersion: "" # [OPTIONAL] object versions, default to latest if empty - | objectName: key1 # Set to the name of your key objectType: key objectVersion: "" tenantId: "${IDENTITY_TENANT}" # The tenant ID of the key vault EOFUwaga
Jeśli używasz
objectAliaszamiastobjectName, zaktualizuj skrypt YAML, aby go uwzględnić.Uwaga
Aby element
SecretProviderClassto działał prawidłowo, przed odwoływaniem się do nich wobjectssekcji upewnij się, że usługa Azure Key Vault zostanie wypełniona wpisami tajnymi, kluczami lub certyfikatami.Wdróż przykładowy zasobnik przy użyciu
kubectl applypolecenia i następującego skryptu YAML.cat <<EOF | kubectl apply -f - # This is a sample pod definition for using SecretProviderClass and workload identity to access your key vault kind: Pod apiVersion: v1 metadata: name: busybox-secrets-store-inline-wi labels: azure.workload.identity/use: "true" spec: serviceAccountName: "workload-identity-sa" containers: - name: busybox image: registry.k8s.io/e2e-test-images/busybox:1.29-4 command: - "/bin/sleep" - "10000" volumeMounts: - name: secrets-store01-inline mountPath: "/mnt/secrets-store" readOnly: true volumes: - name: secrets-store01-inline csi: driver: secrets-store.csi.k8s.io readOnly: true volumeAttributes: secretProviderClass: "azure-kvname-wi" EOF
Wymagania wstępne dotyczące sterownika CSI
- Przed rozpoczęciem upewnij się, że wykonasz kroki opisane w artykule Używanie dostawcy usługi Azure Key Vault dla sterownika CSI magazynu wpisów tajnych w klastrze usługi Azure Kubernetes Service (AKS), aby włączyć sterownik CSI magazynu wpisów tajnych usługi Azure Key Vault w klastrze usługi AKS.
Dostęp za pomocą tożsamości zarządzanej
Identyfikator zarządzany firmy Microsoft Entra to tożsamość używana przez administratora do uwierzytelniania się w innych usługach platformy Azure. Tożsamość zarządzana używa Azure RBAC do federacji z zewnętrznymi dostawcami tożsamości.
W tym modelu zabezpieczeń można udzielić dostępu do zasobów klastra członkom zespołu lub dzierżawcom udostępniającym rolę zarządzaną. Rola jest sprawdzana pod kątem zakresu dostępu do magazynu kluczy i innych poświadczeń. Po włączeniu dostawcy usługi Azure Key Vault dla sterownika CSI magazynu wpisów tajnych w klastrze usługi AKS została utworzona tożsamość użytkownika.
Konfigurowanie tożsamości zarządzanej
Uzyskaj dostęp do magazynu kluczy przy użyciu
az aks showpolecenia i przypisanej przez użytkownika tożsamości zarządzanej utworzonej przez dodatek. Należy również pobrać dane tożsamościclientId, które są używane w kolejnych krokach przy tworzeniu obiektuSecretProviderClass.az aks show --resource-group <resource-group> --name <cluster-name> --query addonProfiles.azureKeyvaultSecretsProvider.identity.objectId -o tsv az aks show --resource-group <resource-group> --name <cluster-name> --query addonProfiles.azureKeyvaultSecretsProvider.identity.clientId -o tsvAlternatywnie możesz utworzyć nową tożsamość zarządzaną i przypisać ją do zestawu skalowania maszyny wirtualnej lub do każdego wystąpienia maszyny wirtualnej w zestawie dostępności przy użyciu następujących poleceń.
az identity create --resource-group <resource-group> --name <identity-name> az vmss identity assign --resource-group <resource-group> --name <agent-pool-vmss> --identities <identity-resource-id> az vm identity assign --resource-group <resource-group> --name <agent-pool-vm> --identities <identity-resource-id> az identity show --resource-group <resource-group> --name <identity-name> --query 'clientId' -o tsvUtwórz przypisanie roli, które przyznaje tożsamości uprawnienie dostępu do wpisów tajnych magazynu kluczy, kluczy dostępu i certyfikatów przy użyciu
az role assignment createpolecenia .Ważne
- Jeśli magazyn kluczy jest ustawiony przy
--enable-rbac-authorizationużyciu i używaszkeylubcertificatetypu, przypiszKey Vault Certificate Userrolę. - Jeśli magazyn kluczy jest ustawiony z
--enable-rbac-authorizationtypem i używaszsecretgo, przypiszKey Vault Secrets Userrolę. - Jeśli magazyn kluczy nie jest ustawiony
--enable-rbac-authorizationza pomocą polecenia , możesz użyćaz keyvault set-policypolecenia z parametrem--key-permissions get,--certificate-permissions getlub--secret-permissions get, aby utworzyć zasady magazynu kluczy w celu udzielenia dostępu dla kluczy, certyfikatów lub wpisów tajnych. Na przykład:
az keyvault set-policy --name $KEYVAULT_NAME --key-permissions get --object-id $IDENTITY_OBJECT_IDexport IDENTITY_OBJECT_ID="$(az identity show --resource-group <resource-group> --name <identity-name> --query 'principalId' -o tsv)" export KEYVAULT_SCOPE=$(az keyvault show --name <key-vault-name> --query id -o tsv) # Example command for key vault with Azure RBAC enabled using `key` type az role assignment create --role "Key Vault Certificate User" --assignee $USER_ASSIGNED_CLIENT_ID --scope $KEYVAULT_SCOPE- Jeśli magazyn kluczy jest ustawiony przy
Utwórz element
SecretProviderClassprzy użyciu następującego kodu YAML. Pamiętaj, aby użyć własnych wartości dlauserAssignedIdentityIDobiektów , ,keyvaultNametenantIdi do pobrania z magazynu kluczy.# This is a SecretProviderClass example using user-assigned identity to access your key vault apiVersion: secrets-store.csi.x-k8s.io/v1 kind: SecretProviderClass metadata: name: azure-kvname-user-msi spec: provider: azure parameters: usePodIdentity: "false" useVMManagedIdentity: "true" # Set to true for using managed identity userAssignedIdentityID: <client-id> # Set the clientID of the user-assigned managed identity to use keyvaultName: <key-vault-name> # Set to the name of your key vault cloudName: "" # [OPTIONAL for Azure] if not provided, the Azure environment defaults to AzurePublicCloud objects: | array: - | objectName: secret1 objectType: secret # object types: secret, key, or cert objectVersion: "" # [OPTIONAL] object versions, default to latest if empty - | objectName: key1 objectType: key objectVersion: "" tenantId: <tenant-id> # The tenant ID of the key vaultUwaga
Jeśli używasz
objectAliaszamiastobjectName, pamiętaj o zaktualizowaniu skryptu YAML.Uwaga
Aby element
SecretProviderClassto działał prawidłowo, przed odwoływaniem się do nich wobjectssekcji upewnij się, że usługa Azure Key Vault zostanie wypełniona wpisami tajnymi, kluczami lub certyfikatami.Zastosuj element do klastra
SecretProviderClasskubectl applyprzy użyciu polecenia .kubectl apply -f secretproviderclass.yamlUtwórz zasobnik przy użyciu następującego kodu YAML.
# This is a sample pod definition for using SecretProviderClass and the user-assigned identity to access your key vault kind: Pod apiVersion: v1 metadata: name: busybox-secrets-store-inline-user-msi spec: containers: - name: busybox image: registry.k8s.io/e2e-test-images/busybox:1.29-4 command: - "/bin/sleep" - "10000" volumeMounts: - name: secrets-store01-inline mountPath: "/mnt/secrets-store" readOnly: true volumes: - name: secrets-store01-inline csi: driver: secrets-store.csi.k8s.io readOnly: true volumeAttributes: secretProviderClass: "azure-kvname-user-msi"Zastosuj zasobnik do klastra
kubectl applyprzy użyciu polecenia .kubectl apply -f pod.yaml
Weryfikowanie wpisów tajnych usługi Key Vault
Po uruchomieniu zasobnika jest dostępna instalowana zawartość na ścieżce woluminu określonej w wdrożeniu YAML. Użyj następujących poleceń, aby zweryfikować wpisy tajne i wydrukować wpis tajny testowy.
Pokaż wpisy tajne przechowywane w magazynie wpisów tajnych przy użyciu następującego polecenia.
kubectl exec busybox-secrets-store-inline-user-msi -- ls /mnt/secrets-store/Wyświetl wpis tajny w magazynie przy użyciu następującego polecenia. W tym przykładowym poleceniu jest wyświetlany wpis tajny
ExampleSecrettestu .kubectl exec busybox-secrets-store-inline-user-msi -- cat /mnt/secrets-store/ExampleSecret
Uzyskiwanie certyfikatów i kluczy
Projekt usługi Azure Key Vault umożliwia ostre rozróżnienie między kluczami, wpisami tajnymi i certyfikatami. Funkcje certyfikatów usługi Key Vault zostały zaprojektowane tak, aby korzystały z funkcji kluczy i wpisów tajnych. Podczas tworzenia certyfikatu magazynu kluczy tworzy on adresowy klucz i wpis tajny o tej samej nazwie. Ten klucz umożliwia operacje uwierzytelniania, a wpis tajny umożliwia pobieranie wartości certyfikatu jako wpisu tajnego.
Certyfikat magazynu kluczy zawiera również publiczne metadane certyfikatu x509. Magazyn kluczy przechowuje zarówno składniki publiczne, jak i prywatne certyfikatu w kluczu tajnym. Każdy składnik można uzyskać, określając element w objectTypeelemencie SecretProviderClass . W poniższej tabeli przedstawiono obiekty mapowania na różne zasoby skojarzone z certyfikatem:
| Objekt | Wartość zwracana | Zwraca cały łańcuch certyfikatów |
|---|---|---|
key |
Klucz publiczny w formacie PEM (Privacy Enhanced Mail). | Nie dotyczy |
cert |
Certyfikat w formacie PEM. | Nie. |
secret |
Klucz prywatny i certyfikat w formacie PEM. | Tak |
Wyłączanie dodatku w istniejących klastrach
Uwaga
Przed wyłączeniem dodatku upewnij się, że nieSecretProviderClass jest używany. Próba wyłączenia dodatku, gdy SecretProviderClass element istnieje, powoduje wystąpienie błędu.
Wyłącz dostawcę usługi Azure Key Vault dla funkcji sterownika CSI magazynu wpisów tajnych w istniejącym klastrze przy użyciu az aks disable-addons polecenia z dodatkiem azure-keyvault-secrets-provider .
az aks disable-addons --addons azure-keyvault-secrets-provider --resource-group myResourceGroup --name myAKSCluster
Uwaga
Po wyłączeniu dodatku istniejące obciążenia nie powinny mieć problemów ani nie wyświetlać żadnych aktualizacji w zainstalowanych wpisach tajnych. Jeśli zasobnik zostanie uruchomiony ponownie lub nowy zasobnik zostanie utworzony w ramach zdarzenia skalowania w górę, nie można uruchomić zasobnika, ponieważ sterownik nie jest już uruchomiony.
Następne kroki
W tym artykule przedstawiono sposób tworzenia i udostępniania tożsamości w celu uzyskania dostępu do usługi Azure Key Vault. Integracja łącznika usług pomaga uprościć konfigurację połączenia dla obciążeń usługi AKS i usług zaplecza platformy Azure. Bezpiecznie obsługuje konfiguracje uwierzytelniania i sieci oraz postępuje zgodnie z najlepszymi rozwiązaniami dotyczącymi nawiązywania połączenia z usługami platformy Azure. Aby uzyskać więcej informacji, zobacz Use the Azure Key Vault provider for Secrets Store CSI Driver in an AKS cluster and the Service Connector introduction (Używanie dostawcy usługi Azure Key Vault dla sterownika CSI magazynu wpisów tajnych w klastrze AKS) i wprowadzenie do łącznika usługi Service Connector.
Jeśli chcesz skonfigurować dodatkowe opcje konfiguracji lub wykonać rozwiązywanie problemów, zobacz Opcje konfiguracji i rozwiązywanie problemów z zasobami dla dostawcy usługi Azure Key Vault za pomocą sterownika CSI magazynu wpisów tajnych w usłudze AKS.