السماح بالوصول إلى مساحة اسم ناقل خدمة Azure من شبكات ظاهرية محددة

يتيح تكامل ناقل خدمة Microsoft Azure مع نقاط نهاية خدمة شبكة ظاهرية (VNet) الوصول الآمن إلى قدرات المراسلة من أحمال العمل مثل الأجهزة الظاهرية المرتبطة بالشبكات الظاهرية، مع تأمين مسار نسبة استخدام الشبكة على كلا الطرفين.

بمجرد تكوينها لتكون مرتبطة بنقطة نهاية خدمة شبكة ظاهرية فرعية واحدة على الأقل، لم تعد مساحة اسم ناقل خدمة Microsoft Azure تقبل نسبة استخدام الشبكة من أي مكان إلا من الشبكة الظاهرية المصرح بها (الشبكات الظاهرية)، واختياريًا، عناوين IP محددة للإنترنت. من منظور الشبكة الظاهرية، يؤدي ربط مساحة اسم ناقل خدمة Microsoft Azure بنقطة نهاية الخدمة إلى تكوين نفق شبكات معزول من الشبكة الفرعية للشبكة الظاهرية إلى خدمة المراسلة.

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

النقاط الهامة

  • لا تُدعم الشبكات الظاهرية إلا في مساحات أسماء المستوى المميز لناقل خدمة Microsoft Azure. عند استخدام نقاط نهاية خدمة VNet مع ناقل خدمة، يجب عدم تمكين نقاط النهاية هذه في التطبيقات التي تخلط بين المستوى الممتاز والمستوى القياسي لمساحات أسماء ناقل خدمة. ذلك لأن المستوى القياسي لا يدعم VNets. تقتصر نقطة النهاية إلى مساحات أسماء المستوى المميز فقط.

  • تنفيذ تكامل الشبكات الظاهرية يمكن أن يمنع خدمات Azure الأخرى من التفاعل مع ناقل خدمة Microsoft Azure. وكاستثناء، يمكنك السماح بالوصول إلى موارد ناقل خدمة Microsoft Azure من بعض الخدمات الموثوق بها حتى عند تمكين نقاط تقديم الخدمة. للحصول على قائمة بالخدمات الموثوقة، راجع الخدمات الموثوقة.

    يجب أن تكون خدمات Microsoft التالية على شبكة ظاهرية

    • Azure App Service
    • دالات Azure
  • حدد قاعدة IP واحدة على الأقل أو قاعدة شبكة ظاهرية لمساحة الاسم للسماح بنسبة استخدام الشبكة فقط من عناوين IP المحددة أو الشبكة الفرعية لشبكة ظاهرية. إذا لم تكن هناك قواعد IP والشبكة الظاهرية، فيمكن الوصول إلى مساحة الاسم عبر الإنترنت العام (باستخدام مفتاح الوصول).

سيناريوهات الأمان المتقدمة التي مكّنها تكامل الشبكة الظاهرية

الحلول التي تتطلب أمانًا محكمًا ومجزئًا، وحيث توفر الشبكات الفرعية للشبكة الظاهرية التجزئة بين الخدمات المُجزأة، لا تزال بحاجة عمومًا إلى مسارات اتصال بين الخدمات الموجودة في تلك الحجرات.

أي مسار IP فوري بين الحجرات، بما في ذلك تلك التي تحمل HTTPS عبر TCP/IP، يحمل خطر استغلال نقاط الضعف من طبقة الشبكة وما فوقها. توفر خدمات المراسلة مسارات اتصال معزولة، حيث تتم كتابة الرسائل حتى على القرص أثناء انتقالها بين الأطراف. أحمال العمل في شبكتين ظاهريتين متميزتين مرتبطتين بنفس مثيل ناقل خدمة Microsoft Azure يُمكنها الاتصال بكفاءة وموثوقية عبر الرسائل، بينما يتم الاحتفاظ بتكامل حدود عزل الشبكة المعنية.

هذا يعني أن حلول السحابة الحساسة للأمان لا تحصل فقط على إمكانية الوصول إلى قدرات المراسلة غير المتزامنة الموثوقة والقابلة للتطوير والرائدة في صناعة Azure، بل يمكنها الآن استخدام المراسلة لإنشاء مسارات اتصال بين حجرات الحلول الآمنة التي تكون بطبيعتها أكثر أمانًا مما يمكن تحقيقه مع أي وضع الاتصال من نظير إلى نظير، بما في ذلك HTTPS وبروتوكولات مأخذ توصيل بروتوكول أمان طبقة النقل الأخرى.

ربط ناقل خدمة Microsoft Azure بالشبكات الظاهرية

قواعد الشبكة الظاهرية هي ميزة أمان جدار الحماية التي تتحكم في ما إذا كانت مساحة اسم ناقل خدمة Microsoft Azure تقبل الاتصالات من شبكة فرعية خاصة بالشبكة الظاهرية.

ربط مساحة اسم ناقل خدمة Microsoft Azure بشبكة اتصال ظاهرية هو عملية من خطوتين. تحتاج أولًا إلى إنشاء نقطة نهاية خدمة شبكة ظاهرية على الشبكة الفرعية لشبكة ظاهرية وتمكينها لـ Microsoft.ServiceBus كما هو موضح في نظرة عامة على نقطة تقديم الخدمة. بمجرد إضافة نقطة نهاية الخدمة، يمكنك ربط مساحة اسم ناقل خدمة به من خلال قاعدة الشبكة الظاهرية.

قاعدة الشبكة الظاهرية عبارة عن ارتباط لمساحة اسم ناقل خدمة Microsoft Azure بشبكة فرعية للشبكة الظاهرية. أثناء وجود القاعدة، تُمنح كافة أحمال العمل المرتبطة بالشبكة الفرعية حق الوصول إلى مساحة اسم ناقل خدمة Microsoft Azure. لا يقوم ناقل الخدمة نفسه بتأسيس اتصالات صادرة، ولا يحتاج إلى الوصول، وبالتالي لا يُمنح مطلقًا حق الوصول إلى شبكتك الفرعية من خلال تمكين هذه القاعدة.

إشعار

تذكر أن نقطة تقديم خدمة شبكة توفر للتطبيقات قيد التشغيل في الشبكة الظاهرية الوصول إلى مساحة اسم ناقل خدمة Microsoft Azure. تتحكم الشبكة الظاهرية في إمكانية الوصول إلى نقطة النهاية، ولكن لا تتحكم في العمليات التي يمكن إجراؤها على كيانات ناقل خدمة Microsoft Azure (قوائم الانتظار أو الموضوعات أو الاشتراكات). استخدم معرف Microsoft Entra لتخويل العمليات التي يمكن للتطبيقات تنفيذها على مساحة الاسم والكيانات الخاصة بها. لمزيد من المعلومات، راجع مصادقة وتخويل تطبيق باستخدام معرف Microsoft Entra للوصول إلى كيانات ناقل خدمة Microsoft Azure.

استخدام مدخل Azure

عند إنشاء مساحة اسم، يمكنك إما السماح للجمهور فقط (من جميع الشبكات) أو الوصول الخاص فقط (فقط عبر نقاط النهاية الخاصة) إلى مساحة الاسم. بمجرد إنشاء مساحة الاسم، يمكنك السماح بالوصول من عناوين IP معينة أو من شبكات ظاهرية معينة (باستخدام نقاط نهاية خدمة الشبكة).

تكوين الوصول العام عند إنشاء مساحة اسم

لتمكين الوصول العام، حدد الوصول العام في صفحة الشبكات لمعالج إنشاء مساحة الاسم.

Screenshot showing the Networking page of the Create namespace wizard with Public access option selected.

بعد إنشاء مساحة الاسم، حدد Networking في القائمة اليمنى من صفحة Service Bus Namespace . ترى أن خيار جميع الشبكات محدد. يمكنك تحديد خيار الشبكات المحددة والسماح بالوصول من عناوين IP معينة أو شبكات ظاهرية معينة. يوفر لك القسم التالي تفاصيل حول تحديد الشبكات التي يسمح بالوصول منها.

تكوين الشبكات المحددة لمساحة اسم موجودة

يوضح هذا القسم كيفية استخدام مدخل Microsoft Azure لإضافة نقطة تقديم خدمة شبكة ظاهرية. للحد من الوصول، تحتاج إلى دمج نقطة تقديم خدمة الشبكة الظاهرية لمساحة اسم مراكز الأحداث هذه.

  1. انتقل إلى مساحة اسم ناقل خدمة Microsoft Azure في مدخل Microsoft Azure.

  2. في القائمة اليمنى، حدد خيار Networking ضمن Settings.

    إشعار

    راجع علامة التبويب «Networking» لمساحات الأسماء المميزةفقط.

  3. في صفحة الشبكة، للوصول إلى الشبكة العامة، يمكنك تعيين أحد الخيارات الثلاثة التالية. اختر خيار Selected networks للسماح بالوصول من عناوين IP المحددة فقط.

    • مُعطل يعطل هذا الخيار أي وصول عام إلى مساحة الاسم. يمكن الوصول إلى مساحة الاسم فقط من خلال نقاط النهاية الخاصة.

      Screenshot that shows the Networking page of a namespace with public access disabled.

      اختر ما إذا كنت تريد السماح خدمات Microsoft الموثوق بها بتجاوز جدار الحماية. للحصول على قائمة خدمات Microsoft الموثوق بها ناقل خدمة Azure، راجع قسم خدمات Microsoft الموثوق به.

    • Selected networks. يتيح هذا الخيار وصولاً عاماً إلى مساحة الاسم باستخدام مفتاح وصول من شبكات الاتصال المحددة.

      هام

      إذا اخترت Selected networks، فأضف قاعدة جدار حماية IP واحدة على الأقل أو شبكة اتصال ظاهرية سيكون لها حق الوصول إلى مساحة الاسم. اختر Disabled إذا كنت تريد تقييد جميع حركات المرور إلى مساحة الاسم هذه عبر نقاط النهاية الخاصة فقط.

    • All networks (افتراضي). يتيح هذا الخيار الوصول العام من جميع الشبكات باستخدام مفتاح وصول. إذا حددت الخيار All networks، يقبل ناقل الخدمة الاتصالات من أي عنوان IP (باستخدام مفتاح الوصول). هذا الإعداد مكافئ لقاعدة تقبل نطاق عناوين IP 0.0.0.0/0.

  4. لتقييد الوصول إلى شبكات ظاهرية محددة، حدد خيار الشبكات المحددة إذا لم يكن محددًا مسبقًا.

  5. في قسم الشبكة الظاهرية من الصفحة، حدد +إضافة شبكة ظاهرية موجودة. حدد + إنشاء شبكة ظاهرية جديدة إذا كنت تريد إنشاء شبكة ظاهرية جديدة.

    Image showing the selection of Add existing virtual network button on the toolbar.

    تحذير

    إذا قمت بتحديد خيار «Selected networks» ولم تقم بإضافة قاعدة جدار حماية IP واحدة على الأقل أو شبكة ظاهرية على هذه الصفحة، يمكن الوصول إلى مساحة الاسم عبر الإنترنت العام (باستخدام مفتاح الاختصار).

  6. حدد الشبكة الظاهرية من قائمة الشبكات الظاهرية، ثم اختر subNET. يجب تمكين نقطة تقديم الخدمة قبل إضافة الشبكة الظاهرية إلى القائمة. إذا لم يتم تمكين نقطة نهاية الخدمة، يطالبك المدخل بتمكينها.

    Image showing the selection of VNet and subnet.

  7. يجب أن تشاهد رسالة النجاح التالية بعد تمكين نقطة تقديم الخدمة الشبكة الفرعية لـ Microsoft.ServiceBus. حدد Add أسفل الصفحة لإضافة الشبكة.

    Image showing the success message of enabling the service endpoint.

    إشعار

    إذا لم تتمكن من تمكين نقطة تقديم الخدمة، فقد تتجاهل نقطة تقديم خدمة الشبكة الظاهرية المفقودة باستخدام قالب إدارة الموارد. هذه الوظيفة غير متاحة على المدخل.

  8. في «toolbar»، حدد «Save» لحفظ الإعدادات. انتظر بضع دقائق حتى يظهر التأكيد في إشعارات المدخل. يجب تعطيل زر حفظ.

    Image showing the network service endpoint saved.

    إشعار

    للحصول على إرشادات حول السماح بالوصول من عناوين IP أو نطاقات محددة، راجع السماح بالوصول من عناوين IP أو نطاقات محددة.

