اختيار طريقة تخويل الوصول إلى بيانات قائمة الانتظار باستخدام Azure CLI
يوفر Azure Storage ملحقات Azure CLI التي تمكنك من تحديد الطريقة التي تريد بها تفويض العمليات في بيانات قائمة الانتظار. يمكنك تخويل عمليات البيانات بالطرق التالية:
- باستخدام أساس أمان Microsoft Entra. توصي Microsoft باستخدام بيانات اعتماد Microsoft Entra للأمان الفائق وسهولة الاستخدام.
- باستخدام مفتاح الاختصار إلى الحساب أو الرمز المميز لتوقيع الوصول المشترك (SAS).
تحديد طريقة اعتماد عمليات البيانات
تتضمن أوامر Azure CLI لقراءة بيانات قائمة الانتظار وكتابتها المعلمة الاختيارية--auth-mode
. حدد هذه المعلمة للإشارة إلى كيفية تفويض عملية البيانات:
- قم بتعيين المعلمة
--auth-mode
لتسجيلlogin
الدخول باستخدام أساس أمان Microsoft Entra (مستحسن). - عيّن المعلمة
--auth-mode
إلى القيمة القديمةkey
لمحاولة استرداد مفتاح الاختصار إلى الحساب لاستخدامه في التخويل. إذا حذفت المعلمة--auth-mode
، فسيحاول Azure CLI أيضًا استرداد مفتاح الوصول.
لاستخدام المعلمة --auth-mode
، تأكد من تثبيت Azure CLI v2.0.46 أو إصدار أحدث. شغّل az --version
للتحقق من الإصدار المثبت لديك.
إشعار
عند تأمين حساب تخزين باستخدام قفل Azure Resource Manager للقراءة فقط، لا يُسمح بتشغيل مفاتيح القائمة لحساب التخزين هذا. إعداد قائمة بالمفاتيح هي عملية POST، ويتم منع جميع عمليات POST عند تكوين قفل للقراءة فقط للحساب. لهذا السبب، عندما يتم تأمين الحساب مع تأمين ReadOnly ، يجب على المستخدمين الذين لا يمتلكون بالفعل مفاتيح الحساب استخدام بيانات اعتماد Microsoft Entra للوصول إلى بيانات قائمة الانتظار.
هام
إذا حذفت المعلمة --auth-mode
أو عينتها إلى key
، فسيحاول Azure CLI استخدام مفتاح الاختصار إلى الحساب للتخويل. في هذه الحالة، توصي Microsoft بتوفير مفتاح الوصول إما في الأمر أو في متغير البيئة AZURE_STORAGE_KEY
. لمزيد من المعلومات عن متغيرات البيئة، راجع القسم المعنون تعيين متغيرات البيئة لمعلمات التخويل.
إذا لم توفر مفتاح الاختصار، فسيحاول Azure CLI استدعاء موفر موارد تخزين Azure لاسترداده لكل عملية. قد يؤدي تنفيذ العديد من عمليات البيانات التي تتطلب استدعاء موفر الموارد إلى التقييد. لمزيد من المعلومات حول حدود موفر الموارد، راجع قابلية التوسع وأهداف الأداء لموفر موارد Azure Storage .
تخويل باستخدام بيانات اعتماد Microsoft Entra
عند تسجيل الدخول إلى Azure CLI باستخدام بيانات اعتماد Microsoft Entra، يتم إرجاع رمز وصول OAuth 2.0. يتم استخدام هذا الرمز المميز تلقائيًا بواسطة Azure CLI لتفويض عمليات البيانات اللاحقة اعتمادًا على تخزين قائمة الانتظار. بالنسبة للعمليات المدعومة، لم تعد بحاجة إلى تمرير مفتاح حساب أو رمز SAS المميز باستخدام الأمر.
يمكنك تعيين أذونات لبيانات قائمة الانتظار إلى أساس أمان Microsoft Entra عبر التحكم في الوصول المستند إلى دور Azure (Azure RBAC). لمزيد من المعلومات حول أدوار Azure في Azure StorageK راجع إدارة حقوق الوصول إلى بيانات Azure Storage باستخدام Azure RBAC .
أذونات استدعاء عمليات البيانات
يتم دعم ملحقات Azure Storage للعمليات على بيانات قائمة الانتظار. تعتمد العمليات التي قد تستدعيها على الأذونات الممنوحة لأساس أمان Microsoft Entra الذي تقوم بتسجيل الدخول به إلى Azure CLI. تعين أذونات قوائم الانتظار عبر Azure RBAC. على سبيل المثال، إذا تم تعيين الدور قارئ بيانات قائمة انتظار التخزين، فيمكنك تشغيل أوامر البرمجة النصية التي تقرأ البيانات من قائمة الانتظار. إذا تم تعيين الدور مساهم بيانات قائمة انتظار التخزين ، فيمكنك تشغيل أوامر البرمجة النصية التي تقرأ أو تكتب أو تحذف قائمة انتظار أو البيانات التي تحتوي عليها.
للحصول على تفاصيل حول الأذونات المطلوبة لكل عملية Azure Storage، راجع عمليات تخزين المكالمات باستخدام رموز OAuth المميزة .
مثال: تخويل عملية لإنشاء قائمة انتظار باستخدام بيانات اعتماد Microsoft Entra
يوضح المثال التالي كيفية إنشاء قائمة انتظار من Azure CLI باستخدام بيانات اعتماد Microsoft Entra. لإنشاء قائمة الانتظار، ستحتاج إلى تسجيل الدخول إلى Azure CLI، وستحتاج إلى مجموعة موارد وحساب تخزين.
قبل إنشاء قائمة الانتظار، قم بتعيين دور مساهم بيانات قائمة انتظار التخزين لنفسك. على الرغم من أنك مالك الحساب، فأنت بحاجة إلى أذونات صريحة لإجراء عمليات البيانات على حساب التخزين. لمزيد من المعلومات حول تعيين أدوار Azure، راجع تعيين دور Azure للوصول إلى بيانات قائمة الانتظار .
هام
قد تستغرق تعيينات الأدوار في Azure بضع دقائق.
az storage queue create
قم باستدعاء الأمر مع تعيين المعلمة--auth-mode
إلىlogin
لإنشاء قائمة الانتظار باستخدام بيانات اعتماد Microsoft Entra. تذكر استبدال قيم العناصر النائبة بين أقواس الزاوية بالقيم الخاصة بك:az storage queue create \ --account-name <storage-account> \ --name sample-queue \ --auth-mode login
تخويل باستخدام مفتاح الاختصار إلى الحساب
إذا كنت تمتلك مفتاح الحساب، يمكنك استدعاء أي عملية بيانات Azure Storage. بشكل عام، يكون استخدام مفتاح الحساب أقل أماناً. في حالة اختراق مفتاح الحساب، فقد يتم اختراق جميع البيانات الموجودة في حسابك.
يوضح المثال التالي طريقة إنشاء قائمة انتظار باستخدام مفتاح الوصول إلى الحساب. حدد مفتاح الحساب، وقدم المعلمة--auth-mode
بالقيمةkey
:
az storage queue create \
--account-name <storage-account> \
--name sample-queue \
--account-key <key>
--auth-mode key
التخويل باستخدام رمز SAS المميز
إذا كنت تمتلك رمز SAS المميز، يمكنك استدعاء عمليات البيانات التي يسمح بها SAS. يوضح المثال التالي طريقة إنشاء قائمة انتظار باستخدام رمز SAS المميز:
az storage queue create \
--account-name <storage-account> \
--name sample-queue \
--sas-token <token>
ضبط متغيرات البيئة لمعلمات التفويض
يمكنك تحديد معلمات التخويل في متغيرات البيئة لتجنب تضمينها في كل استدعاء لعملية بيانات Azure Storage. يصف الجدول التالي متغيرات البيئة المتوفرة.
متغير البيئة | الوصف |
---|---|
AZURE_STORAGE_ACCOUNT | اسم حساب التخزين. يجب استخدام هذا المتغير بالاقتران مع مفتاح حساب التخزين أو رمز SAS المميز. إذا لم يكن أي منهما موجودا، يحاول Azure CLI استرداد مفتاح الوصول إلى حساب التخزين باستخدام حساب Microsoft Entra المصادق عليه. إذا تم تشغيل عدد كبير من الأوامر في وقت واحد، فقد يتم الوصول إلى حد تقييد موفر موارد Azure Storage. لمزيد من المعلومات حول حدود موفر الموارد، راجع قابلية التوسع وأهداف الأداء لموفر موارد Azure Storage . |
AZURE_STORAGE_KEY | مفتاح حساب التخزين. يجب استخدام هذا المتغير بالاقتران مع اسم حساب التخزين. |
AZURE_STORAGE_CONNECTION_STRING | تشمل سلسلة الاتصال مفتاح حساب التخزين أو رمز SAS. يجب استخدام هذا المتغير بالاقتران مع اسم حساب التخزين. |
AZURE_STORAGE_SAS_TOKEN | رمز مميز لتوقيع الوصول المشترك (SAS). يجب استخدام هذا المتغير بالاقتران مع اسم حساب التخزين. |
AZURE_STORAGE_AUTH_MODE | وضع التخويل الذي سيتم من خلاله تشغيل الأمر. القيم المسموح بها login (مستحسن) أو key . إذا قمت بتحديد login ، يستخدم Azure CLI بيانات اعتماد Microsoft Entra لتخويل عملية البيانات. إذا حددت الوضع القديم key ، فسيحاول Azure CLI الاستعلام عن مفتاح الاختصار إلى الحساب وتخويل الأمر باستخدام المفتاح. |