استخدام مفاتيح واجهة برمجة التطبيقات مع واجهة برمجة التطبيقات Time Zone API

تتم حماية منتجات "منصة خرائط Google" من أي استخدام غير مصرَّح به، وذلك من خلال حصر طلبات البيانات من واجهة برمجة التطبيقات على تلك التي تقدّم بيانات اعتماد مصادقة مناسبة. وتكون بيانات الاعتماد هذه في شكل مفتاح واجهة برمجة التطبيقات، وهو سلسلة أبجدية رقمية فريدة تربط حساب الفوترة في Google بمشروعك، وواجهة برمجة التطبيقات أو حزمة تطوير البرامج (SDK) المحدّدة.

يوضّح هذا الدليل كيفية إنشاء مفتاح واجهة برمجة التطبيقات وحصره واستخدامه على "منصة خرائط Google".

قبل البدء

قبل البدء في استخدام Time Zone API، ستحتاج إلى مشروع يتضمّن حساب فوترة وأن تكون واجهة برمجة التطبيقات Time Zone API مفعَّلة. لمزيد من المعلومات، يُرجى الاطّلاع على الإعداد في Cloud Console.

إنشاء مفاتيح واجهة برمجة التطبيقات

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

لإنشاء مفتاح واجهة برمجة التطبيقات:

وحدة التحكم

  1. انتقِل إلى صفحة منصة خرائط Google > بيانات الاعتماد.

    الانتقال إلى صفحة "بيانات الاعتماد"

  2. في صفحة بيانات الاعتماد، انقر على إنشاء بيانات اعتماد > مفتاح واجهة برمجة التطبيقات.
    يعرض مربّع الحوار تم إنشاء مفتاح واجهة برمجة التطبيقات مفتاح واجهة برمجة التطبيقات الذي تم إنشاؤه حديثًا.
  3. انقر على إغلاق.
    يتم إدراج مفتاح واجهة برمجة التطبيقات الجديد في صفحة بيانات الاعتماد ضمن مفاتيح واجهة برمجة التطبيقات.
    (احرص على تقييد مفتاح واجهة برمجة التطبيقات قبل استخدامه في مرحلة الإنتاج.)

Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

يمكنك الاطّلاع على مزيد من المعلومات عن حزمة تطوير البرامج (SDK) في Google Cloud، وتثبيت حزمة تطوير البرامج (SDK) في السحابة الإلكترونية والأوامر التالية:

تقييد مفاتيح واجهة برمجة التطبيقات

تنصح Google بشدة بتقييد مفاتيح واجهة برمجة التطبيقات عن طريق حصر استخدامها على واجهات برمجة التطبيقات المطلوبة لتطبيقك فقط. يؤدي تقييد مفاتيح واجهة برمجة التطبيقات إلى إضافة أمان إلى تطبيقك عن طريق حمايته من الطلبات غير المضمونة. لمزيد من المعلومات، يُرجى الاطِّلاع على أفضل ممارسات أمان واجهة برمجة التطبيقات.

لتقييد مفتاح واجهة برمجة التطبيقات:

وحدة التحكم

  1. انتقِل إلى صفحة منصة خرائط Google > بيانات الاعتماد.

    الانتقال إلى صفحة "بيانات الاعتماد"

  2. اختَر مفتاح واجهة برمجة التطبيقات الذي تريد فرض قيود عليه. ستظهر صفحة خصائص مفتاح واجهة برمجة التطبيقات.
  3. ضمن القيود الرئيسية، اضبط القيود التالية:
    • قيود التطبيقات:
      1. لقبول الطلبات من قائمة عناوين IP التي تقدّمها لخادم الويب، اختَر عناوين IP (خوادم الويب ومهام cron وما إلى ذلك) من قائمة قيود التطبيقات. حدِّد عنوانًا واحدًا أو أكثر من عناوين IPv4 أو IPv6، أو الشبكة الفرعية باستخدام تدوين CIDR. يجب أن تتطابق عناوين IP مع عنوان المصدر الذي تلاحظه خوادم "منصة خرائط Google". إذا كنت تستخدم تقنية ترجمة عنوان الشبكة (NAT)، يكون ذلك عادةً مطابقًا لعنوان IP المتاح للجميع لجهازك.
    • قيود واجهة برمجة التطبيقات:
      1. انقر على تقييد المفتاح.
      2. اختَر Time Zone API من القائمة المنسدلة اختيار واجهات برمجة التطبيقات. إذا لم تكن واجهة برمجة التطبيقات Time Zone API مُدرَجة، عليك تفعيلها.
  4. لإنهاء التغييرات التي أجريتها، انقر على حفظ.

Cloud SDK

إدراج المفاتيح الحالية

gcloud services api-keys list --project="PROJECT"

يمكنك محو القيود الحالية المفروضة على المفتاح الحالي.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

ضبط قيود جديدة على المفتاح الحالي

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api-target="timezone-backend.googleapis.com"
    --allowed-ips="IP_ADDRESS"

يمكنك الاطّلاع على مزيد من المعلومات عن حزمة تطوير البرامج (SDK) في Google Cloud، وتثبيت حزمة تطوير البرامج (SDK) في السحابة الإلكترونية والأوامر التالية:

جارٍ إضافة مفتاح واجهة برمجة التطبيقات إلى طلبك

عليك تضمين مفتاح واجهة برمجة التطبيقات مع كل طلب من واجهة برمجة التطبيقات Time Zone API. في المثال التالي، استبدِل YOUR_API_KEY بمفتاح واجهة برمجة التطبيقات.

https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331161200&key=YOUR_API_KEY

يجب استخدام HTTPS للطلبات التي تستخدم مفتاح واجهة برمجة التطبيقات.