خدمات Microsoft الموثوق بها

عند تمكين الإعداد السماح لخدمات Microsoft الموثوقة لتجاوز جدار الحماية هذا، يتم منح الخدمات التالية حق الوصول إلى موارد ناقل الخدمة الخاص بك.

خدمة موثوق بها سيناريوهات الاستخدام المعتمدة
Azure Event Grid يسمح لـ Azure Event Grid بإرسال الأحداث إلى قوائم الانتظار أو الموضوعات في مساحة اسم ناقل الخدمة الخاص بك. تحتاج أيضا إلى القيام بالخطوات التالية:
  • تمكين الهوية المعينة من قبل النظام لموضوع أو مجال
  • إضافة الهوية إلى دور مرسل بيانات ناقل خدمة Azure على مساحة اسم ناقل خدمة Azure
  • ثم، قم بتكوين اشتراك الحدث الذي يستخدم قائمة انتظار أو موضوع ناقل الخدمة كنقطة نهاية لاستخدام هوية النظام المعينة.

لمزيد من المعلومات، راجع تسليم الأحداث بهوية مدارة

Azure Stream Analytics يسمح لوظيفة Azure Stream Analytics لإخراج البيانات إلى قوائم انتظار ناقل خدمة Microsoft Azure إلى الموضوعات.

هام: يجب تكوين مهمة Stream Analytics لاستخدام هوية مدارة للوصول إلى مساحة اسم ناقل خدمة Microsoft Azure. أضف الهوية إلى دور Azure Service Bus Data Sender على مساحة اسم ناقل الخدمة.

Azure IoT Hub يسمح لمركز IoT بإرسال رسائل إلى قوائم الانتظار أو الموضوعات في مساحة اسم ناقل الخدمة. تحتاج أيضا إلى القيام بالخطوات التالية:
إدارة Azure API

تتيح لك خدمة API Management إرسال رسائل إلى قائمة انتظار/موضوع ناقل الخدمة في مساحة اسم ناقل الخدمة.

Azure IoT Central

يسمح لـ IoT Central بتصدير البيانات إلى قوائم انتظار أو موضوعات ناقل الخدمة الموجودة في مساحة اسمه. تحتاج أيضاً إلى القيام بالخطوات التالية:

  • تمكين الهوية المعينة من قبل النظام لتطبيق IoT Central
  • أضف الهوية إلى دور Azure Service Bus Data Sender على مساحة اسم ناقل الخدمة.
  • بعد ذلك، قم بتكوين وجهة تصدير ناقل خدمةعلى تطبيق IoT Central الخاص بك لاستخدام المصادقة المستندة إلى الهوية.
Azure Digital Twins يسمح ل Azure Digital Twins للخروج من البيانات إلى مواضيع ناقل خدمة Microsoft Azure في مساحة اسم ناقل الخدمة. تحتاج أيضا إلى القيام بالخطوات التالية:

  • تمكين الهوية المعينة من قبل النظام لمثيل Azure Digital Twins.
  • أضف الهوية إلى دور Azure Service Bus Data Sender على مساحة اسم ناقل الخدمة.
  • ثم قم بتكوين نقطة نهاية Azure Digital Twins أو اتصال محفوظات بيانات Azure Digital Twins الذي يستخدم الهوية المعينة من قبل النظام للمصادقة. لمزيد من المعلومات حول تكوين نقاط النهاية ومسارات الأحداث إلى موارد ناقل خدمة Microsoft Azure من Azure Digital Twins، راجع توجيه أحداث Azure Digital Twins وإنشاء نقاط نهاية في Azure Digital Twins.
