توصيل موفر هوية 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 جزئيًا بواسطة دعم العملاء على أساس بذل أفضل الجهود. على هذا النحو، هذه الميزات ليست مخصصة للاستخدام الإنتاجي. لمزيد من المعلومات، يُرجي الاطلاع على مقالات الدعم الآتية:

المتطلبات الأساسية

الإعداد الأولي

  1. إذا كنت تستخدم 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.

  2. اختياريا، استخدم الأمر Azure CLI للحصول على قائمة بالخدمات المستهدفة المدعومة لمجموعة AKS.

    az aks connection list-support-types --output table
    

إنشاء موارد Azure

  1. إنشاء مجموعة موارد باستخدام az group create الأمر .

    az group create \
        --name <resource-group-name> \
        --location <location>
    
  2. إنشاء نظام مجموعة AKS باستخدام az aks create الأمر . ينشئ المثال التالي مجموعة AKS أحادية العقدة مع تمكين الهوية المدارة.

    az aks create \
        --resource-group <resource-group-name> \
        --name <cluster-name> \
        --enable-managed-identity \
        --node-count 1
    
  3. الاتصال بالمجموعة باستخدام az aks get-credentials الأمر .

    az aks get-credentials \
        --resource-group <resource-group-name> \
        --name <cluster-name>
    
  4. إنشاء مخزن مفاتيح Azure باستخدام az keyvault create الأمر .

    az keyvault create \
        --resource-group <resource-group-name> \  
        --name <key-vault-name> \
        --location <location>
    
  5. إنشاء سر في مخزن المفاتيح باستخدام 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.

  1. في مدخل Microsoft Azure، انتقل إلى مورد نظام مجموعة AKS.

  2. من قائمة الخدمة، ضمن Settings، حدد Service Connector (Preview)>Create.

  3. في صفحة Create connection ، قم بتكوين الإعدادات التالية في علامة التبويب Basics :

    • مساحة اسم Kubernetes: حدد default.
    • نوع الخدمة: حدد Key Vault وحدد خانة الاختيار لتمكين موفر Azure Key Vault CSI.
    • اسم الاتصال: أدخل اسما للاتصال.
    • الاشتراك: حدد الاشتراك الذي يحتوي على خزنة المفاتيح.
    • Key vault: حدد key vault الذي أنشأته.
    • نوع العميل: حدد بلا.
  4. حدد Review + create، ثم حدد Create لإنشاء الاتصال.

اختبار الاتصال

استنساخ نموذج المستودع ونشر ملفات البيان

  1. استنساخ مستودع العينة باستخدام git clone الأمر .

    git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.git
    
  2. تغيير الدلائل إلى نموذج موفر Azure Key Vault CSI.

    cd serviceconnector-aks-samples/azure-keyvault-csi-provider
    
  3. في 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
  4. SecretProviderClass انشر CRD باستخدام kubectl apply الأمر .

    kubectl apply -f secret_provider_class.yaml
    
  5. Pod نشر ملف البيان باستخدام kubectl apply الأمر .

    يقوم الأمر بإنشاء جراب باسم sc-demo-keyvault-csi في مساحة الاسم الافتراضية لنظام مجموعة AKS.

    kubectl apply -f pod.yaml
    

تحقق من الاتصال

  1. تحقق من إنشاء الجراب بنجاح باستخدام kubectl get الأمر .

    kubectl get pod/sc-demo-keyvault-csi
    

    بعد بدء تشغيل جراب، يتوفر المحتوى المحمل في مسار وحدة التخزين المحدد في YAML النشر الخاص بك.

  2. إظهار الأسرار الموجودة في مخزن الأسرار باستخدام kubectl exec الأمر .

    kubectl exec sc-demo-keyvault-csi -- ls /mnt/secrets-store/
    
  3. عرض سر باستخدام kubectl exec الأمر .

    يظهر هذا الأمر المثال سر اختبار يسمى ExampleSecret.

    kubectl exec sc-demo-keyvault-csi -- cat /mnt/secrets-store/ExampleSecret
    

المتطلبات الأساسية لبرنامج تشغيل CSI

الوصول باستخدام هوية حمل عمل 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.

تكوين هوية حمل العمل

  1. قم بتعيين اشتراكك باستخدام 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
    
  2. إنشاء هوية مدارة 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)
    
  3. إنشاء تعيين دور يمنح إذن هوية حمل العمل للوصول إلى أسرار مخزن المفاتيح ومفاتيح الوصول والشهادات باستخدام 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
    
  4. احصل على عنوان 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
    
  5. إنشاء بيانات اعتماد هوية موحدة بين تطبيق 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
    
  6. إنشاء بيانات اعتماد الهوية الموحدة بين الهوية المدارة ومصدر حساب الخدمة والموضوع باستخدام 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}
    
  7. 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 القسم .

  8. نشر نموذج 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

الوصول باستخدام الهوية المدارة

معرف Microsoft Entra المدار هو هوية يستخدمها المسؤول للمصادقة على خدمات Azure الأخرى. تستخدم الهوية المدارة RBAC للاتحاد مع موفري الهوية الخارجيين.

في نموذج الأمان هذا، يمكنك منح حق الوصول إلى موارد مجموعتك لأعضاء الفريق أو المستأجرين الذين يشاركون دورا مدارا. يتم التحقق من الدور بحثا عن نطاق للوصول إلى keyvault وبيانات الاعتماد الأخرى. عند تمكين موفر Azure Key Vault لبرنامج تشغيل Secrets Store CSI على نظام مجموعة AKS، فإنه أنشأ هوية مستخدم.

تكوين الهوية المُدارة

  1. الوصول إلى مخزن المفاتيح الخاص بك باستخدام 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
    
  2. إنشاء تعيين دور يمنح إذن الهوية للوصول إلى أسرار مخزن المفاتيح ومفاتيح الوصول والشهادات باستخدام 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
    
  3. SecretProviderClass إنشاء باستخدام YAML التالي. تأكد من استخدام القيم الخاصة بك للكائنات userAssignedIdentityIDkeyvaultNametenantIdو لاستردادها من مخزن المفاتيح الخاص بك.

    # 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 القسم .

  4. تطبيق على SecretProviderClass نظام المجموعة باستخدام kubectl apply الأمر .

    kubectl apply -f secretproviderclass.yaml
    
  5. إنشاء جراب باستخدام 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"
    
  6. تطبيق الجراب على نظام المجموعة باستخدام kubectl apply الأمر .

    kubectl apply -f pod.yaml
    

التحقق من صحة أسرار Key Vault

بعد بدء تشغيل جراب، يتوفر المحتوى المحمل في مسار وحدة التخزين المحدد في YAML النشر الخاص بك. استخدم الأوامر التالية للتحقق من صحة أسرارك وطباعة سر اختبار.

  1. إظهار الأسرار المحتفظ بها في مخزن الأسرار باستخدام الأمر التالي.

    kubectl exec busybox-secrets-store-inline-user-msi -- ls /mnt/secrets-store/
    
  2. عرض سر في المتجر باستخدام الأمر التالي. يوضح هذا الأمر المثال سر 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.