تخويل الوصول إلى قوائم الانتظار باستخدام معرف Microsoft Entra
يدعم Azure Storage استخدام معرف Microsoft Entra لتخويل الطلبات إلى بيانات قائمة الانتظار. باستخدام معرف Microsoft Entra، يمكنك استخدام التحكم في الوصول المستند إلى الدور Azure (Azure RBAC) لمنح أذونات لأساس أمان، والذي قد يكون مستخدما أو مجموعة أو مدير خدمة تطبيق. تتم مصادقة أساس الأمان بواسطة معرف Microsoft Entra لإرجاع رمز OAuth 2.0 المميز. يمكن استخدام الرمز المميز بعد ذلك لتخويل طلب مقابل خدمة قائمة الانتظار.
يوفر التخويل باستخدام معرف Microsoft Entra أمانا فائقا وسهولة في الاستخدام عبر تخويل المفتاح المشترك. توصي Microsoft باستخدام تخويل Microsoft Entra مع تطبيقات قائمة الانتظار الخاصة بك عندما يكون ذلك ممكنا لضمان الوصول بأقل امتيازات مطلوبة.
يتوفر التخويل باستخدام معرف Microsoft Entra لجميع حسابات التخزين للأغراض العامة في جميع المناطق العامة والسحب الوطنية. تدعم حسابات التخزين التي تم إنشاؤها باستخدام نموذج توزيع Azure Resource Manager تخويل Microsoft Entra فقط.
نظرة عامة على معرف Microsoft Entra لقوائم الانتظار
عندما يحاول أساس أمان (مستخدم أو مجموعة أو تطبيق) الوصول إلى مورد قائمة انتظار، يجب أن يكون الطلب مصرحا به، ما لم يكن قائمة انتظار متاحة للوصول المجهول. باستخدام معرف Microsoft Entra، يعد الوصول إلى مورد عملية من خطوتين:
تتم، أولاً مصادقة هوية أساس الأمان، ويتم إرجاع رمز OAuth 2.0 المميز.
أولاً، تتطلب خطوة المصادقة طلب تطبيق رمز وصول OAuth 2.0 المميز في وقت التشغيل. إذا كان أحد التطبيقات قيد التشغيل من داخل كيان Azure مثل جهاز Azure الظاهري أو مجموعة مقياس الجهاز الظاهري أو تطبيق Azure Functions، فيمكنه استخدام هوية مدارة للوصول إلى بيانات قائمة الانتظار.
يتم، بعد ذلك تمرير الرمز المميز كجزء من طلب إلى خدمة قائمة الانتظار ويتم استخدامه بواسطة الخدمة لتخويل الوصول إلى المورد المحدد.
تتطلب خطوة التخويل تعيين دور واحد أو أكثر للتحكم في الوصول استناداً إلى الدور في Azure إلى أساس الأمان الذي بإجراء طلب. لمزيد من المعلومات، راجع تعيين أدوار Azure لحقوق الوصول.
استخدام حساب Microsoft Entra مع المدخل أو PowerShell أو Azure CLI
للتعرف على كيفية الوصول إلى البيانات في مدخل Microsoft Azure باستخدام حساب Microsoft Entra، راجع الوصول إلى البيانات من مدخل Microsoft Azure. لمعرفة كيفية استدعاء أوامر Azure PowerShell أو Azure CLI باستخدام حساب Microsoft Entra، راجع الوصول إلى البيانات من PowerShell أو Azure CLI.
استخدام معرف Microsoft Entra لتخويل الوصول في التعليمات البرمجية للتطبيق
لتخويل الوصول إلى Azure Storage باستخدام معرف Microsoft Entra، يمكنك استخدام إحدى مكتبات العميل التالية للحصول على رمز OAuth 2.0 المميز:
- يوصى بمكتبة عميل Azure Identity لمعظم سيناريوهات التطوير.
- قد تكون مكتبة مصادقة Microsoft (MSAL) مناسبة لبعض السيناريوهات المتقدمة.
مكتبة عميل Azure Identity
تبسط مكتبة عميل Azure Identity عملية الحصول على رمز وصول OAuth 2.0 للتخويل باستخدام معرف Microsoft Entra عبر Azure SDK. تتكامل أحدث إصدارات مكتبات عميل Azure Storage لـ .NET و Java و Python و JavaScript و Go مع مكتباتAzure Identity لكل من هذه اللغات لتوفير وسيلة بسيطة وآمنة للحصول على رمز وصول للمصادقة على طلبات تخزين Azure .
تتمثل إحدى ميزات مكتبة عميل Azure Identity في أنها تتيح لك استخدام نفس الرمز للحصول على رمز الوصول سواء كان التطبيق الخاص بك قيد التشغيل في بيئة التطوير أو في Azure. تقوم مكتبة عميل Azure Identity بإرجاع رمز وصول لمبدأ أمان. عند تشغيل التعليمات البرمجية الخاصة بك في Azure، قد يكون أساس الأمان عبارة عن هوية مُدارة لموارد Azure أو مدير خدمة أو مستخدم أو مجموعة. في بيئة التطوير، توفر مكتبة العميل رمز وصول للمستخدم أو لمدير الخدمة لأغراض الاختبار.
يتم تغليف رمز الوصول الذي تم إرجاعه بواسطة مكتبة عميلAzure Identity في بيانات اعتماد الرمز المميز. يمكنك بعد ذلك استخدام بيانات اعتماد الرمز المميز للحصول على كائن عميل خدمة لاستخدامه في تنفيذ العمليات المصرح بها مقابل تخزين Azure. تتمثل إحدى الطرق البسيطة للحصول على رمز الوصول وبيانات اعتماد الرمز المميز في استخدام فئة DefaultAzureCredential التي توفرها مكتبة عميل Azure Identity. يحاول DefaultAzureCredential الحصول على بيانات اعتماد الرمز المميز عن طريق تجربة عدة أنواع مختلفة من بيانات الاعتماد بشكل تسلسلي. يعمل DefaultAzureCredential في كل من بيئة التطوير وفي Azure.
يشير الجدول التالي إلى معلومات إضافية لتخويل الوصول إلى البيانات في سيناريوهات مختلفة:
مكتبة مصادقة Microsoft (MSAL)
بينما توصي Microsoft باستخدام مكتبة عميل Azure Identity عندما يكون ذلك ممكنا، قد تكون مكتبة MSAL مناسبة للاستخدام في سيناريوهات متقدمة معينة. لمزيد من المعلومات، راجع التعرف على MSAL.
عند استخدام MSAL للحصول على رمز OAuth المميز للوصول إلى Azure Storage، تحتاج إلى توفير معرف مورد Microsoft Entra. يشير معرف مورد Microsoft Entra إلى الجمهور الذي يمكن استخدام الرمز المميز الذي تم إصداره لتوفير الوصول إلى مورد Azure. في حالة تخزين Azure، قد يكون معرف المورد خاصًا بحساب تخزين واحد، أو قد ينطبق على أي حساب تخزين.
عند توفير معرف مورد خاص بحساب تخزين واحد وخدمة، يتم استخدام معرف المورد للحصول على رمز مميز لتخويل الطلبات إلى الحساب والخدمة المحددين فقط. يسرد الجدول التالي القيمة التي يجب استخدامها لمعرف المورد، استنادا إلى السحابة التي تعمل معها. استبدال <account-name>
اسم حساب التخزين الخاص بك.
السحابة | معرف المورد |
---|---|
Azure Global | https://<account-name>.queue.core.windows.net |
Azure Government | https://<account-name>.queue.core.usgovcloudapi.net |
Azure China 21Vianet | https://<account-name>.queue.core.chinacloudapi.cn |
يمكنك أيضا توفير معرف مورد ينطبق على أي حساب تخزين، كما هو موضح في الجدول التالي. معرف المورد هذا هو نفسه لجميع السحب العامة والسيادية، ويستخدم للحصول على رمز مميز لتخويل الطلبات إلى أي حساب تخزين.
السحابة | معرف المورد |
---|---|
Azure Global Azure Government Azure China 21Vianet |
https://storage.azure.com/ |
تعيين أدوار Azure لحقوق الوصول
تخول Microsoft Entra حقوق الوصول إلى الموارد الآمنة من خلال Azure RBAC. يحدد Azure Storage مجموعة من أدوار التحكم في الوصول استنادا إلى الدور المضمنة التي تشمل مجموعات شائعة من الأذونات المستخدمة للوصول إلى بيانات قائمة الانتظار. يمكنك أيضاً تحديد أدوار مخصصة للوصول إلى بيانات قائمة الانتظار. لمعرفة المزيد حول تعيين أدوار Azure للوصول إلى قائمة الانتظار، راجع تعيين دور Azure للوصول إلى بيانات قائمة الانتظار.
قد يكون أساس أمان Microsoft Entra مستخدما أو مجموعة أو كيان خدمة تطبيق أو هوية مدارة لموارد Azure. تحدد أدوار التحكم في الوصول استناداً إلى الدور التي تم تعيينها إلى أحد أساسيات الأمان الأذونات التي يحصل عليها الأساس. لمعرفة المزيد حول تعيين أدوار Azure للوصول إلى قائمة الانتظار، راجع تعيين دور Azure للوصول إلى بيانات قائمة الانتظار
في بعض الحالات، قد تحتاج إلى تمكين الوصول الدقيق إلى موارد قائمة الانتظار أو لتبسيط الأذونات عندما يكون لديك عدد كبير من تعيينات الأدوار لمورد تخزين. يمكنك استخدام التحكم في الوصول المستند إلى سمات Azure (Azure ABAC) لتكوين الشروط المتعلقة بتعيينات الأدوار. يمكنك استخدام الشروط مع دور مخصص أو تحديد أدوار مضمنة. لمزيد من المعلومات حول تكوين شروط موارد تخزين Azure باستخدام ABAC، راجع تخويل الوصول إلى قوائم الانتظار باستخدام شروط تعيين دور Azure. للحصول على تفاصيل حول الشروط المدعومة لعمليات بيانات قائمة الانتظار، راجع الإجراءات والسمات الخاصة بشروط تعيين دور Azure لقوائم انتظار Azure.
إشعار
عند إنشاء حساب Azure Storage، لا يتم تعيين أذونات تلقائيا للوصول إلى البيانات عبر معرف Microsoft Entra. يجب تعيين دور Azure لنفسك بشكل صريح للوصول إلى Queue Storage. بمقدورك تعيينه على مستوى الاشتراك أو مجموعة الموارد أو حساب التخزين أو قائمة الانتظار.
نطاق المورد
قبل تعيين التحكم في الوصول استناداً إلى الدور Azure RBAC إلى مسؤول أمان، حدد نطاق الوصول الذي ستخصصه لمسؤول الأمان. تملي أفضل الممارسات أنه من الأفضل دائما منح أضيق نطاق ممكن فقط. يتم توريث أدوار التحكم في الوصول استناداً إلى الدور لـ Azure المحددة على نطاق أوسع بواسطة الموارد الموجودة تحتها.
يمكنك توسيع نطاق الوصول إلى موارد قائمة انتظار Azure على المستويات التالية، بدءاً من النطاق الأضيق:
- قائمة انتظار فردية. في هذا النطاق، ينطبق تعيين الدور على الرسائل الموجودة في قائمة الانتظار، وعلى خصائص قائمة الانتظار وبيانات التعريف.
- حساب التخزين. في هذا النطاق، ينطبق تعيين الدور على جميع قوائم الانتظار ورسائلها.
- مجموعة الموارد. في هذا النطاق، ينطبق تعيين دور على كافة قوائم الانتظار في كافة حسابات التخزين في مجموعة الموارد.
- الاشتراك. في هذا النطاق، ينطبق تعيين دور على كافة قوائم الانتظار في كافة حسابات التخزين في كل مجموعات الموارد في الاشتراك.
- مجموعة الإدارة. في هذا النطاق، ينطبق تعيين دور على كافة قوائم الانتظار في كافة حسابات التخزين في كل مجموعات الموارد في كل الاشتراكات في مجموعة الإدارة.
لمزيد من المعلومات حول نطاق تعيينات دور التحكم في الوصول استناداً إلى الدور لـ Azure، راجع فهم نطاق التحكم في الوصول استناداً إلى الدور لـ Azure.
أدوار Azure المضمنة لقوائم الانتظار
يوفر Azure RBAC العديد من الأدوار المضمنة لتخويل الوصول إلى بيانات قائمة الانتظار باستخدام معرف Microsoft Entra وOAuth. تتضمن بعض الأمثلة على الأدوار التي توفر أذونات لموارد البيانات في Azure Storage ما يلي:
- مساهم بيانات قائمة انتظار التخزين: يستخدم لمنح أذونات القراءة/الكتابة/الحذف لقوائم انتظار Azure.
- قارئ بيانات قائمة انتظار التخزين: يستخدم لمنح أذونات القراءة فقط لقوائم انتظار Azure.
- معالج رسائل بيانات قائمة انتظار التخزين: يستخدم لمنح أذونات التحرير السريع للرسائل الموجودة في قوائم انتظار Azure Storage واستردادها وحذفها.
- مرسل رسالة بيانات قائمة انتظار التخزين: يستخدم لمنح أذونات إضافة إلى الرسائل في قوائم انتظار Azure Storage.
لمعرفة كيفية تعيين دور Azure مضمن إلى أساس أمان، راجع تعيين دور Azure للوصول إلى بيانات قائمة الانتظار. لمعرفة كيفية إدراج أدوار التحكم في الوصول استناداً إلى الدور لـ Azure وأذوناتها، راجع إدراج تعريفات دور Azure.
لمزيد من المعلومات حول كيفية تعريف الأدوار المضمنة لـ Azure Storage، راجع فهم تعريفات الدور. للحصول على معلومات حول إنشاء أدوار Azure المخصصة، راجع أدوار Azure المخصصة.
فقط الأدوار المحددة صراحةً للوصول إلى البيانات هي التي تسمح لأساس الأمان بالوصول إلى بيانات قائمة الانتظار. تسمح الأدوار المضمنة مثل المالك والمساهم والمساهم في حساب التخزين لكيان أمان بإدارة حساب تخزين، ولكن لا توفر الوصول إلى بيانات قائمة الانتظار داخل هذا الحساب عبر معرف Microsoft Entra. ومع ذلك، إذا كان الدور يتضمن Microsoft.Storage/storageAccounts/listKeys/action، يمكن للمستخدم الذي تم تعيين هذا الدور له الوصول إلى البيانات الموجودة في حساب التخزين عبر تخويل المفتاح المشترك باستخدام مفاتيح الوصول إلى الحساب. لمزيد من المعلومات، راجع اختيار كيفية السماح بالوصول إلى بيانات قائمة الانتظار في مدخل Microsoft Azure.
للحصول على معلومات مفصلة حول أدوار Azure المضمنة لـ Azure Storage لكل من خدمات البيانات وخدمة الإدارة، راجع قسم التخزين في أدوار Azure المضمنة للتحكم في الوصول استناداً إلى الدور لـ Azure. بالإضافة إلى ذلك، للحصول على معلومات حول الأنواع المختلفة للأدوار التي توفر أذونات في Azure، راجع أدوار Azure وأدوار Microsoft Entra وأدوار مسؤول الاشتراك الكلاسيكي.
هام
قد يستغرق نشر تعيينات الأدوار في Azure حوالي 30 دقيقة.
أذونات الوصول لعمليات البيانات
للحصول على تفاصيل حول الأذونات المطلوبة للاتصال بعمليات خدمة قائمة انتظار محددة، راجع أذونات استدعاء عمليات البيانات.
الوصول إلى البيانات باستخدام حساب Microsoft Entra
يمكن تفويض الوصول إلى بيانات قائمة الانتظار عبر مدخل Microsoft Azure أو PowerShell أو Azure CLI إما باستخدام حساب Microsoft Entra للمستخدم أو باستخدام مفاتيح الوصول إلى الحساب (تخويل المفتاح المشترك).
تنبيه
لا يوصى بالتخويل باستخدام المفتاح المشترك لأنه قد يكون أقل أمانا. للحصول على الأمان الأمثل، قم بتعطيل التخويل عبر المفتاح المشترك لحساب التخزين الخاص بك، كما هو موضح في منع تخويل المفتاح المشترك لحساب Azure Storage.
يجب أن يقتصر استخدام مفاتيح الوصول سلسلة الاتصال على الإثبات الأولي لتطبيقات المفاهيم أو النماذج الأولية للتطوير التي لا تصل إلى الإنتاج أو البيانات الحساسة. وإلا، يجب دائما تفضيل فئات المصادقة المستندة إلى الرمز المميز المتوفرة في Azure SDK عند المصادقة على موارد Azure.
توصي Microsoft بأن يستخدم العملاء إما معرف Microsoft Entra أو توقيع وصول مشترك (SAS) لتخويل الوصول إلى البيانات في Azure Storage. لمزيد من المعلومات، راجع تخويل العمليات للوصول إلى البيانات.
الوصول إلى البيانات من مدخل Azure
يمكن لمدخل Azure استخدام حساب Microsoft Entra أو مفاتيح الوصول إلى الحساب للوصول إلى بيانات قائمة الانتظار في حساب تخزين Azure. يعتمد نظام المصادقة الذي يستخدمه مدخل Azure على أدوار Azure التي تم تعيينها لك.
عند محاولة الوصول إلى بيانات قائمة الانتظار، يتحقق مدخل Microsoft Azure أولا من تعيين دور Azure لك باستخدام Microsoft.Storage/storageAccounts/listkeys/action. إذا تم تعيين دور لك باستخدام هذا الإجراء، فسيستخدم مدخل Microsoft Azure مفتاح الحساب للوصول إلى بيانات قائمة الانتظار عبر تخويل المفتاح المشترك. إذا لم يتم تعيين دور لك باستخدام هذا الإجراء، فسيحاول مدخل Microsoft Azure الوصول إلى البيانات باستخدام حساب Microsoft Entra الخاص بك.
للوصول إلى بيانات قائمة الانتظار من مدخل Microsoft Azure باستخدام حساب Microsoft Entra، تحتاج إلى أذونات للوصول إلى بيانات قائمة الانتظار، وتحتاج أيضا إلى أذونات للتنقل عبر موارد حساب التخزين في مدخل Microsoft Azure. تمنح الأدوار المضمنة التي يوفرها Azure Storage حق الوصول إلى موارد قائمة الانتظار، ولكنها لا تمنح أذونات لموارد حساب التخزين. لهذا السبب، يتطلب الوصول إلى المدخل أيضاً تعيين دور Azure Resource Manager مثل دور القارئ، الذي تم تحديد نطاقه إلى مستوى حساب التخزين أو أعلى. يمنح دور القارئ الأذونات الأكثر تقييدًا، ولكن دور Azure Resource Manager آخر الذي يمنح الوصول إلى موارد إدارة حساب التخزين مقبول أيضًا. لمعرفة المزيد حول كيفية تعيين أذونات للمستخدمين للوصول إلى البيانات في مدخل Azure باستخدام حساب Microsoft Entra، راجع تعيين دور Azure للوصول إلى بيانات قائمة الانتظار.
يشير مدخل Azure إلى نظام التخويل المستخدم عند الانتقال إلى قائمة انتظار. لمزيد من المعلومات حول الوصول إلى البيانات في المدخل، راجع اختيار كيفية تخويل الوصول إلى بيانات قائمة الانتظار في مدخل Microsoft Azure.
الوصول إلى البيانات من PowerShell أو Azure CLI
يدعم Azure CLI وPowerShell تسجيل الدخول باستخدام بيانات اعتماد Microsoft Entra. بعد تسجيل الدخول، يتم تشغيل جلسة العمل الخاصة بك ضمن بيانات الاعتماد هذه. لمعرفة المزيد، راجع المقالات التالية:
- اختيار طريقة تخويل الوصول إلى بيانات قائمة الانتظار باستخدام Azure CLI
- تشغيل أوامر PowerShell باستخدام بيانات اعتماد Microsoft Entra للوصول إلى بيانات قائمة الانتظار