مراقب Azure (الإعدادات التشخيصي ومجموعات العمل) يسمح ل Azure Monitor بإرسال معلومات التشخيص وإعلامات التنبيه إلى ناقل خدمة Microsoft Azure في مساحة اسم ناقل خدمة Microsoft Azure. يمكن ل Azure Monitor قراءة البيانات وكتابتها إلى مساحة اسم ناقل خدمة Microsoft Azure.
Azure Synapse يسمح ل Azure Synapse بالاتصال بناقل الخدمة باستخدام الهوية المدارة لمساحة عمل Synapse. أضف ناقل خدمة Azure دور مرسل البيانات أو المستلم أو المالك إلى الهوية على مساحة اسم ناقل خدمة Microsoft Azure.

يمكن العثور على الخدمات الموثوق بها الأخرى ناقل خدمة Azure أدناه:

  • Azure Data Explorer ‏(Kusto)
  • Azure Health Data Services
  • Azure Arc
  • Azure Kubernetes
  • التعلم الآلي من Azure
  • Microsoft Purview

استخدام قالب Resource Manager

يضيف نموذج قالب إدارة الموارد التالي قاعدة شبكة ظاهرية إلى مساحة اسم ناقل خدمة Microsoft Azure موجودة. بالنسبة لقاعدة الشبكة، تحدد معرّف الشبكة الفرعية في شبكة ظاهرية.

المعرّف هو مسار إدارة موارد مؤهّل بالكامل للشبكة الفرعية لشبكة الاتصال الظاهرية. على سبيل المثال، /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default للشبكة الفرعية الافتراضية لشبكة ظاهرية.

إشعار

القيمة الافتراضية لـdefaultAction هي Allow. عند إضافة شبكة ظاهرية أو قواعد جدران الحماية، تأكد من تعيين defaultAction على Deny.

القالب:

{
	"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
	"contentVersion": "1.0.0.0",
	"parameters": {
		"servicebusNamespaceName": {
			"type": "string",
			"metadata": {
				"description": "Name of the Service Bus namespace"
			}
		},
		"virtualNetworkName": {
			"type": "string",
			"metadata": {
				"description": "Name of the Virtual Network Rule"
			}
		},
		"subnetName": {
			"type": "string",
			"metadata": {
				"description": "Name of the Virtual Network Sub Net"
			}
		},
		"location": {
			"type": "string",
			"metadata": {
				"description": "Location for Namespace"
			}
		}
	},
	"variables": {
		"namespaceNetworkRuleSetName": "[concat(parameters('servicebusNamespaceName'), concat('/', 'default'))]",
		"subNetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets/', parameters('virtualNetworkName'), parameters('subnetName'))]"
	},
	"resources": [{
			"apiVersion": "2022-10-01-preview",
			"name": "[parameters('servicebusNamespaceName')]",
			"type": "Microsoft.ServiceBus/namespaces",
			"location": "[parameters('location')]",
			"sku": {
				"name": "Premium",
				"tier": "Premium",
				"capacity": 1
			},
			"properties": {
				"premiumMessagingPartitions": 1,
				"minimumTlsVersion": "1.2",
				"publicNetworkAccess": "Enabled",
				"disableLocalAuth": false,
				"zoneRedundant": true
			}
		},
		{
			"apiVersion": "2022-07-01",
			"name": "[parameters('virtualNetworkName')]",
			"location": "[parameters('location')]",
			"type": "Microsoft.Network/virtualNetworks",
			"properties": {
				"addressSpace": {
					"addressPrefixes": [
						"10.0.0.0/23"
					]
				},
				"subnets": [{
					"name": "[parameters('subnetName')]",
					"properties": {
						"addressPrefix": "10.0.0.0/23",
						"serviceEndpoints": [{
							"service": "Microsoft.ServiceBus"
						}]
					}
				}]
			}
		},
		{
			"apiVersion": "2022-10-01-preview",
			"name": "[variables('namespaceNetworkRuleSetName')]",
			"type": "Microsoft.ServiceBus/namespaces/networkruleset",
			"dependsOn": [
				"[concat('Microsoft.ServiceBus/namespaces/', parameters('servicebusNamespaceName'))]"
			],
			"properties": {
				"publicNetworkAccess": "Enabled",
				"defaultAction": "Deny",
				"virtualNetworkRules": [{
					"subnet": {
						"id": "[variables('subNetId')]"
					},
					"ignoreMissingVnetServiceEndpoint": false
				}],
				"ipRules": [],
				"trustedServiceAccessEnabled": false
			}
		}
	],
	"outputs": {}
}

