يمكنك Azure Application Gateway Private Link من إنشاء اتصالات آمنة وخاصة ببوابة التطبيق الخاصة بك من أحمال العمل التي تمتد عبر الشبكات الظاهرية (VNets) والاشتراكات. توفر هذه الميزة اتصالا خاصا دون تعريض حركة المرور إلى الإنترنت العام. لمزيد من المعلومات، راجع رابط خاص لبوابة التطبيق.
خيارات الإعداد
يمكنك تكوين رابط خاص لبوابة التطبيق باستخدام أساليب متعددة:
- Azure portal
- Azure PowerShell
- Azure CLI
Prerequisites
قبل تكوين Private Link، تأكد من أن لديك:
- بوابة تطبيق موجودة
- شبكة ظاهرية مع شبكة فرعية مخصصة للارتباط الخاص (منفصلة عن الشبكة الفرعية لبوابة التطبيق)
- الأذونات المناسبة لإنشاء موارد الارتباط الخاص وتكوينها
اعتبارات الشبكة الفرعية لتكوين الرابط الخاص
لتفعيل تكوين الرابط الخاص، يجب أن يكون لديك شبكة فرعية مخصصة منفصلة عن شبكة بوابة التطبيق. تستخدم هذه الشبكة الفرعية حصريا لتكوينات IP للارتباط الخاص ولا يمكن أن تحتوي على أي مثيلات لبوابة التطبيق.
- يدعم كل عنوان IP مخصص لهذه الشبكة الفرعية ما يصل إلى 65536 اتصال TCP متزامنا من خلال Private Link
- لحساب عناوين IP المطلوبة:
n × 65,536 الاتصالات، حيث n يكون عدد عناوين IP المتوفرة
- بحد أقصى ثمانية عناوين IP لكل تكوين ارتباط خاص
- يتم دعم تخصيص عنوان IP الديناميكي فقط
- يجب أن يكون لدى الشبكة الفرعية تعطيل سياسات شبكة خدمة الرابط الخاص
Important
يجب ألا يتجاوز الطول المجمع لاسم بوابة التطبيق واسم تكوين الارتباط الخاص 70 حرفا لتجنب فشل التوزيع.
لإنشاء شبكة فرعية مخصصة ل Private Link، راجع إضافة شبكة فرعية للشبكة الظاهرية أو تغييرها أو حذفها.
تعطيل سياسات الشبكة على شبكة الرابط الخاص
للسماح بالاتصال بالرابط الخاص، يجب عليك تعطيل سياسات شبكة خدمة الرابط الخاص على الشبكة الفرعية المخصصة لإعدادات IP الخاصة بالرابط.
لتعطيل سياسات الشبكة، اتبع الخطوات التالية:
- انتقل إلى مدخل Azure.
- العثور على الشبكات الظاهرية وحدّدها.
- اختر الشبكة الافتراضية التي تحتوي على شبكة الرابط الخاص.
- في لوحة التنقل اليسرى، اختر Subnets.
- اختر الشبكة الفرعية المخصصة للرابط الخاص.
- تحت سياسات شبكة خدمة الربط الخاص، اختر معطل.
- حدد حفظ لتطبيق التغييرات.
- انتظر بضع دقائق حتى تبدأ التغييرات في التأثير.
- تحقق من أن إعداد سياسات شبكة خدمة الربط الخاصمعطل الآن.
يحدد تكوين Private Link البنية الأساسية التي تمكن الاتصالات من نقاط النهاية الخاصة ببوابة التطبيق الخاصة بك. قبل إنشاء تكوين Private Link، تأكد من تكوين وحدة استماع بنشاط لاستخدام تكوين IP للواجهة الأمامية الهدف.
اتبع هذه الخطوات لإنشاء تكوين الارتباط الخاص:
- ابحث عن بوابات التطبيق وحددها.
- حدد مثيل Application Gateway الخاص بك.
- في جزء التنقل الأيمن، حدد ارتباط خاص، ثم حدد + إضافة.
- تكوين الإعدادات التالية:
-
الاسم: أدخل اسما لتكوين الرابط الخاص
-
الشبكة الفرعية للارتباط الخاص: حدد الشبكة الفرعية المخصصة لعناوين IP للارتباط الخاص
-
تكوين IP للواجهة الأمامية: حدد تكوين IP للواجهة الأمامية الذي يجب أن يقوم Private Link بإعادة توجيه نسبة استخدام الشبكة إليه
-
إعدادات عنوان IP الخاص: تكوين عنوان IP واحد على الأقل
- حدد إضافة لإنشاء التكوين.
- من إعدادات Application Gateway، انسخ معرف المورد واحفظه. هذا المعرف مطلوب عند إعداد نقاط النهاية الخاصة من مستأجري Microsoft Entra مختلفين.
نقطة النهاية الخاصة هي واجهة شبكة تستخدم عنوان IP خاصا من شبكتك الظاهرية للاتصال بأمان ببوابة تطبيق Azure. يستخدم العملاء عنوان IP الخاص بنقطة النهاية الخاصة لإنشاء اتصالات ببوابة التطبيق من خلال نفق آمن.
لإنشاء نقطة نهاية خاصة، اتبع الخطوات التالية:
- في مدخل Application Gateway، حدد علامة التبويب Private endpoint connections .
- حدد + نقطة نهاية خاصة .
- في علامة التبويب الأساسيات :
- تكوين مجموعة الموارد والاسم والمنطقة لنقطة النهاية الخاصة
- حدد Next: Resource >
- في علامة التبويب المورد :
- تحقق من إعدادات المورد الهدف
- حدد Next: Virtual Network >
- في علامة التبويب الشبكة الظاهرية :
- حدد الشبكة الظاهرية والشبكة الفرعية حيث سيتم إنشاء واجهة شبكة نقطة النهاية الخاصة
- حدد Next: DNS >
- في علامة التبويب DNS :
- تكوين إعدادات DNS حسب الحاجة
- حدد Next: Tags >
- في علامة التبويب العلامات :
- إضافة علامات الموارد اختياريا
- حدد Next: Review + create >
- راجع التكوين وحدد Create.
Important
إذا كان مورد تكوين IP العام أو الخاص مفقودا عند محاولة تحديد مورد فرعي هدف في علامة التبويب مورد لإنشاء نقطة النهاية الخاصة، فتأكد من أن المستمع يستخدم بنشاط تكوين IP للواجهة الأمامية المحترم. لا يمكن عرض تكوينات IP للواجهة الأمامية بدون مستمع مقترن كمورد فرعي هدف.
Note
عند توفير نقطة نهاية خاصة من مستأجر Microsoft Entra مختلف، يجب استخدام معرف مورد بوابة تطبيق Azure وتحديد اسم تكوين IP للواجهة الأمامية كمورد فرعي مستهدف.
على سبيل المثال، إذا تمت تسمية PrivateFrontendIp تكوين IP الخاص بك في المدخل، فاستخدم PrivateFrontendIp كقيمة المورد الفرعي الهدف.
استخدم أوامر PowerShell التالية لتكوين Private Link على بوابة تطبيق موجودة:
# Disable Private Link Service Network Policies
# https://learn.microsoft.com/azure/private-link/disable-private-endpoint-network-policy
$net =@{
Name = 'AppGW-PL-PSH'
ResourceGroupName = 'AppGW-PL-PSH-RG'
}
$vnet = Get-AzVirtualNetwork @net
($vnet | Select -ExpandProperty subnets | Where-Object {$_.Name -eq 'AppGW-PL-Subnet'}).PrivateLinkServiceNetworkPolicies = "Disabled"
# Apply the network policy changes
$vnet | Set-AzVirtualNetwork
# Get Application Gateway Frontend IP Name
$agw = Get-AzApplicationGateway -Name AppGW-PL-PSH -ResourceGroupName AppGW-PL-PSH-RG
# List the available Frontend IP configuration Names
$agw.FrontendIPConfigurations | Select Name
# Create Private Link IP configuration
$PrivateLinkIpConfiguration = New-AzApplicationGatewayPrivateLinkIpConfiguration `
-Name "ipConfig01" `
-Subnet ($vnet | Select -ExpandProperty subnets | Where-Object {$_.Name -eq 'AppGW-PL-Subnet'}) `
-Primary
# Add Private Link configuration to Application Gateway
Add-AzApplicationGatewayPrivateLinkConfiguration `
-ApplicationGateway $agw `
-Name "privateLinkConfig01" `
-IpConfiguration $PrivateLinkIpConfiguration
# Associate Private Link configuration with Frontend IP
$agwPip = ($agw | Select -ExpandProperty FrontendIpConfigurations| Where-Object {$_.Name -eq 'appGwPublicFrontendIp'}).PublicIPAddress.Id
$privateLinkConfiguration = ($agw | Select -ExpandProperty PrivateLinkConfigurations | Where-Object {$_.Name -eq 'privateLinkConfig01'}).Id
Set-AzApplicationGatewayFrontendIPConfig -ApplicationGateway $agw -Name "appGwPublicFrontendIp" -PublicIPAddressId $agwPip -PrivateLinkConfigurationId $privateLinkConfiguration
# Apply changes to Application Gateway
Set-AzApplicationGateway -ApplicationGateway $agw
# Configure Private Endpoint network (in the client/consumer virtual network)
# Disable Private Endpoint Network Policies
# https://learn.microsoft.com/azure/private-link/disable-private-endpoint-network-policy
$net =@{
Name = 'AppGW-PL-Endpoint-PSH-VNET'
ResourceGroupName = 'AppGW-PL-Endpoint-PSH-RG'
}
$vnet_plendpoint = Get-AzVirtualNetwork @net
($vnet_plendpoint | Select -ExpandProperty subnets | Where-Object {$_.Name -eq 'MySubnet'}).PrivateEndpointNetworkPolicies = "Disabled"
$vnet_plendpoint | Set-AzVirtualNetwork
# Create Private Link Endpoint - Group ID is the same as the frontend IP configuration
$privateEndpointConnection = New-AzPrivateLinkServiceConnection -Name "AppGW-PL-Connection" -PrivateLinkServiceId $agw.Id -GroupID "appGwPublicFrontendIp"
## Create the Private Endpoint
New-AzPrivateEndpoint -Name "AppGWPrivateEndpoint" -ResourceGroupName $vnet_plendpoint.ResourceGroupName -Location $vnet_plendpoint.Location -Subnet ($vnet_plendpoint | Select -ExpandProperty subnets | Where-Object {$_.Name -eq 'MySubnet'}) -PrivateLinkServiceConnection $privateEndpointConnection
مرجع PowerShell cmdlet
تتوفر أوامر Cmdlets Azure PowerShell التالية لإدارة تكوينات الارتباط الخاص لبوابة التطبيق:
استخدم أوامر Azure CLI التالية لتكوين Private Link على بوابة تطبيق موجودة:
# Disable Private Link Service Network Policies on the Private Link subnet
# Reference: https://learn.microsoft.com/azure/private-link/disable-private-endpoint-network-policy
az network vnet subnet update \
--name AppGW-PL-Subnet \
--vnet-name AppGW-PL-CLI-VNET \
--resource-group AppGW-PL-CLI-RG \
--disable-private-link-service-network-policies true
# List available Frontend IP configurations
az network application-gateway frontend-ip list \
--gateway-name AppGW-PL-CLI \
--resource-group AppGW-PL-CLI-RG
# Create Private Link configuration and associate with Frontend IP
az network application-gateway private-link add \
--frontend-ip appGwPublicFrontendIp \
--name privateLinkConfig01 \
--subnet /subscriptions/XXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX/resourceGroups/AppGW-PL-CLI-RG/providers/Microsoft.Network/virtualNetworks/AppGW-PL-CLI-VNET/subnets/AppGW-PL-Subnet \
--gateway-name AppGW-PL-CLI \
--resource-group AppGW-PL-CLI-RG
# Verify Private Link configuration
az network application-gateway private-link list \
--gateway-name AppGW-PL-CLI \
--resource-group AppGW-PL-CLI-RG
# Configure Private Endpoint network (in the client/consumer virtual network)
# Disable Private Endpoint Network Policies
az network vnet subnet update \
--name MySubnet \
--vnet-name AppGW-PL-Endpoint-CLI-VNET \
--resource-group AppGW-PL-Endpoint-CLI-RG \
--disable-private-endpoint-network-policies true
# Create Private Endpoint
# Note: Group ID must match the Frontend IP configuration name
az network private-endpoint create \
--name AppGWPrivateEndpoint \
--resource-group AppGW-PL-Endpoint-CLI-RG \
--vnet-name AppGW-PL-Endpoint-CLI-VNET \
--subnet MySubnet \
--group-id appGwPublicFrontendIp \
--private-connection-resource-id /subscriptions/XXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX/resourceGroups/AppGW-PL-CLI-RG/providers/Microsoft.Network/applicationGateways/AppGW-PL-CLI \
--connection-name AppGW-PL-Connection
Note
لنقل نقطة نهاية خاصة إلى اشتراك آخر، يجب عليك حذف الاتصال الحالي بين الرابط الخاص ونقطة النهاية الخاصة. بعد الحذف، قم بإنشاء اتصال نقطة نهاية خاصة جديد في الاشتراك الهدف لإعادة إنشاء الاتصال.
Caution
تكوين الرابط الخاص سيسبب تعطلا مؤقتا في حركة المرور (أقل من دقيقة واحدة) عند تفعيله أو تعطيله. يوصى بإجراء التغييرات خلال نافذة الصيانة أو فترة انخفاض حركة المرور. خلال هذا الوقت ، قد ترى مهلات الاتصال أو رموز حالة 4XX http التي تم إرجاعها عند الطلب. لن تتسبب إضافة/إزالة/موافقة/رفض نقاط النهاية الخاصة في انقطاع نسبة استخدام الشبكة.
مرجع Azure CLI
للحصول على مرجع أمر Azure CLI شامل لتكوين Application Gateway Private Link، راجع Azure CLI - Application Gateway Private Link.
الخطوات التالية
لمعرفة المزيد حول Azure Private Link والخدمات ذات الصلة: