الاتصال بـ API عن طريق استخدام مفتاح اشتراك

مكتمل

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

هنا، ستتعلم كيفية استخدام مفاتيح الاشتراك لتأمين واجهات برمجة التطبيقات الخاصة بك.

اشتراكات ومفاتيح

لكي تقوم بحماية واجهات برمجة التطبيقات (API) الخاصة بك، يمكن أن تستخدم مفتاح اشتراك.

إشعار

في بيئات إدارة واجهة برمجة التطبيقات للإنتاج، يمكنك عادة دمج مفتاح اشتراك مع آليات أخرى لحماية واجهات برمجة التطبيقات الخاصة بك من الاستخدام غير المصرح به، مثل مصادقة الشهادة أو تخويل OAuth 2.0. هذه خارج نطاق هذه الوحدة النمطية.

مفتاح الاشتراك هو سلسلة فريدة تم إنشاؤها تلقائيا، والتي يتم تمريرها في رؤوس طلب العميل، أو كسلسلة استعلام في عنوان URL. يرتبط المفتاح ارتباطاً مباشراً بالاشتراك، والذي يمكن تحديد نطاقه لمناطق مختلفة، ما يمنح تحكماً دقيقاً في الأذونات والسياسات. نطاقات الاشتراك الرئيسية هي:

  • جميع API
  • واجهة برمجة تطبيقات واحدة
  • منتج

يجب أن يتضمن التطبيق الذي يستدعي واجهة برمجة تطبيقات محمية المفتاح في الطلب.

يمكنك إعادة إنشاء مفاتيح الاشتراك هذه في أي وقت. على سبيل المثال، أعد إنشاء مفاتيح الاشتراك إذا كنت تشك في مشاركة مفتاح مع مستخدمين غير مصرح لهم.

Subscription keys.

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

بالنسبة إلى المنتجات حيث يتم تمكين الاشتراكات، يجب عليك توفير مفتاح عند الاتصال بواجهة برمجة التطبيقات API في ذلك المنتج. كمطور، يمكن أن تحصل على مفتاح عن طريق تقديم طلب الاشتراك. هذه العملية هي جزء أساسي من سير عمل APIM.

إشعار

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

الاتصال بواجهة برمجة التطبيقات API من خلال استخدام مفتاح الاشتراك

يجب أن تحتوي التطبيقات على مفتاح صالح في جميع طلبات HTTP عند إجراء مكالمات إلى نقاط نهاية API المحمية عن طريق الاشتراك. يمكن تمرير المفاتيح في عنوان الطلب، أو كسلسلة استفسار في URL.

اسم العنوان الافتراضي هو Ocp-Apim-Subscription-Key، وتكون سلسلة الاستعلام الافتراضية هي subscription-key.

لاختبار استدعاءات واجهة برمجة التطبيقات الخاصة بك، يمكنك استخدام مدخل المطور (إذا كان متوفرا في مستوى الخدمة)، أو أداة سطر الأوامر مثل curl، أو أدوات أخرى مثل Postman.

فيما يلي مثال لطلب GET الذي يمرر مفتاحا في عنوان الطلب باستخدام الأمر curl :

curl --header "Ocp-Apim-Subscription-Key: <key string>" https://<apim gateway>.azure-api.net/api/path

فيما يلي مثال على أمر curl الذي يقوم بتمرير مفتاح في عنوان URL في شكل سلسلة استعلام:

curl https://<apim gateway>.azure-api.net/api/path?subscription-key=<key string>

إذا لم يتم تمرير المفتاح في العنوان، أو كسلسلة استعلام في عنوان URL، فستحصل على استجابة 401 Access Denied من بوابة API.