لتوزيع القالب، اتبع الإرشادات الخاصة بإدارة موارد Azure.

هام

إذا لم يكن هناك أي قواعد IP وشبكة ظاهرية، فإن كافة تدفقات نسبة استخدام الشبكة إلى مساحة الاسم حتى إذا قمت بتعيين defaultAction إلى deny. يمكن الوصول إلى مساحة الاسم عبر الإنترنت العام (باستخدام مفتاح الوصول). حدد قاعدة IP واحدة على الأقل أو قاعدة شبكة ظاهرية لمساحة الاسم للسماح بنسبة استخدام الشبكة فقط من عناوين IP المحددة أو الشبكة الفرعية لشبكة ظاهرية.

استخدام Azure CLI

استخدم az servicebus namespace network-rule-set أوامر الإضافة والسرد والتحديث والإزالة لإدارة قواعد الشبكة الظاهرية لمساحة اسم ناقل خدمة Microsoft Azure.

استخدام Azure PowerShell

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

الإجراء الافتراضي والوصول إلى الشبكة العامة

واجهة برمجة تطبيقات REST

القيمة الافتراضية للخاصية defaultAction كانت Deny للإصدار الأولي من واجهة برمجة التطبيقات (API) 2021-01-01 والإصدارات الأقدم. ومع ذلك، لا يتم فرض قاعدة الرفض إلا إذا عيَّنتَ عوامل تصفية IP أو قواعد الشبكة الظاهرية (VNet). بمعنى، إذا لم تكن لديك أي عوامل تصفية IP أو قواعد VNet، فسيتم التعامل معها على أنها Allow.

بدءاً من الإصدار الأولي من واجهة برمجة التطبيقات (API) 2021-06-01 - وما بعده، فإن القيمة الافتراضية للخاصية defaultAction هي Allow، لتعكس فرض جانب الخدمة بدقة. في حالة تعيين الإجراء الافتراضي على Deny، ستُفرض عوامل تصفية IP وقواعد VNet. في حالة تعيين الإجراء الافتراضي على Allow، فلن تُفرض عوامل تصفية IP وقواعد VNet. تتذكر الخدمة القواعد عند إيقاف تشغيلها ثم إعادة تشغيلها مرة أخرى.

يقدم الإصدار الأولي من (API) 2021-06-01 - وما بعده أيضاً خاصية جديدة تسمى publicNetworkAccess. في حالة التعيين على Disabled، فإن العمليات تقتصر على الروابط الخاصة فقط. في حالة التعيين على Enabled، فسيتم السماح بالعمليات عبر الإنترنت العام.

لمزيد من المعلومات عن هذه الخصائص، راجع Create or Update Network Rule Set وCreate or Update Private Endpoint Connections.

إشعار

لا يتجاوز أي من الإعدادات أعلاه التحقق من صحة المطالبات عبر SAS أو مصادقة Microsoft Entra. يُشغَّل فحص المصادقة دائماً بعد أن تتحقق الخدمة من صحة فحوصات الشبكة المُكونة بواسطة إعدادات defaultAction، publicNetworkAccess، privateEndpointConnections.

مدخل Azure

يستخدم مدخل Microsoft Azure دائماً أحدث إصدار من API للحصول على الخصائص وتعيينها. إذا كنت قد قمت مسبقًا بتكوين مساحة الاسم الخاصة بك باستخدام إصدار 2021-01-01 الأولي والإصدارات الأقدم مع defaultAction المعينة على Deny، وتحديد عوامل تصفية IP الصفرية وقواعد VNet، فستكون البوابة قد حددت مسبقا الشبكات المحددة في صفحة Networking في مساحة الاسم الخاصة بك. الآن، يتحقق من خيار All networks.

Screenshot of the Azure portal Networking page. The option to allow access from All networks is selected on the Firewalls and virtual networks tab.

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

لمزيد من المعلومات حول الشبكات الظاهرية، راجع الروابط التالية: