الاتصال بشكل خاص بإدارة واجهة برمجة التطبيقات باستخدام نقطة نهاية خاصة واردة
ينطبق على: المطور | أساسي | قياسي | قسط
يمكنك تكوين نقطة نهاية خاصة واردة لمثيل APIM للسماح للعملاء في شبكتك الخاصة بالوصول بأمان إلى المثيل عبر Azure Private Link.
تستخدم نقطة النهاية الخاصة عنوان IP من Azure VNet الذي تتم استضافته فيه.
تنتقل نسبة استخدام الشبكة بين عميل على شبكتك الخاصة وAPI Management عبر الشبكة الظاهرية وارتباط خاص على شبكة Microsoft الأساسية، مما يلغي التعرض للإنترنت العام.
تكوين إعدادات DNS المخصصة أو منطقة خاصة لـ Azure DNS لتعيين اسم مضيف API Management إلى عنوان IP الخاص بنقطة النهاية.
باستخدام نقطة نهاية خاصة ورابط خاص، يمكنك القيام بما يلي:
إنشاء اتصالات ارتباط خاص متعددة بمثيل API Management.
استخدام نقطة النهاية الخاصة لإرسال نسبة استخدام الشبكة الواردة على اتصال آمن.
استخدام النهج لتمييز نسبة استخدام الشبكة التي تأتي من نقطة النهاية الخاصة.
قصر نسبة استخدام الشبكة الواردة على نقاط النهاية الخاصة فقط، مما يمنع استخراج البيانات.
هام
يمكنك فقط تكوين اتصال نقطة نهاية خاصة لنسبة استخدام الشبكة الواردة إلى مثيل APIM. حاليا، نسبة استخدام الشبكة الصادرة غير مدعومة.
يمكنك استخدام نموذج الشبكة الظاهرية الخارجية أو الداخلية لإنشاء اتصال صادر بنقاط النهاية الخاصة من مثيل API Management.
لتمكين نقاط النهاية الخاصة الواردة، لا يمكن إدخال مثيل APIM في شبكة ظاهرية خارجية أو داخلية.
القيود
- تدعم نقطة نهاية بوابة مثيل APIM فقط اتصالات Private Link الواردة.
- يدعم كل مثيل APIM على الأكثر 100 اتصال Private Link.
- الاتصالات غير مدعومة على البوابة المستضافة ذاتيا أو على بوابة مساحة العمل.
المتطلبات الأساسية
- مثيل APIM موجود. أنشئ واحد إذا لم تكن قد قمت بذلك بالفعل.
- يجب استضافة مثيل API Management على
stv2
النظام الأساسي للحساب. - لا توزع (إدخال) المثيل في شبكة ظاهرية خارجية أو داخلية.
- يجب استضافة مثيل API Management على
- شبكة ظاهرية وشبكة فرعية لاستضافة نقطة النهاية الخاصة. قد تحتوي الشبكة الفرعية على موارد Azure أخرى.
- (مستحسن) جهاز ظاهري في نفس الشبكة الفرعية أو شبكة فرعية مختلفة في الشبكة الظاهرية، لاختبار نقطة النهاية الخاصة.
استخدم بيئة Bash في Azure Cloud Shell. لمزيد من المعلومات، راجع التشغيل السريع ل Bash في Azure Cloud Shell.
إذا كنت تفضل تشغيل أوامر مرجع CLI محلياً قم بتثبيت CLI Azure. إذا كنت تعمل على نظام تشغيل Windows أو macOS، ففكر في تشغيل Azure CLI في حاوية Docker. لمزيد من المعلومات، راجع كيفية تشغيل Azure CLI في حاوية Docker.
إذا كنت تستخدم تثبيت محلي، يُرجى تسجيل الدخول إلى Azure CLI مستخدمًا أمر az login. لإنهاء عملية المصادقة، اتبع الخطوات المعروضة في جهازك. للحصول على خيارات أخرى لتسجيل دخول، راجع تسجيل الدخول باستخدام Azure CLI.
عندما يُطلب منك، قم بتثبيت ملحق Azure CLI عند الاستخدام لأول مرة. لمزيد من المعلومات بشأن الامتدادات، راجع استخدام امتدادات مع Azure CLI.
يُرجى تشغيل إصدار az للوصول إلى الإصدار والمكتبات التابعة التي تم تثبيتها. للتحديث لآخر إصدار، يُرجى تشغيل تحديث az.
طريقة الموافقة لنقطة النهاية الخاصة
عادة ما ينشئ مسؤول الشبكة نقطة نهاية خاصة. اعتمادًا على أذونات التحكم في الوصول المستندة إلى دور Azure (RBAC)، تتم الموافقة تلقائيًا على نقطة النهاية الخاصة التي تقوم بإنشائها لإرسال نسبة استخدام الشبكة إلى مثيل API Management، أو تتطلب من مالك المورد الموافقة يدويًا على الاتصال.
طريقة الموافقة | الحد الأدنى من أذونات التحكم في الوصول استنادًا إلى الدور |
---|---|
تلقائي | Microsoft.Network/virtualNetworks/** Microsoft.Network/virtualNetworks/subnets/** Microsoft.Network/privateEndpoints/** Microsoft.Network/networkinterfaces/** Microsoft.Network/locations/availablePrivateEndpointTypes/read Microsoft.ApiManagement/service/** Microsoft.ApiManagement/service/privateEndpointConnections/** |
يدوي | Microsoft.Network/virtualNetworks/** Microsoft.Network/virtualNetworks/subnets/** Microsoft.Network/privateEndpoints/** Microsoft.Network/networkinterfaces/** Microsoft.Network/locations/availablePrivateEndpointTypes/read |
خطوات تكوين نقطة النهاية الخاصة
- الحصول على أنواع نقاط النهاية الخاصة المتوفرة في الاشتراك
- تعطيل نهج الشبكة في الشبكة الفرعية
- إنشاء نقطة نهاية خاصة - المدخل
- سرد اتصالات نقطة النهاية الخاصة بالمثيل
- الموافقة على اتصالات نقطة النهاية الخاصة المعلقة
- تمكين الوصول اختياريًا إلى الشبكة العامة أو تعطيله
الحصول على أنواع نقاط النهاية الخاصة المتوفرة في الاشتراك
تحقق من أن نوع نقطة النهاية الخاصة بـ API Management متوفر في اشتراكك وموقعك. في المدخل، ابحث عن هذه المعلومات عن طريق الانتقال إلى مركز الارتباطات الخاصة. حدد الموارد المدعومة.
كما يمكنك العثور على هذه المعلومات باستخدام أنواع نقاط النهاية الخاصة المتوفرة - قائمة واجهة برمجة تطبيقات REST.
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{region}/availablePrivateEndpointTypes?api-version=2021-03-01
الإخراج يجب أن يتضمن Microsoft.ApiManagement.service
نوع نقطة النهاية:
[...]
"name": "Microsoft.ApiManagement.service",
"id": "/subscriptions/{subscriptionId}/providers/Microsoft.Network/AvailablePrivateEndpointTypes/Microsoft.ApiManagement.service",
"type": "Microsoft.Network/AvailablePrivateEndpointTypes",
"resourceName": "Microsoft.ApiManagement/service",
"displayName": "Microsoft.ApiManagement/service",
"apiVersion": "2021-04-01-preview"
}
[...]
عطّل نُهج الشبكة في الشبكة الفرعية
لابد من تعطيل نُهج الشبكة مثل مجموعات أمان الشبكة في الشبكة الفرعية المستخدمة لنقطة النهاية الخاصة.
إذا كنت تستخدم أدوات مثل Azure PowerShell أو Azure CLI أو واجهة برمجة تطبيقات REST لتكوين نقاط النهاية الخاصة، فقم بتحديث تكوين الشبكة الفرعية يدويًا. للحصول على أمثلة، راجع إدارة نُهج الشبكة لنقاط النهاية الخاصة.
عند استخدام مدخل Microsoft Azure لإنشاء نقطة نهاية خاصة، كما هو موضح في القسم التالي، يتم تعطيل نهج الشبكة تلقائيًا كجزء من عملية الإنشاء
إنشاء نقطة نهاية خاصة - المدخل
انتقل إلى خدمة API Management في مدخل Azure.
في القائمة اليسرى، ضمن Deployment + infrastructure، حدد Network.
حدد Inbound private endpoint connections>+ Add endpoint.
في علامة التبويب Basics في Create a private endpointأدخل، أو حدد المعلومات التالية:
الإعداد القيمة تفاصيل المشروع الاشتراك حدد Subscription الخاص بك. مجموعة الموارد حدد مجموعة موارد موجودة أو أنشئ واحدة جديدة. لابد أن يكون في نفس المنطقة مثل شبكتك الظاهرية. تفاصيل المثيل الاسم أدخل اسمًا لنقطة النهاية مثل myPrivateEndpoint. اسم واجهة الشبكة أدخل اسما لواجهة الشبكة، مثل myInterface المنطقة حدد موقعًا لنقطة النهاية الخاصة. لابد أن يكون في نفس المنطقة مثل شبكتك الظاهرية. قد يختلف عن المنطقة التي تتم فيها استضافة مثيل API Management الخاص بك. حدد الزر التالي: المورد في أسفل الشاشة. تم بالفعل ملء المعلومات التالية حول مثيل API Management الخاص بك:
- الاشتراك
- نوع المورد
- اسم المورد
في Resource، في Target sub-resource، حدد Gateway.
حدد الزر Next: Virtual Network الموجود أسفل الشاشة.
في Networking، أدخل هذه المعلومات أو حددها:
حدد الزر التالي: DNS في أسفل الشاشة.
في تكامل DNS الخاص، أدخل هذه المعلومات أو حددها:
الإعداد القيمة التكامل مع منطقة DNS الخاصة اترك الإعداد الافتراضي نعم. الاشتراك حدد Subscription الخاص بك. مجموعة الموارد حدد مجموعة الموارد الخاصة بك. مناطق DNS الخاصة يتم عرض القيمة الافتراضية: (جديد) privatelink.azure-api.net. حدد الزر التالي: علامات التبويب في أسفل الشاشة. إذا كنت ترغب في ذلك، أدخل علامات لتنظيم موارد Azure.
- حدد الزر التالي: مراجعة + إنشاء في أسفل الشاشة.
حدد إنشاء.
سرد اتصالات نقطة النهاية الخاصة بالمثيل
بعد إنشاء نقطة النهاية الخاصة وتحديث الخدمة، تظهر في القائمة على صفحة اتصالات نقطة النهاية الخاصة الواردة لمثيل APIM في المدخل.
لاحظ حالة اتصال نقطة النهاية:
- الموافقة تشير إلى أن مورد API Management وافق تلقائيًا على الاتصال.
- Pending يشير إلى أنه يجب الموافقة على الاتصال يدويًا من قبل مالك المورد.
الموافقة على اتصالات نقطة النهاية الخاصة المعلقة
إذا كان اتصال نقطة نهاية خاصة في حالة معلقة، يجب على مالك مثيل API Management الموافقة عليه يدويًا قبل أن يمكن استخدامه.
إذا كان لديك أذونات كافية، فوافق على اتصال نقطة نهاية خاصة في صفحة اتصالات نقطة النهاية الخاصة لمثيل API Management في المدخل. في قائمة (...)سياق الاتصال، حدد Approve.
يمكنك أيضا استخدام API Management Private Endpoint Connection - إنشاء أو تحديث REST API للموافقة على اتصالات نقطة النهاية الخاصة المعلقة.
تمكين الوصول اختياريًا إلى الشبكة العامة أو تعطيله
للحد اختياريًا من نسبة استخدام الشبكة الواردة إلى مثيل API Management فقط إلى نقاط النهاية الخاصة، قم بتعطيل الوصول إلى الشبكة العامة.
إشعار
يمكن تعطيل الوصول إلى الشبكة العامة فقط في مثيلات APIM المكونة بنقطة نهاية خاصة، وليس مع تكوينات الشبكات الأخرى مثل حقن VNet.
لتعطيل الوصول إلى الشبكة العامة باستخدام Azure CLI، قم بتشغيل الأمر التالي az apim update ، واستبدال أسماء مثيل APIM ومجموعة الموارد:
az apim update --name my-apim-service --resource-group my-resource-group --public-network-access false
يمكنك أيضا استخدام خدمة إدارة واجهة برمجة التطبيقات - تحديث واجهة برمجة تطبيقات REST لتعطيل الوصول إلى الشبكة العامة، عن طريق تعيين الخاصية publicNetworkAccess
إلى Disabled
.
التحقق من اتصال نقطة نهاية خاصة
بعد إنشاء نقطة النهاية الخاصة، تأكد من إعدادات DNS الخاصة بها في المدخل:
انتقل إلى خدمة API Management في مدخل Azure.
في القائمة اليسرى، ضمن Deployment + infrastructure، حدد Network>Inbound private endpoint connections، وحدد نقطة النهاية الخاصة التي أنشأتها.
في التنقل الأيسر، ضمن Settings، حدد DNS configuration.
راجع سجلات DNS وعنوان IP لنقطة النهاية الخاصة. عنوان IP عبارة عن عنوان خاص في مساحة العنوان للشبكة الفرعية حيث يتم تكوين نقطة النهاية الخاصة.
الاختبار في الشبكة الظاهرية
اتصل بجهاز ظاهري قمت بإعداده في الشبكة الظاهرية.
قم بتشغيل أداة مساعدة مثل nslookup
أو dig
للبحث عن عنوان IP الخاص بنقطة نهاية البوابة الافتراضي عبر الرابط الخاص. على سبيل المثال:
nslookup my-apim-service.azure-api.net
الإخراج يجب أن يتضمن عنوان IP الخاص المقترن بنقطة النهاية الخاصة.
استدعاءات واجهة برمجة التطبيقات التي بدأت داخل الشبكة الظاهرية إلى نقطة نهاية البوابة الافتراضية يجب أن تنجح.
الاختبار من الإنترنت
من خارج مسار نقطة النهاية الخاصة، حاول استدعاء نقطة نهاية البوابة الافتراضية لمثيل API Management. إذا تم تعطيل الوصول العام، يتضمن الإخراج خطأ مع رمز 403
الحالة ورسالة مشابهة ل:
Request originated from client public IP address xxx.xxx.xxx.xxx, public network access on this 'Microsoft.ApiManagement/service/my-apim-service' is disabled.
To connect to 'Microsoft.ApiManagement/service/my-apim-service', please use the Private Endpoint from inside your virtual network.
المحتوى ذو الصلة
- استخدم تعبيرات النهج مع
context.request
المتغير لتحديد نسبة استخدام الشبكة من نقطة النهاية الخاصة. - تعرف على المزيد حول نقاط النهاية الخاصة والارتباط الخاص، بما في ذلك تسعير Private Link.
- إدارة اتصالات نقطة النهاية الخاصة.
- استكشاف أخطاء اتصال Azure Private Endpoint وإصلاحها.
- استخدم قالب Resource Manager لإنشاء مثيل APIM ونقطة نهاية خاصة مع تكامل DNS خاص.