تكوين نقاط النهاية الخاصة للموضوعات أو المجالات المخصصة لشبكة أحداث Azure
يمكنك استخدام نقاط النهاية الخاصة للسماح بدخول الأحداث مباشرة من شبكتك الظاهرية إلى الموضوعات والمجالات المخصصة الخاصة بك بشكل آمن عبر ارتباط خاص دون المرور عبر الإنترنت العام. تستخدم نقطة النهاية الخاصة عنوان IP من مساحة عنوان الشبكة الظاهرية للموضوع أو المجال المخصص. لمزيد من المعلومات المفاهيمية، راجع أمان الشبكة .
توضح هذه المقالة كيفية تكوين نقاط النهاية الخاصة للمواضيع أو المجالات المخصصة.
إشعار
حاليا، نقاط النهاية الخاصة غير مدعومة لموضوعات النظام.
استخدام مدخل Azure
يوضح لك هذا القسم كيفية استخدام مدخل Azure لإنشاء نقطة نهاية خاصة لموضوع أو مجال.
إشعار
الخطوات الموضحة في هذا القسم مخصصة في الغالب للمواضيع المخصصة. تستطيع استخدام خطوات مشابهة لإنشاء نقاط نهاية خاصة لـ المجالات .
عند إنشاء موضوع جديد
يوضح لك هذا القسم كيفية تمكين الوصول إلى الشبكة الخاصة لموضوع أو مجال في Event Grid. للحصول على إرشادات خطوة بخطوة لإنشاء موضوع جديد، راجع إنشاء موضوع مخصص.
في صفحة Basics بمعالج ، حدد Next: Networking أسفل الصفحة بعد ملء الحقول المطلوبة.
للسماح بالوصول إلى موضوع Event Grid عبر نقطة نهاية خاصة، حدد الخيار Private access.
في قسم Private endpoint connections ، حدد الزر + Private endpoint .
في صفحة إنشاء نقطة نهاية خاصة، اتبع الخطوات التالية:
- بالنسبة إلى Name، أدخل اسما لنقطة النهاية الخاصة.
- حدد شبكة افتراضية . يتم سرد الشبكات الافتراضية فقط الموجودة في الاشتراك والموقع المحددين حاليًا في القائمة المنسدلة.
- حدد شبكة فرعية في الشبكة الافتراضية التي حددتها.
- حدد ما إذا كنت تريد دمج نقطة النهاية الخاصة مع منطقة DNS خاصة.
- حدد موافق.
الآن، في صفحة إنشاء موضوع ، حدد مراجعة + إنشاء في أسفل الصفحة.
في صفحة مراجعة+ إنشاء حدد إنشاء.
لموضوع موجود
سجّل الدخول إلى مدخل Azure ثم انتقل إلى الموضوع أو المجال الخاص بك.
قم بالتبديل إلى علامة تبويب الشبكة في صفحة موضوعك. في علامة التبويب Public access، حدد Private endpoints only.
قم بالتبديل إلى علامة التبويب Private endpoint connections، ثم حدد + Private endpoint على شريط الأدوات.
في صفحة Basics، اتبع الخطوات التالية:
قم بتحديد اشتراك Azure الذي تريد إنشاء نقطة نهاية خاصة فيه.
حدد مجموعة موارد Azure لنقطة النهاية الخاصة.
أدخل اسما لنقطة النهاية.
قم بتحديث اسمواجهة الشبكة إذا لزم الأمر.
حدد المنطقة لنقطة النهاية. يجب أن تكون نقطة النهاية الخاصة بك في نفس المنطقة مثل الشبكة الظاهرية، ولكن يمكن أن تكون في منطقة مختلفة عن مورد الارتباط الخاص (في هذا المثال، موضوع شبكة الأحداث).
ثم حدد زر Next: Resource > أسفل الصفحة.
في صفحة المورد، اتبع هذه الخطوات، وتأكد من تحديد هذا الموضوع للمورد الفرعي الهدف، ثم حدد زر التالي: الشبكة > الظاهرية في أسفل الصفحة.
في صفحة Virtual Network، تحدد الشبكة الفرعية في شبكة ظاهرية حيث تريد توزيع نقطة النهاية الخاصة.
حدد شبكة افتراضية . يتم سرد الشبكات الافتراضية فقط الموجودة في الاشتراك والموقع المحددين حاليًا في القائمة المنسدلة.
حدد شبكة فرعية في الشبكة الافتراضية التي حددتها.
حدد ما إذا كنت تريد تخصيص عنوان IP بشكل ثابت أو ديناميكي.
حدد مجموعة أمان تطبيقات موجودة أو أنشئ واحدة ثم قم بإقرانها بنقطة النهاية الخاصة.
حدد الزر التالي: DNS> أسفل الصفحة.
في صفحة DNS ، حدد ما إذا كنت تريد دمج نقطة النهاية الخاصة مع منطقة DNS خاصة، ثم حدد التالي: العلامات في أسفل الصفحة.
في صفحة Tags، أنشئ أية علامات (أسماء وقيم) تريد إقرانها بمورد نقطة النهاية الخاصة. ثم حدد زر مراجعة + إنشاء أسفل الصفحة.
في مراجعة + إنشاء ، راجع جميع الإعدادات وحدد إنشاء لإنشاء نقطة النهاية الخاصة.
إدارة اتصال الارتباط الخاص
عند إنشاء نقطة نهاية خاصة، لا بد من الموافقة على الاتصال. إذا كان المورد الذي تقوم بإنشاء نقطة نهاية خاصة له موجودًا في دليلك، فيمكنك الموافقة على طلب الاتصال بشرط أن يكون لديك أذونات كافية. لو كنت تتصل بمورد Azure في دليل آخر، فلا بد أن تنتظر حتى يوافق مالك هذا المورد على طلب الاتصال الخاص بك.
يوجد أربع حالات توفير:
عمل الخدمة | حالة نقطة النهاية الخاصة للمستهلك | الوصف |
---|---|---|
بلا | معلق | يتم إنشاء الاتصال يدويًا وهو في انتظار الموافقة من مالك مورد الارتباط الخاص. |
الموافقة | موافق عليها | تمت الموافقة على الاتصال تلقائياً أو يدوياً وهو جاهز للاستخدام. |
رفض | مرفوض | تم رفض الاتصال من ناحية مالك مورد الارتباط الخاص. |
إزالة | غير متصل | تمت إزالة الاتصال من قبل مالك مورد الارتباط الخاص، وتصبح نقطة النهاية الخاصة مفيدة ولابد من حذفها للتنظيف. |
كيفية إدارة اتصال نقطة نهاية خاصة
توضح الأقسام الآتية كيفية قبول اتصال نقطة نهاية خاصة أو رفضه.
- قم بتسجيل الدخول إلى بوابة Azure.
- في شريط البحث، اكتب مواضيع شبكة الأحداث أو مجالات شبكة الأحداث .
- حدد الموضوع أو المجال الذي تريد إدارته.
- حدد علامة التبويب Networking
- لو كانت هناك أي اتصالات معلقة، فسترى اتصالاً مدرجًا مع معلق في حالة التوفير.
من أجل الموافقة على نقطة نهاية خاصة
بإمكانك الموافقة على نقطة نهاية خاصة في حالة معلقة. للموافقة، تتبع الخطوات الآتية:
إشعار
الخطوات الموضحة في هذا القسم خاصة بالمواضيع. تستطيع استخدام خطوات مشابهة للموافقة على نقاط النهاية الخاصة لـ المجالات .
حدد نقطة النهاية الخاصة التي ترغب في الموافقة عليها، وحدد موافقة على شريط الأدوات.
في مربع الحوار الموافقة على الاتصال ، أدخل تعليقًا (اختياريًا) وحدد نعم .
قم بالتأكد من أنك ترى حالة نقطة النهاية على أنها تم الموافقة عليها .
لرفض نقطة نهاية خاصة
تستطيع رفض نقطة نهاية خاصة في حالة التعليق أو الحالة المعتمدة. للرفض، تتبع الخطوات الآتية:
إشعار
الخطوات الموضحة في هذا القسم هي للمواضيع. تستطيع استخدام خطوات مشابهة لرفض نقاط النهاية الخاصة لـ المجالات .
حدد نقطة النهاية الخاصة التي تريد في رفضها، وحدد رفض على شريط الأدوات.
في مربع الحوار رفض الاتصال ، أدخل تعليقًا (اختياريًا) وحدد نعم .
تأكد من أنك ترى حالة نقطة النهاية على أنها مرفوضة .
إشعار
لا يمكنك الموافقة على نقطة نهاية خاصة في بوابة Azure فور رفضها.
استخدام Azure CLI
لإنشاء نقطة نهاية خاصة، استخدم طريقة إنشاء نقطة نهاية خاصة لشبكة az كما هو موضح في المثال الآتي:
az network private-endpoint create \
--resource-group <RESOURCE GROUP NAME> \
--name <PRIVATE ENDPOINT NAME> \
--vnet-name <VIRTUAL NETWORK NAME> \
--subnet <SUBNET NAME> \
--private-connection-resource-id "/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventGrid/topics/<TOPIC NAME>" \
--connection-name <PRIVATE LINK SERVICE CONNECTION NAME> \
--location <LOCATION> \
--group-ids topic
للحصول على أوصاف المعلمات المستخدمة في المثال، راجع وثائق إنشاء نقطة نهاية خاصة لشبكة az . بعض النقاط التي لا بد من ملاحظتها في هذا المثال هي:
- بالنسبة إلى
private-connection-resource-id
، حدد معرف المورد للموضوع أو المجال . المثال السابق يستخدم النوع: الموضوع. - لـ
group-ids
، حددtopic
أوdomain
. في المثال السابق، تم استخدامtopic
.
لحذف نقطة نهاية خاصة، استخدم طريقة حذف نقطة نهاية خاصة لشبكة az كما هو موضح في المثال التالي:
az network private-endpoint delete --resource-group <RESOURCE GROUP NAME> --name <PRIVATE ENDPOINT NAME>
إشعار
الخطوات الموضحة في هذا القسم هي للمواضيع. تستطيع استخدام خطوات مشابهة لإنشاء نقاط نهاية خاصة لـ المجالات .
المتطلبات الأساسية
قم بتحديث ملحق Azure Event Grid لـ CLI عن طريق تشغيل الأمر الآتي:
az extension update -n eventgrid
إذا لم يتم تثبيت الامتداد، فقم بتشغيل الأمر الآتي لتثبيته:
az extension add -n eventgrid
قم بإنشاء نقطة نهاية خاصة
لإنشاء نقطة نهاية خاصة، استخدم طريقة إنشاء نقطة نهاية خاصة لشبكة az كما هو موضح في المثال الآتي:
az network private-endpoint create \
--resource-group <RESOURCE GROUP NAME> \
--name <PRIVATE ENDPOINT NAME> \
--vnet-name <VIRTUAL NETWORK NAME> \
--subnet <SUBNET NAME> \
--private-connection-resource-id "/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventGrid/topics/<TOPIC NAME>" \
--connection-name <PRIVATE LINK SERVICE CONNECTION NAME> \
--location <LOCATION> \
--group-ids topic
للحصول على أوصاف المعلمات المستخدمة في المثال، راجع وثائق إنشاء نقطة نهاية خاصة لشبكة az . بعض النقاط التي لا بد من ملاحظتها في هذا المثال هي:
- بالنسبة إلى
private-connection-resource-id
، حدد معرف المورد للموضوع أو المجال . المثال السابق يستخدم النوع: الموضوع. - لـ
group-ids
، حددtopic
أوdomain
. في المثال السابق، تم استخدامtopic
.
لحذف نقطة نهاية خاصة، استخدم طريقة حذف نقطة نهاية خاصة لشبكة az كما هو موضح في المثال التالي:
az network private-endpoint delete --resource-group <RESOURCE GROUP NAME> --name <PRIVATE ENDPOINT NAME>
إشعار
الخطوات الموضحة في هذا القسم هي للمواضيع. تستطيع استخدام خطوات مشابهة لإنشاء نقاط نهاية خاصة لـ المجالات .
نموذج البرنامج النصي
فيما يلي نموذج لبرنامج نصي يقوم بإنشاء موارد Azure الآتية:
- مجموعة الموارد
- الشبكة الظاهرية
- الشبكة الفرعية في الشبكة الافتراضية
- موضوع Azure Event Grid
- نقطة نهاية خاصة للموضوع
إشعار
الخطوات الموضحة في هذا القسم هي للمواضيع. تستطيع استخدام خطوات مشابهة لإنشاء نقاط نهاية خاصة لـ المجالات .
subscriptionID="<AZURE SUBSCRIPTION ID>"
resourceGroupName="<RESOURCE GROUP NAME>"
location="<LOCATION>"
vNetName="<VIRTUAL NETWORK NAME>"
subNetName="<SUBNET NAME>"
topicName = "<TOPIC NAME>"
connectionName="<ENDPOINT CONNECTION NAME>"
endpointName=<ENDPOINT NAME>
# resource ID of the topic. replace <SUBSCRIPTION ID>, <RESOURCE GROUP NAME>, and <TOPIC NAME>
# topicResourceID="/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventGrid/topics/<TOPIC NAME>"
# select subscription
az account set --subscription $subscriptionID
# create resource group
az group create --name $resourceGroupName --location $location
# create vnet
az network vnet create \
--resource-group $resourceGroupName \
--name $vNetName \
--address-prefix 10.0.0.0/16
# create subnet
az network vnet subnet create \
--resource-group $resourceGroupName \
--vnet-name $vNetName \
--name $subNetName \
--address-prefixes 10.0.0.0/24
# disable private endpoint network policies for the subnet
az network vnet subnet update \
--resource-group $resourceGroupName \
--vnet-name $vNetName \
--name $subNetName \
--disable-private-endpoint-network-policies true
# create event grid topic. update <LOCATION>
az eventgrid topic create \
--resource-group $resourceGroupName \
--name $topicName \
--location $location
# verify that the topic was created.
az eventgrid topic show \
--resource-group $resourceGroupName \
--name $topicName
# create private endpoint for the topic you created
az network private-endpoint create \
--resource-group $resourceGroupName \
--name $endpointName \
--vnet-name $vNetName \
--subnet $subNetName \
--private-connection-resource-id $topicResourceID \
--connection-name $connectionName \
--location $location \
--group-ids topic
# get topic
az eventgrid topic show \
--resource-group $resourceGroupName \
--name $topicName
الموافقة على نقطة نهاية خاصة
يوضح لك نموذج مقتطف CLI الآتي كيفية الموافقة على اتصال نقطة نهاية خاصة.
az eventgrid topic private-endpoint-connection approve \
--resource-group $resourceGroupName \
--topic-name $topicName \
--name $endpointName \
--description "connection approved"
ارفض نقطة نهاية خاصة
يوضح لك مقتطف CLI النموذجي الآتي كيفية رفض اتصال نقطة نهاية خاصة.
az eventgrid topic private-endpoint-connection reject \
--resource-group $resourceGroupName \
--topic-name $topicName \
--name $endpointName \
--description "Connection rejected"
تعطيل الوصول إلى الشبكة العامة
افتراضيًا، يتم تمكين الوصول إلى الشبكة العامة لموضوع أو مجال "شبكة الأحداث". للسماح بالوصول عبر نقاط النهاية الخاصة فقط، قم بتعطيل الوصول إلى الشبكة العامة عن طريق تشغيل الأمر الآتي:
az eventgrid topic update \
--resource-group $resourceGroupName \
--name $topicName \
--public-network-access disabled
استخدام PowerShell
هذا القسم يوضح لك كيفية إنشاء نقطة نهاية خاصة لموضوع أو مجال باستخدام PowerShell. إليك نموذج نص برمجي مع تعليقات.
# name of an Azure resource group to be created
$resourceGroupName = "contosorg"
# location where you want the resources to be created
$location ="eastus"
# name of the VNet to be created
$vnetName = "contosovnet"
# name of the subnet to be created in the VNet
$subnetName = "example-privatelinksubnet"
# name of the Event Grid topic to be created
$egridTopicName = "contosotopic"
# name of the private link service connection to be created
$privateLinkServiceConnectionName = "spegridplsconn"
# name of the private endpoint connection to be created
$privateEndpointConnectionName = "spegridpe11"
#
# create resource group
New-AzResourceGroup -Name $resourceGroupName -Location $location
# create virtual network
$virtualNetwork = New-AzVirtualNetwork `
-ResourceGroupName $resourceGroupName `
-Location $location `
-Name $vnetName `
-AddressPrefix 10.0.0.0/16
# create subnet with endpoint network policy disabled
$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
-Name $subnetName `
-AddressPrefix 10.0.0.0/24 `
-PrivateEndpointNetworkPoliciesFlag "Disabled" `
-VirtualNetwork $virtualNetwork
# update virtual network
$virtualNetwork | Set-AzVirtualNetwork
# get virtual network (optional)
$virtualNetwork = Get-AzVirtualNetwork `
-ResourceGroupName $resourceGroupName `
-Name $vnetName
# create an Event Grid topic with public network access disabled.
$topic = New-AzEventGridTopic -ResourceGroupName $resourceGroupName -Name $egridTopicName -Location $location -PublicNetworkAccess disabled
# create a private link service connection to the Event Grid topic.
# For topics, set GroupId to 'topic'. For domains, it's 'domain'
$privateEndpointConnection = New-AzPrivateLinkServiceConnection `
-Name "privateLinkServiceConnectionName" `
-PrivateLinkServiceId $topic.id `
-GroupId "topic"
# get subnet info
$subnet = $virtualNetwork | Select -ExpandProperty subnets `
| Where-Object {$_.Name -eq $subnetName }
# now, you are ready to create a private endpoint
$privateEndpoint = New-AzPrivateEndpoint -ResourceGroupName $resourceGroupName `
-Name privateEndpointConnectionName `
-Location $location `
-Subnet $subnet `
-PrivateLinkServiceConnection $privateEndpointConnection
# verify that the endpoint is created
Get-AzPrivateEndpoint -ResourceGroupName $resourceGroupName -Name privateEndpointConnectionName
الموافقة على اتصال نقطة نهاية خاصة
يوضح لك مقتطف PowerShell النموذجي الآتي كيفية الموافقة على نقطة نهاية خاصة.
إشعار
الخطوات الموضحة في هذا القسم هي للمواضيع. تستطيع استخدام خطوات مشابهة للموافقة على نقاط النهاية الخاصة لـ المجالات .
# list all private endpoints for the topic
$topic = Get-AzEventGridTopic -ResourceGroup <RESOURCE GROUP NAME> - Name <TOPIC NAME>
$endpointList = Get-AzPrivateEndpointConnection -PrivateLinkResourceId $topic.Id
# filter the private endpoints using a name
$pseEndpoint = $endpointList | Where-Object { $_.Name.StartsWith('<MYENDPOINTNAME>') }
# approve the endpoint connection
Approve-AzPrivateEndpointConnection -ResourceId $pseEndpoint.Id
# get the endpoint connection to verify that it's approved
Get-AzPrivateEndpointConnection -ResourceId $pseEndpoint.Id
رفض اتصال نقطة نهاية خاصة
يوضح لك المثال الآتي كيفية رفض نقطة نهاية خاصة باستخدام PowerShell. بإمكانك الحصول على GUID لنقطة النهاية الخاصة من نتيجة أمر GET السابق.
إشعار
الخطوات الموضحة في هذا القسم هي للمواضيع. تستطيع استخدام خطوات مشابهة لرفض نقاط النهاية الخاصة لـ المجالات .
# list all private endpoints for the topic
$topic = Get-AzEventGridTopic -ResourceGroup <RESOURCE GROUP NAME> - Name <TOPIC NAME>
$endpointList = Get-AzPrivateEndpointConnection -PrivateLinkResourceId $topic.Id
# filter the private endpoints using a name
$pseEndpoint = $endpointList | Where-Object { $_.Name.StartsWith('<MYENDPOINT>') }
# deny or reject the private endpoint connection
Deny-AzPrivateEndpointConnection -ResourceId $pseEndpoint.Id
# get the endpoint connection to verify that it's rejected
Get-AzPrivateEndpointConnection -ResourceId $pseEndpoint.Id
يمكنك الموافقة على الاتصال حتى بعد رفضه خلال API. إذا كنت تستخدم مدخل Azure، فلا يمكنك الموافقة على نقطة نهاية قد تم رفضها.
المحتوى ذو الصلة
- لمعرفة أكثر حول كيفية تكوين إعدادات جدار حماية IP، راجع تكوين جدار حماية IP لموضوعات أو مجالات شبكة أحداث Azure .
- لاستكشاف مشكلات الاتصال بالشبكة وإصلاحها، راجع استكشاف مشكلات الاتصال بالشبكة وإصلاحها