توصيل موفر هوية Azure الخاص بك إلى برنامج تشغيل CSI في Azure Key Vault Secrets Store في خدمة Azure Kubernetes (AKS)
يوفر برنامج تشغيل واجهة تخزين حاويات مخزن الأسرار (CSI) على خدمة Azure Kubernetes (AKS) أساليب مختلفة للوصول المستند إلى الهوية إلى Azure Key Vault. توضح هذه المقالة هذه الأساليب وأفضل الممارسات لمتى تستخدم نماذج أمان التحكم في الوصول استنادا إلى الدور (RBAC) أو OpenID Connect (OIDC) للوصول إلى مخزن المفاتيح الخاص بك والمجموعة AKS.
يمكنك استخدام إحدى طرق الوصول التالية:
- موصل الخدمة مع هوية حمل العمل
- هوية حمل العمل
- الهوية المُدارة التي يعيّنها المُستخدم
تعرف على كيفية الاتصال ب Azure Key Vault باستخدام برنامج تشغيل Secrets Store CSI في مجموعة Azure Kubernetes Service (AKS) باستخدام Service Connector. في هذه المقالة، تكمل المهام التالية:
- إنشاء نظام مجموعة AKS وAzure Key Vault.
- إنشاء اتصال بين نظام مجموعة AKS وAzure Key Vault باستخدام Service Connector.
SecretProviderClass
إنشاء CRD وPod
الذي يستهلك موفر CSI لاختبار الاتصال.- تنظيف الموارد
هام
تتوفر ميزات معاينة AKS على أساس الخدمة الذاتية والاشتراك. يتم توفير المعاينات "كما هي" و"كما هي متوفرة"، ويتم استبعادها من اتفاقيات مستوى الخدمة والضمان المحدود. تتم تغطية معاينات AKS جزئيًا بواسطة دعم العملاء على أساس بذل أفضل الجهود. على هذا النحو، هذه الميزات ليست مخصصة للاستخدام الإنتاجي. لمزيد من المعلومات، يُرجي الاطلاع على مقالات الدعم الآتية:
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Azure CLI. سجل الدخول باستخدام
az login
الأمر . - Docker وkubectl. لتثبيت kubectl محليا، استخدم
az aks install-cli
الأمر . - فهم أساسي للحاويات وAKS. ابدأ بإعداد تطبيق ل AKS.
- قبل البدء، تأكد من إنهاء الخطوات في استخدام موفر Azure Key Vault لبرنامج تشغيل CSI مخزن الأسرار في نظام مجموعة خدمة Azure Kubernetes (AKS) لتمكين برنامج تشغيل CSI مخزن أسرار Azure Key Vault في نظام مجموعة AKS.
الإعداد الأولي
إذا كنت تستخدم Service Connector للمرة الأولى، فابدأ بتشغيل الأمر az provider register لتسجيل موفري موارد Service Connector وKubernetes Configuration.
az provider register -n Microsoft.ServiceLinker
az provider register -n Microsoft.KubernetesConfiguration
تلميح
يمكنك التحقق مما إذا كان موفرو الموارد هؤلاء قد تم تسجيلهم بالفعل عن طريق تشغيل الأوامر
az provider show -n "Microsoft.ServiceLinker" --query registrationState
وaz provider show -n "Microsoft.KubernetesConfiguration" --query registrationState
.اختياريا، استخدم الأمر Azure CLI للحصول على قائمة بالخدمات المستهدفة المدعومة لمجموعة AKS.
az aks connection list-support-types --output table
إنشاء موارد Azure
إنشاء مجموعة موارد باستخدام
az group create
الأمر .az group create \ --name <resource-group-name> \ --location <location>
إنشاء نظام مجموعة AKS باستخدام
az aks create
الأمر . ينشئ المثال التالي مجموعة AKS أحادية العقدة مع تمكين الهوية المدارة.az aks create \ --resource-group <resource-group-name> \ --name <cluster-name> \ --enable-managed-identity \ --node-count 1
الاتصال بالمجموعة باستخدام
az aks get-credentials
الأمر .az aks get-credentials \ --resource-group <resource-group-name> \ --name <cluster-name>
إنشاء مخزن مفاتيح Azure باستخدام
az keyvault create
الأمر .az keyvault create \ --resource-group <resource-group-name> \ --name <key-vault-name> \ --location <location>
إنشاء سر في مخزن المفاتيح باستخدام
az keyvault secret set
الأمر .az keyvault secret set \ --vault-name <key-vault-name> \ --name <secret-name> \ --value <secret-value>
إنشاء اتصال خدمة في AKS باستخدام Service Connector (معاينة)
يمكنك إنشاء اتصال خدمة ب Azure Key Vault باستخدام مدخل Azure أو Azure CLI.
في مدخل Microsoft Azure، انتقل إلى مورد نظام مجموعة AKS.
من قائمة الخدمة، ضمن Settings، حدد Service Connector (Preview)>Create.
في صفحة Create connection ، قم بتكوين الإعدادات التالية في علامة التبويب Basics :
- مساحة اسم Kubernetes: حدد default.
- نوع الخدمة: حدد Key Vault وحدد خانة الاختيار لتمكين موفر Azure Key Vault CSI.
- اسم الاتصال: أدخل اسما للاتصال.
- الاشتراك: حدد الاشتراك الذي يحتوي على خزنة المفاتيح.
- Key vault: حدد key vault الذي أنشأته.
- نوع العميل: حدد بلا.
حدد Review + create، ثم حدد Create لإنشاء الاتصال.
اختبار الاتصال
استنساخ نموذج المستودع ونشر ملفات البيان
استنساخ مستودع العينة باستخدام
git clone
الأمر .git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.git
تغيير الدلائل إلى نموذج موفر Azure Key Vault CSI.
cd serviceconnector-aks-samples/azure-keyvault-csi-provider
في
secret_provider_class.yaml
الملف، استبدل العناصر النائبة التالية بمعلومات Azure Key Vault:- استبدل
<AZURE_KEYVAULT_NAME>
باسم key vault الذي أنشأته واتصلت به. - استبدل
<AZURE_KEYVAULT_TENANTID>
بمعرف المستأجر لمخزن المفاتيح. - استبدل
<AZURE_KEYVAULT_CLIENTID>
بمعرف عميل الهوية للوظيفةazureKeyvaultSecretsProvider
الإضافية. - استبدل
<KEYVAULT_SECRET_NAME>
بسر key vault الذي قمت بإنشائه. على سبيل المثال،ExampleSecret
- استبدل
SecretProviderClass
انشر CRD باستخدامkubectl apply
الأمر .kubectl apply -f secret_provider_class.yaml
Pod
نشر ملف البيان باستخدامkubectl apply
الأمر .يقوم الأمر بإنشاء جراب باسم
sc-demo-keyvault-csi
في مساحة الاسم الافتراضية لنظام مجموعة AKS.kubectl apply -f pod.yaml
تحقق من الاتصال
تحقق من إنشاء الجراب بنجاح باستخدام
kubectl get
الأمر .kubectl get pod/sc-demo-keyvault-csi
بعد بدء تشغيل جراب، يتوفر المحتوى المحمل في مسار وحدة التخزين المحدد في YAML النشر الخاص بك.
إظهار الأسرار الموجودة في مخزن الأسرار باستخدام
kubectl exec
الأمر .kubectl exec sc-demo-keyvault-csi -- ls /mnt/secrets-store/
عرض سر باستخدام
kubectl exec
الأمر .يظهر هذا الأمر المثال سر اختبار يسمى
ExampleSecret
.kubectl exec sc-demo-keyvault-csi -- cat /mnt/secrets-store/ExampleSecret
المتطلبات الأساسية لبرنامج تشغيل CSI
- قبل البدء، تأكد من إنهاء الخطوات في استخدام موفر Azure Key Vault لبرنامج تشغيل CSI مخزن الأسرار في نظام مجموعة خدمة Azure Kubernetes (AKS) لتمكين برنامج تشغيل CSI مخزن أسرار Azure Key Vault في نظام مجموعة AKS.
- يدعم هوية حمل عمل Microsoft Entra كلا من أنظمة مجموعات Windows وLinux.
الوصول باستخدام هوية حمل عمل Microsoft Entra
هوية حمل عمل Microsoft Entra هوية يستخدمها تطبيق يعمل على جراب لمصادقة نفسه مقابل خدمات Azure الأخرى، مثل أحمال العمل في البرامج. يتكامل Secret Store CSI Driver مع قدرات Kubernetes الأصلية للاتحاد مع موفري الهوية الخارجيين.
في نموذج الأمان هذا، يعمل نظام مجموعة AKS كمصدر للرمز المميز. ثم يستخدم معرف Microsoft Entra OIDC لاكتشاف مفاتيح التوقيع العامة والتحقق من صحة الرمز المميز لحساب الخدمة قبل تبادله مع رمز Microsoft Entra المميز. لكي يقوم حمل العمل الخاص بك بتبادل رمز مميز لحساب خدمة تم إسقاطه إلى وحدة التخزين الخاصة به للرمز المميز ل Microsoft Entra، تحتاج إلى مكتبة عميل Azure Identity في Azure SDK أو مكتبة مصادقة Microsoft (MSAL)
إشعار
- يحل أسلوب المصادقة هذا محل هوية Microsoft Entra pod المدارة (معاينة). تم إهمال الهوية مصدر مفتوح التي تديرها Microsoft Entra pod (معاينة) في خدمة Azure Kubernetes اعتبارا من 10/24/2022.
- يدعم هوية حمل عمل Microsoft Entra كلا من أنظمة مجموعات Windows وLinux.
تكوين هوية حمل العمل
قم بتعيين اشتراكك باستخدام
az account set
الأمر .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_ID
إنشاء هوية مدارة
az identity create
باستخدام الأمر .إشعار
تفترض هذه الخطوة أن لديك مجموعة AKS موجودة مع تمكين هوية حمل العمل. إذا لم تكن قد قمت بتمكينه، فشاهد تمكين هوية حمل العمل على مجموعة AKS موجودة لتمكينها.
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)
إنشاء تعيين دور يمنح إذن هوية حمل العمل للوصول إلى أسرار مخزن المفاتيح ومفاتيح الوصول والشهادات باستخدام
az role assignment create
الأمر .هام
- إذا تم تعيين خزنة المفاتيح الخاصة بك مع
--enable-rbac-authorization
وكنت تستخدمkey
أوcertificate
تكتب، فقم بتعيين الدور لمنح الأذوناتKey Vault Certificate User
. - إذا تم تعيين خزنة المفاتيح الخاصة بك مع
--enable-rbac-authorization
وكنت تستخدمsecret
النوع، فقم بتعيينKey Vault Secrets User
الدور. - إذا لم يتم تعيين خزنة المفاتيح الخاصة بك مع
--enable-rbac-authorization
، يمكنك استخدامaz keyvault set-policy
الأمر مع المعلمة--key-permissions get
أو--certificate-permissions get
أو--secret-permissions get
لإنشاء نهج مخزن مفاتيح لمنح حق الوصول للمفاتيح أو الشهادات أو الأسرار. على سبيل المثال:
az keyvault set-policy --name $KEYVAULT_NAME --key-permissions get --object-id $IDENTITY_OBJECT_ID
export KEYVAULT_SCOPE=$(az keyvault show --name $KEYVAULT_NAME --query id -o tsv) # Example command for key vault with RBAC enabled using `key` type az role assignment create --role "Key Vault Certificate User" --assignee $USER_ASSIGNED_CLIENT_ID --scope $KEYVAULT_SCOPE
- إذا تم تعيين خزنة المفاتيح الخاصة بك مع
احصل على عنوان URL لمجموعة AKS OIDC Issuer باستخدام
az aks show
الأمر .إشعار
تفترض هذه الخطوة أن لديك مجموعة AKS موجودة مع تمكين عنوان URL لمصدر OIDC. إذا لم يكن لديك تمكين، فشاهد تحديث نظام مجموعة AKS باستخدام مصدر OIDC لتمكينه.
export AKS_OIDC_ISSUER="$(az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --query "oidcIssuerProfile.issuerUrl" -o tsv)" echo $AKS_OIDC_ISSUER
إنشاء بيانات اعتماد هوية موحدة بين تطبيق Microsoft Entra ومصدر حساب الخدمة والموضوع. احصل على معرف الكائن لتطبيق Microsoft Entra باستخدام الأوامر التالية. تأكد من تحديث قيم
serviceAccountName
وserviceAccountNamespace
باسم حساب خدمة Kubernetes ومساحة الاسم الخاصة به.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} EOF
إنشاء بيانات اعتماد الهوية الموحدة بين الهوية المدارة ومصدر حساب الخدمة والموضوع باستخدام
az identity federated-credential create
الأمر .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}
SecretProviderClass
انشر باستخدامkubectl apply
الأمر والبرنامج النصي 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 EOF
إشعار
إذا كنت تستخدم
objectAlias
بدلا منobjectName
، فقم بتحديث البرنامج النصي YAML لحسابه.إشعار
لكي
SecretProviderClass
يعمل بشكل صحيح، تأكد من ملء Azure Key Vault بأسرار أو مفاتيح أو شهادات قبل الرجوع إليها فيobjects
القسم .نشر نموذج pod باستخدام
kubectl apply
الأمر والبرنامج النصي 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
المتطلبات الأساسية لبرنامج تشغيل CSI
- قبل البدء، تأكد من إنهاء الخطوات في استخدام موفر Azure Key Vault لبرنامج تشغيل CSI مخزن الأسرار في نظام مجموعة خدمة Azure Kubernetes (AKS) لتمكين برنامج تشغيل CSI مخزن أسرار Azure Key Vault في نظام مجموعة AKS.
الوصول باستخدام الهوية المدارة
معرف Microsoft Entra المدار هو هوية يستخدمها المسؤول للمصادقة على خدمات Azure الأخرى. تستخدم الهوية المدارة RBAC للاتحاد مع موفري الهوية الخارجيين.
في نموذج الأمان هذا، يمكنك منح حق الوصول إلى موارد مجموعتك لأعضاء الفريق أو المستأجرين الذين يشاركون دورا مدارا. يتم التحقق من الدور بحثا عن نطاق للوصول إلى keyvault وبيانات الاعتماد الأخرى. عند تمكين موفر Azure Key Vault لبرنامج تشغيل Secrets Store CSI على نظام مجموعة AKS، فإنه أنشأ هوية مستخدم.
تكوين الهوية المُدارة
الوصول إلى مخزن المفاتيح الخاص بك باستخدام
az aks show
الأمر والهوية المدارة المعينة من قبل المستخدم التي تم إنشاؤها بواسطة الوظيفة الإضافية. يجب عليك أيضا استرداد الهويةclientId
، والتي ستستخدمها في الخطوات اللاحقةSecretProviderClass
عند إنشاء .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 tsv
بدلا من ذلك، يمكنك إنشاء هوية مدارة جديدة وتعيينها إلى مجموعة مقياس الجهاز الظاهري (VM) أو لكل مثيل جهاز ظاهري في مجموعة التوفر الخاصة بك باستخدام الأوامر التالية.
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 tsv
إنشاء تعيين دور يمنح إذن الهوية للوصول إلى أسرار مخزن المفاتيح ومفاتيح الوصول والشهادات باستخدام
az role assignment create
الأمر .هام
- إذا تم تعيين خزنة المفاتيح الخاصة بك مع
--enable-rbac-authorization
وكنت تستخدمkey
أوcertificate
تكتب، فقم بتعيينKey Vault Certificate User
الدور. - إذا تم تعيين خزنة المفاتيح الخاصة بك مع
--enable-rbac-authorization
وكنت تستخدمsecret
النوع، فقم بتعيينKey Vault Secrets User
الدور. - إذا لم يتم تعيين خزنة المفاتيح الخاصة بك مع
--enable-rbac-authorization
، يمكنك استخدامaz keyvault set-policy
الأمر مع المعلمة--key-permissions get
أو--certificate-permissions get
أو--secret-permissions get
لإنشاء نهج مخزن مفاتيح لمنح حق الوصول للمفاتيح أو الشهادات أو الأسرار. على سبيل المثال:
az keyvault set-policy --name $KEYVAULT_NAME --key-permissions get --object-id $IDENTITY_OBJECT_ID
export 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 RBAC enabled using `key` type az role assignment create --role "Key Vault Certificate User" --assignee $USER_ASSIGNED_CLIENT_ID --scope $KEYVAULT_SCOPE
- إذا تم تعيين خزنة المفاتيح الخاصة بك مع
SecretProviderClass
إنشاء باستخدام YAML التالي. تأكد من استخدام القيم الخاصة بك للكائناتuserAssignedIdentityID
keyvaultName
tenantId
و لاستردادها من مخزن المفاتيح الخاص بك.# 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 vault
إشعار
إذا كنت تستخدم
objectAlias
بدلا منobjectName
، فتأكد من تحديث البرنامج النصي YAML.إشعار
لكي
SecretProviderClass
يعمل بشكل صحيح، تأكد من ملء Azure Key Vault بأسرار أو مفاتيح أو شهادات قبل الرجوع إليها فيobjects
القسم .تطبيق على
SecretProviderClass
نظام المجموعة باستخدامkubectl apply
الأمر .kubectl apply -f secretproviderclass.yaml
إنشاء جراب باستخدام 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"
تطبيق الجراب على نظام المجموعة باستخدام
kubectl apply
الأمر .kubectl apply -f pod.yaml
التحقق من صحة أسرار Key Vault
بعد بدء تشغيل جراب، يتوفر المحتوى المحمل في مسار وحدة التخزين المحدد في YAML النشر الخاص بك. استخدم الأوامر التالية للتحقق من صحة أسرارك وطباعة سر اختبار.
إظهار الأسرار المحتفظ بها في مخزن الأسرار باستخدام الأمر التالي.
kubectl exec busybox-secrets-store-inline-user-msi -- ls /mnt/secrets-store/
عرض سر في المتجر باستخدام الأمر التالي. يوضح هذا الأمر المثال سر
ExampleSecret
الاختبار .kubectl exec busybox-secrets-store-inline-user-msi -- cat /mnt/secrets-store/ExampleSecret
الحصول على الشهادات والمفاتيح
يميز تصميم Azure Key Vault تمييزاً حاداً بين المفاتيح والأسرار والشهادات. تم تصميم ميزات الشهادة لخدمة Key Vault للاستفادة من القدرات الرئيسية والسرية. عند إنشاء شهادة key vault، فإنها تنشئ مفتاحا وسرا قابلين للعنوان بنفس الاسم. يسمح هذا المفتاح بعمليات المصادقة، ويسمح السر باسترداد قيمة الشهادة كبيانات سرية.
تحتوي شهادة Key Vault أيضاً على بيانات تعريف عامة لشهادة x509. مخزن المفاتيح يخزن كلاً من المكونات العامة والخاصة لشهادتك في البيانات السرية. يمكنك الحصول على كل مكون فردي عن طريق تحديد objectType
في SecretProviderClass
. يوضح الجدول التالي الكائنات التي تم تعيينها إلى الموارد المختلفة المقترنة بالشهادة الخاصة بك:
الكائن | قيمة الإرجاع | إرجاع سلسلة شهادات كاملة |
---|---|---|
key |
المفتاح العام، بتنسيق البريد المحسن للخصوصية (PEM). | غير متوفر |
cert |
الشهادة، بتنسيق PEM. | لا |
secret |
المفتاح الخاص والشهادة، بتنسيق PEM. | نعم |
تعطيل الوظيفة الإضافية على المجموعات الموجودة
إشعار
قبل تعطيل الوظيفة الإضافية، تأكد من عدم SecretProviderClass
استخدامها. تؤدي محاولة تعطيل الوظيفة الإضافية أثناء SecretProviderClass
وجود خطأ.
قم بتعطيل موفر Azure Key Vault لإمكانية Secrets Store CSI Driver في مجموعة موجودة باستخدام
az aks disable-addons
الأمر معazure-keyvault-secrets-provider
الوظيفة الإضافية.az aks disable-addons --addons azure-keyvault-secrets-provider --resource-group myResourceGroup --name myAKSCluster
إشعار
عند تعطيل الوظيفة الإضافية، يجب ألا تواجه أحمال العمل الحالية أي مشكلات أو ترى أي تحديثات في البيانات السرية التي تم تحميلها. إذا تم إعادة تشغيل الجراب أو تم إنشاء جراب جديد كجزء من حدث توسيع النطاق، يفشل بدء تشغيل الجراب لأن برنامج التشغيل لم يعد قيد التشغيل.
الخطوات التالية
في هذه المقالة، تعلمت كيفية إنشاء هوية وتوفيرها للوصول إلى Azure Key Vault. يساعد تكامل Service Connector على تبسيط تكوين الاتصال لأحمال عمل AKS وخدمات دعم Azure. وهو يعالج بشكل آمن المصادقة وتكوينات الشبكة ويتبع أفضل الممارسات للاتصال بخدمات Azure. لمزيد من المعلومات، راجع استخدام موفر Azure Key Vault لبرنامج تشغيل CSI مخزن الأسرار في نظام مجموعة AKS ومقدمة موصل الخدمة.
إذا كنت ترغب في تكوين خيارات تكوين إضافية أو إجراء استكشاف الأخطاء وإصلاحها، فراجع خيارات التكوين واستكشاف الأخطاء وإصلاحها لموفر Azure Key Vault باستخدام برنامج تشغيل Secrets Store CSI في AKS.
Azure Kubernetes Service