تشغيل أوامر PowerShell باستخدام بيانات اعتماد Microsoft Entra للوصول إلى بيانات الكائن الثنائي كبير الحجم

يوفر Azure Storage ملحقات ل PowerShell تمكنك من تسجيل الدخول وتشغيل أوامر البرمجة النصية باستخدام بيانات اعتماد Microsoft Entra. عند تسجيل الدخول إلى PowerShell باستخدام بيانات اعتماد Microsoft Entra، يتم إرجاع رمز وصول OAuth 2.0. يتم استخدام هذا الرمز المميز تلقائيًا بواسطة PowerShell للسماح بعمليات البيانات اللاحقة ضد تخزين Blob. بالنسبة للعمليات المدعومة، لم تعد بحاجة إلى تمرير مفتاح حساب أو رمز SAS المميز باستخدام الأمر.

يمكنك تعيين أذونات لبيانات الكائن الثنائي كبير الحجم إلى أساس أمان Microsoft Entra عبر التحكم في الوصول المستند إلى دور Azure (Azure RBAC). لمزيد من المعلومات عن تعيين أدوار Azure، راجع تعيين دور Azure للوصول إلى بيانات الكائن الثنائي كبير الحجم.

العمليات المدعومة

يتم دعم ملحقات Azure Storage للعمليات على بيانات البيانات الثنائية الكبيرة. تعتمد العمليات التي قد تتصل بها على الأذونات الممنوحة لمدير أمان Microsoft Entra الذي تقوم بتسجيل الدخول به إلى PowerShell. يتم تعيين أذونات حاويات تخزين Azure عبر التحكم في الوصول استناداً إلى الدور الخاص بـAzure. على سبيل المثال، إذا تم تعيين دور Blob Data Reader لك، فيمكنك تشغيل أوامر البرمجة النصية التي تقرأ البيانات من الحاوية. إذا تم تعيين دور Blob Data Contributor لك، فيمكنك تشغيل أوامر البرمجة النصية التي تقرأ أو تكتب أو تحذف حاوية أو البيانات التي تحتوي عليها.

للحصول على تفاصيل عن الأذونات المطلوبة لكل عملية Azure Storage على حاوية، راجع استدعاء عمليات تخزين باستخدام رموز OAuth المميزة.

هام

عند تأمين حساب تخزين باستخدام قفل Azure Resource Manager للقراءة فقط، لا يُسمح بتشغيل مفاتيح القائمة لحساب التخزين هذا. إعداد قائمة بالمفاتيح هي عملية POST، ويتم منع جميع عمليات POST عند تكوين قفل للقراءة فقط للحساب. لهذا السبب، عندما يتم تأمين الحساب مع تأمين ReadOnly ، يجب على المستخدمين الذين لا يمتلكون بالفعل مفاتيح الحساب استخدام بيانات اعتماد Microsoft Entra للوصول إلى بيانات الكائن الثنائي كبير الحجم. في PowerShell، قم بتضمين المعلمة -UseConnectedAccount لإنشاء كائن AzureStorageContext باستخدام بيانات اعتماد Microsoft Entra.

استدعاء أوامر PowerShell باستخدام بيانات اعتماد Microsoft Entra

لاستخدام Azure PowerShell لتسجيل الدخول وتشغيل العمليات اللاحقة مقابل تخزين Azure باستخدام بيانات اعتماد Microsoft Entra، أنشئ سياق تخزين للإشارة إلى حساب التخزين، وقم بتضمين المعلمة -UseConnectedAccount .

يوضح المثال التالي كيفية إنشاء حاوية في حساب تخزين جديد من Azure PowerShell باستخدام بيانات اعتماد Microsoft Entra. تذكر استبدال قيم العناصر النائبة بين أقواس الزاوية بالقيم الخاصة بك:

  1. سجّل الدخول إلى حسابك في Azure باستخدام أمر Connect-AzAccount:

    Connect-AzAccount
    

    لمزيد من المعلومات حول تسجيل الدخول في Azure باستخدام PowerShell، راجع تسجيل الدخول باستخدام Azure PowerShell.

  2. أنشئ مجموعة موارد Azure عن طريق استدعاء New-AzResourceGroup.

    $resourceGroup = "sample-resource-group-ps"
    $location = "eastus"
    New-AzResourceGroup -Name $resourceGroup -Location $location
    
  3. أنشئ حساب تخزين عن طريق استدعاء New-AzStorageAccount.

    $storageAccount = New-AzStorageAccount -ResourceGroupName $resourceGroup `
      -Name "<storage-account>" `
      -SkuName Standard_LRS `
      -Location $location `
      -AllowBlobPublicAccess $false
    
  4. احصل على سياق حساب التخزين الذي يحدد حساب التخزين الجديد عن طريق استدعاء New-AzStorageContext. عند العمل على حساب تخزين، يمكنك الرجوع إلى السياق بدلاً من تمرير بيانات الاعتماد بشكل متكرر. قم بتضمين المعلمة -UseConnectedAccount لاستدعاء أي عمليات بيانات لاحقة باستخدام بيانات اعتماد Microsoft Entra:

    $ctx = New-AzStorageContext -StorageAccountName "<storage-account>" -UseConnectedAccount
    
  5. وقبل إنشاء الحاوية، عيّن نفسك في دور "Storage Blob Data Contributor". على الرغم من أنك مالك الحساب، فأنت بحاجة إلى أذونات صريحة لإجراء عمليات البيانات على حساب التخزين. لمزيد من المعلومات حول تعيين أدوار Azure، راجع تعيين دور Azure للوصول إلى بيانات الكائن الثنائي كبير الحجم.

    هام

    قد تستغرق تعيينات الأدوار في Azure بضع دقائق.

  6. قم بإنشاء حاوية عن طريق استدعاء New-AzStorageContainer. نظرا لأن هذا الاستدعاء يستخدم السياق الذي تم إنشاؤه في الخطوات السابقة، يتم إنشاء الحاوية باستخدام بيانات اعتماد Microsoft Entra.

    $containerName = "sample-container"
    New-AzStorageContainer -Name $containerName -Context $ctx
    

الخطوات التالية