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

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

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

قبل البدء

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

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

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

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

وحدة التحكّم

  1. انتقل إلى Google Maps Platform > بيانات الاعتماد.

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

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

SDK للسحاب

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

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

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

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

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

وحدة التحكّم

  1. انتقل إلى Google Maps Platform > بيانات الاعتماد.

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

  2. اختَر مفتاح واجهة برمجة التطبيقات الذي تريد وضع قيود عليه. ستظهر لك صفحة خاصية مفتاح واجهة برمجة التطبيقات.
  3. ضمن قيود المفاتيح، اضبط القيود التالية:
    • قيود التطبيقات:
      1. لقبول الطلبات من قائمة المواقع الإلكترونية التي توفِّرها، اختَر HTTP. المُحيلين (مواقع الويب) من قائمة التطبيقات القيود.
      2. حدِّد موقعًا إلكترونيًا واحدًا أو أكثر من المواقع الإلكترونية المُحيلة. يمكنك استخدام حرف البدل أحرفًا للسماح لجميع النطاقات الفرعية (على سبيل المثال، يقبل https://*.google.com جميع المواقع التي تنتهي بـ .google.com عند الوصول إليها عبر HTTPS). لاحظ أنه إذا حددت www.domain.com، يعمل كحرف بدل www.domain.com/*، يسمح بأي مسار فرعي على اسم المضيف هذا. مخطَّطا المُحيل "https://" و"http://" فقط
    • قيود واجهة برمجة التطبيقات:
      1. انقر على تقييد المفتاح.
      2. اختَر Maps Embed API من القائمة المنسدلة Select APIs (اختيار واجهات برمجة التطبيقات). إذا كانت واجهة برمجة تطبيقات تضمين الخرائط غير مدرجة، فعليك تفعيلها
      3. إذا كان مشروعك يستخدم مكتبة الأماكن، اختَر أيضًا واجهة برمجة تطبيقات الأماكن. وبالمثل، إذا كان مشروعك يستخدم خدمات أخرى في JavaScript API. (خدمة الاتجاهات، خدمة مصفوفة المسافة، خدمة تحديد الارتفاع و/أو خدمة الترميز الجغرافي) يجب أيضًا تفعيل واجهة برمجة التطبيقات المقابلة واختيارها في هذه القائمة.
  4. لإتمام التغييرات، انقر على حفظ.

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="maps-embed-backend.googleapis.com"
    --allowed-referrers="referer"

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

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

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

  https://www.google.com/maps/embed/v1/MAP_MODE?key=YOUR_API_KEY&parameters