إرشادات الأمان في "منصة خرائط Google"

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

بالإضافة إلى تطبيق قيود على مفتاح واجهة برمجة التطبيقات والتطبيقات، اتبع ممارسات الأمان التي تنطبق على منتجات معيّنة في "منصة خرائط Google". على سبيل المثال، يمكنك الاطلاع على واجهة برمجة تطبيقات JavaScript للخرائط أدناه في القيود الموصى بها للتطبيقات وواجهة برمجة التطبيقات:

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

لمزيد من التفاصيل حول التوقيعات الرقمية، راجع دليل التوقيع الرقمي

أفضل الممارسات المقترَحة

لمزيد من الأمان وتجنُّب دفع رسوم مقابل الاستخدام غير المصرّح به، اتّبِع الخطوات التالية: أفضل ممارسات أمان واجهة برمجة التطبيقات هذه لجميع واجهات برمجة التطبيقات أو حِزم SDK أو التالية:

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

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

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

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

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

اقتراحات إضافية للمواقع الإلكترونية التي تستخدم واجهات برمجة تطبيقات الويب الثابتة

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

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

حماية التطبيقات باستخدام خدمات الويب

اقتراحات إضافية لتطبيقات الأجهزة الجوّالة التي تعمل بنظامَي التشغيل iOS وAndroid

حماية التطبيقات للأجهزة الجوّالة باستخدام خدمة الويب أو واجهات برمجة تطبيقات الويب الثابتة

في حال تقييد أو إعادة إنشاء مفتاح واجهة برمجة تطبيقات قيد الاستخدام

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

  • بعد تغيير المفتاح، حدِّث جميع تطبيقاتك باستخدام مفاتيح واجهة برمجة التطبيقات الجديدة، كما احتاجت.

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

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

  • إذا تم اختراق مفتاح واجهة برمجة التطبيقات، ستحتاج إلى الانتقال بسرعة أكبر لتأمينه مفتاح واجهة برمجة التطبيقات وإيقاف إساءة الاستخدام. في تطبيقات Android وiOS، لا يتم استبدال المفاتيح. إلى أن يحدِّث العملاء تطبيقاتهم. تحديث أو استبدال المفاتيح في JavaScript أو تطبيقات خدمة الويب أكثر وضوحًا، ولكنها لا تزال تتطلب التخطيط الدقيق والعمل السريع.

    لمزيد من المعلومات، يُرجى مراجعة التعامل مع الاستخدام غير المصرَّح به لمفتاح واجهة برمجة التطبيقات

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

من أفضل الممارسات تقييد مفاتيح واجهة برمجة التطبيقات باستخدام أحد التطبيقات دائمًا. قيدًا واحدًا أو أكثر من قيود واجهة برمجة التطبيقات. بالنسبة إلى القيود المقترَحة من واجهة برمجة التطبيقات، أو SDK أو خدمة JavaScript، يُرجى الاطّلاع على القيود الموصى بها للتطبيقات وواجهة برمجة التطبيقات أدناه.

  • قيود التطبيق يمكنك حصر استخدام مفتاح واجهة برمجة التطبيقات على مجموعة الأنظمة الأساسية: تطبيقات Android أو iOS أو مواقع ويب محددة من جانب العميل تطبيقات أو عناوين IP محددة أو شبكات CIDR الفرعية للتطبيقات من جهة الخادم إصدار طلبات البيانات من واجهة برمجة تطبيقات REST API على الويب.

    يمكنك تقييد مفتاح من خلال إضافة واحد أو أكثر من قيود التطبيق من الأنواع ترغب في منح الإذن، وبعد ذلك يتم فقط الطلبات الناشئة من المصادر.

  • قيود واجهة برمجة التطبيقات يمكنك تقييد واجهات برمجة التطبيقات في Google Maps Platform API، حِزم تطوير البرامج (SDK) أو الخدمات التي يمكن استخدام مفتاح واجهة برمجة التطبيقات عليها. قيود واجهة برمجة التطبيقات فقط تسمح بالطلبات إلى واجهات برمجة التطبيقات وحزم تطوير البرامج (SDK) التي تحدّدها. لأي مفتاح واجهة برمجة تطبيقات محدد، تحديد أكبر عدد ممكن من قيود واجهة برمجة التطبيقات. قائمة واجهات برمجة التطبيقات المتاحة يشمل جميع واجهات برمجة التطبيقات المفعّلة في المشروع.

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

  1. فتح Google Cloud Console بيانات اعتماد "منصة خرائط Google" .

  2. اختَر مفتاح واجهة برمجة التطبيقات الذي تريد تقييده.

  3. في صفحة تعديل مفتاح واجهة برمجة التطبيقات، ضمن القيود الرئيسية، اختَر ضبط قيود على التطبيقات

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

  4. اختَر أحد أنواع القيود وقدِّم المعلومات المطلوبة. بعد قائمة القيود.

    نوع الحظر الوصف
    المواقع الإلكترونية حدِّد موقعًا إلكترونيًا واحدًا أو أكثر من المواقع الإلكترونية المُحيلة.
    • مخططات معرّف الموارد المنتظم (URI) المُحيل المتاحة عالميًا "https" وhttp"
    • أدخِل دائمًا معرّف الموارد المنتظم (URI) المُحيل الكامل، بما في ذلك مخطط البروتوكول واسم المضيف والمنفذ الاختياري (مثال: https://google.com).
    • يمكنك استخدام أحرف البدل للسماح لجميع النطاقات الفرعية. بالنسبة على سبيل المثال، يقبل https://*.google.com جميع المواقع الإلكترونية المنتهية في .google.com. لاحظ أنه إذا حددت www.domain.com، يعمل كحرف بدل www.domain.com/*، يسمح بأي مسار فرعي على اسم المضيف هذا.
    • كن حذرًا عند تفويض مُحيلي المسار الكامل، على سبيل المثال، https://google.com/some/path، حيث يتم بشكل افتراضي استخدام معظم تزيل المتصفحات الحالية المسار من الطلبات الواردة من عدّة مصادر.
    عناوين IP تحديد واحد أو أكثر من عناوين IPv4 أو IPv6، أو الشبكات الفرعية باستخدام CIDR التدوين. يجب أن تتطابق عناوين IP مع عنوان المصدر وتلاحظ خوادم "منصة خرائط Google". في حال استخدام ترجمة عنوان الشبكة (NAT)، يتجاوب هذا العنوان عادةً مع العنوان العلني على جهازك عنوان IP.
    تطبيقات Android أضف اسم حزمة Android (من AndroidManifest.xml) وخوارزمية SHA-1. الملف المرجعي لشهادة التوقيع لكل تطبيق Android تريده أن يُسمح بها. في حال استخدام ميزة "توقيع التطبيق" من Play، لاسترجاع الملف المرجعي لشهادة التوقيع، راجِع العمل مع مزوّدي واجهة برمجة التطبيقات. إذا كنت تدير مفتاح التوقيع الخاص بك، يمكنك الاطّلاع على التوقيع الذاتي على طلبك أو راجع تعليمات بيئة التصميم
    تطبيقات iOS أضِف معرّف الحزمة لكل تطبيق iOS تريده أن يُسمح بها.

    للحصول على اقتراحات بشأن فرض قيود على أحد التطبيقات، يُرجى الاطّلاع على القيود المُوصى بها للتطبيقات:

  5. انقر على حفظ.

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

  1. فتح Google Cloud Console بيانات اعتماد "منصة خرائط Google" .

  2. اختَر مفتاح واجهة برمجة التطبيقات الذي تريد تقييده.

  3. في صفحة تعديل مفتاح واجهة برمجة التطبيقات، ضمن قيود واجهة برمجة التطبيقات:

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

  4. انقر على حفظ.

    يصبح الحظر جزءًا من تعريف مفتاح واجهة برمجة التطبيقات بعد هذه الخطوة. تأكَّد من تقديم التفاصيل المناسبة واختَر حفظ لحفظ القيود المفروضة على مفتاح واجهة برمجة التطبيقات. لمزيد من المعلومات، يُرجى مراجعة دليل الحصول على مفتاح واجهة برمجة التطبيقات في المستندات الخاصة بواجهة برمجة التطبيقات أو حزمة تطوير البرامج (SDK) المحدّدة التي تهتم بها.

لمعرفة القيود المقترَحة لواجهة برمجة التطبيقات، يمكنك الاطّلاع على القيود الموصى بها لواجهة برمجة التطبيقات:

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

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

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

تتيح لك تقارير المقاييس التالية تحديد واجهات برمجة التطبيقات. تستخدم مفاتيح واجهة برمجة التطبيقات. استخدِم هذه التقارير لتنفيذ ما يلي:

  • الاطّلاع على كيفية استخدام مفاتيح واجهة برمجة التطبيقات
  • رصد الاستخدام غير المتوقَّع
  • المساعدة في التحقّق ممّا إذا كان المفتاح غير المستخدَم آمنًا لحذفه للحصول على معلومات حول حذف مفتاح واجهة برمجة التطبيقات، راجع حذف مفاتيح واجهة برمجة التطبيقات غير المستخدمة.

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

  1. الانتقال إلى قسم مستكشف المقاييس في Google Cloud Console.

  2. سجِّل الدخول واختَر المشروع الخاص بمفاتيح واجهة برمجة التطبيقات التي تريد التحقّق منها.

  3. انتقِل إلى صفحة "مستكشف المقاييس" لنوع واجهة برمجة التطبيقات الذي تستخدمه:

    • بالنسبة إلى مفاتيح واجهة برمجة التطبيقات التي تستخدم أي واجهة برمجة تطبيقات باستثناء Maps Embed API: انتقِل إلى مستكشف المقاييس

    • بالنسبة إلى مفاتيح واجهة برمجة التطبيقات التي تستخدم Maps Embed API: انتقِل إلى مستكشف المقاييس.

  4. فحص كل مفتاح من مفاتيح واجهة برمجة التطبيقات:

    1. اختَر إضافة فلتر.

    2. اختَر التصنيف credential_id.

    3. اختَر القيمة المقابلة للمفتاح الذي تريد فحصه.

    4. يُرجى تحديد واجهات برمجة التطبيقات التي يتم استخدام مفتاح واجهة برمجة التطبيقات هذا معها، والتأكّد من أنّ الاستخدام متوقع.

    5. بعد الانتهاء، اختَر إزالة الفلتر. في نهاية الفلتر النشط سطر لحذف عامل التصفية الإضافي.

  5. كرر هذا مع أي مفاتيح متبقية.

  6. اجعل مفاتيح واجهة برمجة التطبيقات تقتصر على واجهات برمجة التطبيقات المستخدَمة فقط.

  7. وإذا اكتشفت استخدامًا غير مصرح به، فراجع التعامل مع الاستخدام غير المصرَّح به لمفتاح واجهة برمجة التطبيقات

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

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

إذا كان مفتاح واجهة برمجة التطبيقات يتضمّن قيودًا مُقترَحة لمفتاح واجهة برمجة التطبيقات، يمكنك تطبيقها. لمزيد من المعلومات، تطبيق القيود المُقترَحة على مفتاح واجهة برمجة التطبيقات

إذا لم يكن مفتاح واجهة برمجة التطبيقات يحتوي على اقتراحات بشأن القيود، حدِّد نوع تقييد تطبيق واحد ليتم تطبيقه، بناءً على platform_type التي تم الإبلاغ عنها باستخدام مستكشف المقاييس:

  1. الانتقال إلى قسم مستكشف المقاييس في Google Cloud Console.

  2. سجِّل الدخول واختَر مشروع واجهات برمجة التطبيقات التي تريد التحقّق منها.

  3. انتقِل إلى صفحة "مستكشف المقاييس" هذه: مستكشف المقاييس.

  4. فحص كل مفتاح من مفاتيح واجهة برمجة التطبيقات:

    1. اختَر إضافة فلتر.

    2. اختَر التصنيف credential_id.

    3. اختَر القيمة المقابلة للمفتاح الذي تريد فحصه.

    4. بعد الانتهاء، اختَر إزالة الفلتر. في نهاية الفلتر النشط سطر لحذف عامل التصفية الإضافي.

  5. كرر هذا مع أي مفاتيح متبقية.

  6. بعد تحديد نوع النظام الأساسي لمفاتيح واجهة برمجة التطبيقات، يمكنك تطبيق القيود المفروضة على platform_type:

    PLATFORM_TYPE_JS
    طبِّق القيود على المواقع الإلكترونية على المفتاح.
    PLATFORM_TYPE_ANDROID
    طبِّق قيود تطبيقات Android على المفتاح.
    PLATFORM_TYPE_IOS
    طبِّق قيود تطبيقات iOS على المفتاح.
    PLATFORM_TYPE_WEBSERVICE
    قد تضطر إلى الاعتماد على قيود عنوان IP على المفتاح، لكي يتم تقييده. لمزيد من الخيارات لواجهة برمجة التطبيقات الثابتة للخرائط واجهة برمجة التطبيقات الثابتة لميزة "التجوّل الافتراضي"، يُرجى الاطّلاع على حماية التطبيقات باستخدام واجهات برمجة تطبيقات الويب الثابتة لمزيد من الإرشادات حول واجهة برمجة تطبيقات تضمين الخرائط، راجع المواقع الإلكترونية التي تستخدم Maps Embed API
    يستخدم مفتاح واجهة برمجة التطبيقات أنواعًا متعددة من الأنظمة الأساسية
    لا يمكن تأمين زياراتك بشكلٍ سليم باستخدام مفتاح واجهة برمجة تطبيقات واحد فقط. أنت بحاجة إلى لنقل البيانات إلى مفاتيح واجهة برمجة تطبيقات متعددة. لمزيد من المعلومات، يُرجى مراجعة نقل البيانات إلى مفاتيح واجهة برمجة تطبيقات متعددة

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

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

على الرغم من أن مفتاح واجهة برمجة تطبيقات واحد لكل تطبيق يُعد مثاليًا لأغراض متعلقة بالأمان، يمكنك استخدام مفاتيح محظورة في تطبيقات متعددة طالما أنها تستخدم النوع نفسه من قيد التطبيق.

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

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

ستظهر الاقتراحات كخيارات مملوءة مسبقًا، في حال توفّرها، على بيانات اعتماد "منصة خرائط Google" .

الأسباب المحتملة وراء عدم ظهور اقتراح لك أو سبب غير مكتمل

  • إذا كنت (أيضًا) تستخدم مفتاح واجهة برمجة التطبيقات على منصات أخرى غير "منصة خرائط Google" إذا لاحظت استخدامًا على خدمات أخرى، يُرجى عدم تطبيق بدون إجراء أولاً ما يلي:

    1. التأكّد من استخدام واجهة برمجة التطبيقات المعروضة في مقاييس Google Cloud Console مستكشفًا شرعية.

    2. إضافة الخدمات المفقودة يدويًا إلى قائمة واجهات برمجة التطبيقات ليتم ترخيصها.

    3. إضافة أي قيود مفقودة على تطبيقات الخدمات المُضافة يدويًا لقائمة واجهة برمجة التطبيقات. إذا كانت العناصر المضافة الأخرى تتطلب نوعًا مختلفًا من قيود التطبيقات، راجع نقل البيانات إلى مفاتيح واجهة برمجة تطبيقات متعددة

  • لا يتم استخدام مفتاح واجهة برمجة التطبيقات في حِزم تطوير البرامج (SDK) أو واجهات برمجة التطبيقات من جهة العميل.

  • استخدام مفتاح واجهة برمجة التطبيقات في تطبيق أو موقع إلكتروني منخفض الحجم لم يشهد أي استخدام خلال آخر 60 يومًا

  • إذا أنشأت مفتاحًا جديدًا مؤخرًا أو نشرته مؤخرًا مفتاح حالي في تطبيق جديد. في هذه الحالة، يُرجى الانتظار بضعة أيام أخرى. للسماح بتحديث الاقتراحات.

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

الأسباب المحتملة لظهور اقتراحات غير مرئية في الرسوم البيانية

  1. فتح Google Cloud Console بيانات اعتماد "منصة خرائط Google" .

  2. انقر على تطبيق القيود المُقترَحة، إن توفّر.

    تطبيق القيود المقترَحة

    ملاحظة: إذا لم تظهر لك أي قيود مقترَحة، يمكنك الاطّلاع على ضبط قيود واجهة برمجة التطبيقات لمفتاح واجهة برمجة التطبيقات لتحديد الخيارات المناسبة جديدة.

  3. اختَر التحقق من استخدام واجهة برمجة التطبيقات للتحقّق من الخدمات التي يستخدمها مفتاح واجهة برمجة التطبيقات. المستخدم عليه. إذا ظهرت لك خدمات أخرى غير "منصة خرائط Google"، عليك الإيقاف المؤقت. لمراجعة خطوات الاقتراحات أعلاه يدويًا الاطّلاع على خطوات تحديد المشاكل وحلّها الخطوات في بداية القسم تطبيق القيود المُقترَحة على مفتاح واجهة برمجة التطبيقات

  4. يُرجى التأكّد من أنّ القيود المعبأة مسبقًا تتطابق مع المواقع الإلكترونية والتطبيقات. التي تتوقع استخدام مفتاح واجهة برمجة التطبيقات فيها.

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

    • إذا كنت تعلم أن تطبيقًا أو موقعًا إلكترونيًا أو واجهة برمجة تطبيقات مفقودة من الموصى بها، فقم بإضافتها يدويًا أو انتظر بضعة أيام للسماح والتوصية بتحديثها.

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

  5. حدّد تطبيق.

ما يجب فعله في حال رفض طلبك بعد تطبيق توصية معيّنة

إذا لاحظت أنّه يتم رفض تطبيق أو موقع إلكتروني بعد فرض قيود، ابحث عن قيود التطبيق التي تحتاج إلى إضافتها في خطأ استجابة واجهة برمجة التطبيقات .

بالنسبة إلى حِزم SDK من جهة العميل، يُرجى الاطّلاع على ما يلي:

للتحقق من القيود المطلوبة لواجهة برمجة التطبيقات، يمكنك الاطّلاع على حدِّد واجهات برمجة التطبيقات التي تستخدم مفتاح واجهة برمجة التطبيقات.

إذا لم تتمكن من تحديد القيود التي يجب تطبيقها:

  1. توثيق القيود الحالية للرجوع إليها في المستقبل
  2. ننصحك بإزالتها مؤقتًا أثناء التحقيق في المشكلة. يمكنك التحقق من بمرور الوقت باتّباع الخطوات الواردة في مقالة التحقّق من استخدام مفتاح واجهة برمجة التطبيقات.
  3. يُرجى التواصل مع فريق الدعم إذا لزم الأمر.

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

قبل حذف مفتاح واجهة برمجة التطبيقات، تأكَّد من عدم استخدامه في مرحلة الإنتاج. في حال حذف عدم وجود حركة مرور ناجحة، فمن المحتمل أن يكون المفتاح آمنًا. لمزيد من المعلومات، المعلومات، يُرجى الاطّلاع على التحقُّق من استخدام مفتاح واجهة برمجة التطبيقات.

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

  1. فتح Google Cloud Console بيانات اعتماد "منصة خرائط Google" .

  2. اختَر مفتاح واجهة برمجة التطبيقات الذي تريد حذفه.

  3. انقر على الزر حذف بالقرب من أعلى الصفحة.

  4. في صفحة حذف بيانات الاعتماد، اختَر حذف.

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

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

تؤدي إعادة إنشاء مفتاح واجهة برمجة التطبيقات إلى إنشاء مفتاح جديد يحتوي على جميع مفاتيح جديدة. تؤدي هذه العملية أيضًا إلى بدء موقّت مدته 24 ساعة يتم بعدها عرض واجهة برمجة التطبيقات القديمة يتم حذف مفتاحك.

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

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

إذا لم تكن الاقتراحات السابقة ممكنة، وعليك إعادة إنشاء لمنع الاستخدام غير المصرّح به، اتّبِع الخطوات التالية:

  1. فتح Google Cloud Console بيانات اعتماد "منصة خرائط Google" .

  2. افتح مفتاح واجهة برمجة التطبيقات الذي تريد إعادة إنشائه.

  3. في أعلى الصفحة، اختَر إعادة إنشاء المفتاح.

  4. اختَر استبدال المفتاح.

ملاحظة: إذا لزم الأمر، يمكنك العودة إلى أي مفتاح تمت إعادة إنشاؤه إلى نسخته السابقة. ما مِن حدود زمنية للعودة إلى الحالة السابقة.

العودة إلى الإصدار السابق من مفتاح تمت إعادة إنشاؤه

  1. فتح Google Cloud Console بيانات اعتماد "منصة خرائط Google" .

  2. افتح مفتاح واجهة برمجة التطبيقات الذي تريد العودة إلى إصداره السابق.

  3. اختَر الرجوع إلى المفتاح السابق.

  4. في مربّع الحوار عودة، اختَر عودة المفتاح.

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

في حال إعادة إنشاء المفتاح مرة أخرى، سيتم استبدال قيمة المفتاح القديم غير النشط.

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

لنقل البيانات من استخدام مفتاح واجهة برمجة تطبيقات واحد لتطبيقات متعددة إلى مفتاح واجهة برمجة تطبيقات واحد فريد لكل تطبيق، اتّبِع الخطوات التالية:

  1. تحديد التطبيقات التي تحتاج إلى مفاتيح جديدة:

    • إنّ تطبيقات الويب هي الأسهل تحديثًا، لأنّها تتحكّم في كل الرموز البرمجية. التخطيط لتحديث جميع تطبيقاتك المستندة إلى الويب المفاتيح.
    • تكون تطبيقات الأجهزة الجوّالة أصعب بكثير، إذ يجب على العملاء تحديث تطبيقاتهم قبل استخدام المفاتيح الجديدة.
  2. إنشاء المفاتيح الجديدة وتقييدها: يمكنك إضافة أحد قيود التطبيق. وقيد واحد على الأقل لواجهة برمجة التطبيقات. لمزيد من المعلومات، يُرجى مراجعة أفضل الممارسات المقترَحة

  3. إضافة المفاتيح الجديدة إلى تطبيقاتك: بالنسبة إلى تطبيقات الأجهزة الجوّالة، قد تكون هذه العملية يستغرق الأمر شهورًا حتى يحدّث جميع المستخدمين لديك إلى أحدث تطبيق مفتاح واجهة برمجة التطبيقات.

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

واجهات برمجة تطبيقات الويب الثابتة، مثل Maps Static API تشبه واجهة برمجة التطبيقات الثابتة لميزة "التجوّل الافتراضي" طلبات البيانات من واجهة برمجة التطبيقات لخدمة الويب.

يمكنك استدعاء كل منهما باستخدام واجهة برمجة تطبيقات HTTPS REST بسيطة، وعادةً ما تنشئ واجهة برمجة التطبيقات. طلب عنوان URL على الخادم. ومع ذلك، بدلاً من عرض استجابة JSON، سيكون تنشئ واجهات برمجة تطبيقات الويب صورة يمكنك تضمينها في رمز HTML الذي تم إنشاؤه. المزيد والأهم من ذلك، فإن عميل المستخدم النهائي، وليس الخادم، هو الذي يستدعي خدمة Google Maps Platform.

استخدام توقيع رقمي

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

لمزيد من التفاصيل حول التوقيعات الرقمية، راجع دليل التوقيع الرقمي

حماية سر التوقيع

لحماية واجهات برمجة تطبيقات الويب الثابتة، لا تضمِّن أسرار توقيع واجهة برمجة التطبيقات مباشرةً في أو في شجرة المصدر، أو عرضها في التطبيقات من جانب العميل. متابعة أفضل الممارسات التالية لحماية أسرار التوقيع:

  • توقيع طلباتك من جهة الخادم، وليس على العميل في حال توقيعك العميل في JavaScript، فإنك تُعرّضه لأي شخص يزور موقعك. لذلك، بالنسبة إلى الصور التي تم إنشاؤها ديناميكيًا، يجب دائمًا إنشاء خرائط طلبات البيانات من جهة الخادم لواجهة برمجة التطبيقات الثابتة وواجهة برمجة التطبيقات الثابتة لميزة "التجوّل الافتراضي" عند عرض المحتوى صفحة الويب. بالنسبة إلى محتوى الويب الثابت، يمكنك استخدام الزر توقيع عنوان URL الآن. التطبيق المصغَّر في صفحة بيانات الاعتماد في "منصة خرائط Google" على Cloud Console.

  • أسرار توقيع المتجر خارج نطاق رمز المصدر وشجرة المصدر إذا وضعت أسرار التوقيع أو أي معلومات خاصة أخرى في متغيرات البيئة أو تضمين ملفات مخزنة بشكل منفصل ثم مشاركة الرمز، ولن يتم تضمين أسرار التوقيع في الملفات المشتركة. في حال حذف تخزن أسرار التوقيع أو أي معلومات خاصة أخرى في الملفات وتحتفظ الملفات خارج شجرة مصدر التطبيق للاحتفاظ بأسرار التوقيع خارج نظام التحكم في رمز المصدر يعد هذا الاحتياط مهم إذا كنت تستخدم نظامًا لإدارة رموز المصدر العامة، مثل GitHub.

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

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

حماية مفتاح واجهة برمجة التطبيقات وسر التوقيع في التطبيقات للأجهزة الجوّالة باستخدام خدمات الويب أو واجهات برمجة تطبيقات الويب الثابتة

لحماية التطبيقات للأجهزة الجوّالة، يمكنك استخدام ملف تخزين مفاتيح آمن أو خادم وكيل آمن:

  • تخزين مفتاح واجهة برمجة التطبيقات أو سر التوقيع في ملف تخزين مفاتيح آمن هذه الخطوة تجعل يصعب سرقة مفاتيح واجهة برمجة التطبيقات وغيرها من البيانات الخاصة مباشرةً من التطبيق.

  • استخدام خادم وكيل آمن. يوفر الخادم الوكيل مصدرًا قويًا التفاعل مع واجهة برمجة التطبيقات المناسبة في Google Maps Platform. لمزيد من المعلومات، معلومات حول استخدام خادم وكيل، راجع الاستخدام المباشر: استخدام خوادم الخادم الوكيل مع مكتبات عملاء Google Data API

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

    • بعد معالجة ردود "منصة خرائط Google" على الخادم الوكيل. تصفية البيانات التي لا يحتاجها العميل.

التعامل مع الاستخدام غير المصرَّح به لمفتاح واجهة برمجة التطبيقات

في حال رصد استخدام غير مصرَّح به لمفتاح واجهة برمجة التطبيقات، عليك اتّباع الخطوات التالية: لمعالجة المشكلة:

  1. تقييد المفاتيح: إذا كنت قد استخدمت المفتاح نفسه في عدة تطبيقات، الانتقال إلى مفاتيح واجهة برمجة تطبيقات متعددة، واستخدام مفاتيح واجهة برمجة تطبيقات منفصلة لكل تطبيق. لمزيد من التفاصيل، يُرجى الاطّلاع على:

  2. إعادة إنشاء المفاتيح فقط إذا لم تتمكن من تقييدها. قراءة كاملة قسم توخي الحذر عند إعادة إنشاء مفاتيح واجهة برمجة التطبيقات قبل المتابعة.

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

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

تقترح الأقسام التالية القيود المناسبة على التطبيقات وواجهة برمجة التطبيقات كل واجهة برمجة تطبيقات أو حزمة SDK أو خدمة في Google Maps Platform

القيود الموصى بها لواجهة برمجة التطبيقات

تنطبق الإرشادات التالية لقيود واجهة برمجة التطبيقات على كامل منصة خرائط Google:

  • احصر مفتاح واجهة برمجة التطبيقات على واجهات برمجة التطبيقات التي تستخدمه معها، من خلال الاستثناءات التالية:

    • إذا كان التطبيق يستخدم حزمة تطوير برامج الأماكن لأجهزة Android أو حزمة تطوير برامج الأماكن لأجهزة iOS، وعليك مصادقة واجهة برمجة تطبيقات الأماكن.

    • إذا كان تطبيقك يستخدم واجهة برمجة تطبيقات JavaScript للخرائط دائمًا من أجل تفويضه على مفتاحك.

    • في حال استخدام أي من واجهات برمجة تطبيقات JavaScript التالية للخرائط عليك أيضًا السماح بواجهات برمجة التطبيقات التالية:

    الخدمة تقييد واجهة برمجة التطبيقات
    Directions Service وMaps JavaScript API Directions API
    خدمة Distance Matrix وMaps JavaScript API Distance Matrix API
    خدمة تحديد الارتفاع وMaps JavaScript API Elevation API
    خدمة ترميز المواقع الجغرافية وMaps JavaScript API Geocoding API
    Places Library, Maps JavaScript API واجهة برمجة تطبيقات الأماكن

إليك بعض الأمثلة:

  • أنت تستخدم حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل Android حزمة تطوير برامج الأماكن لأجهزة Android، بحيث يمكنك تضمين حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لتطبيقات Android و"واجهة برمجة تطبيقات الأماكن" باسم قيود واجهة برمجة التطبيقات.

  • يستخدم موقعك الإلكتروني واجهة برمجة تطبيقات JavaScript للخرائط خدمة تحديد الارتفاع واجهة برمجة التطبيقات الثابتة للخرائط، وبالتالي يمكنك إضافة قيود واجهة برمجة التطبيقات لجميع واجهات برمجة التطبيقات التالية:

    • Maps JavaScript API
    • Elevation API
    • Maps Static API

قيود التطبيقات المقترَحة

المواقع الإلكترونية التي تستخدم واجهة برمجة تطبيقات JavaScript للخرائط أو واجهة برمجة تطبيقات الويب الثابتة

بالنسبة إلى المواقع الإلكترونية التي تستخدم خدمات JavaScript للخرائط أو واجهات برمجة تطبيقات الويب الثابتة، يمكنك استخدام قيد التطبيق Websites.

استخدِم هذه البيانات للمواقع الإلكترونية التي تستخدم خدمات JavaScript وواجهات برمجة التطبيقات التالية:

1 بالنسبة إلى تطبيقات الأجهزة الجوّالة، ننصحك باستخدام الإعلانات المدمجة مع المحتوى حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لتطبيقات Android وحزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لتطبيقات iOS

2 راجِع أيضًا حماية التطبيقات للأجهزة الجوّالة باستخدام خدمة الويب أو واجهات برمجة تطبيقات الويب الثابتة.

المواقع الإلكترونية التي تستخدم "واجهة برمجة التطبيقات للخرائط" المضمّنة

وفي حين أنّ واجهة برمجة التطبيقات Maps Embed API متوفّرة بدون أي تكلفة، يجب أن يظل تقييد أي مفتاح واجهة برمجة تطبيقات مستخدَم لمنع إساءة الاستخدام في الخدمات الأخرى.

أفضل الممارسات: إنشاء مفتاح واجهة برمجة تطبيقات منفصل لواجهة برمجة التطبيقات Maps Embed API هذا المفتاح، وحصره على واجهة برمجة تطبيقات تضمين الخرائط فقط. هذا النمط تأمين المفتاح بشكل كافٍ، ويمنع استخدامه غير المصرح به على أخرى من خدمات Google.

إذا لم تتمكن من فصل استخدام واجهة برمجة التطبيقات لتضمين الخرائط إلى مفتاح واجهة برمجة تطبيقات منفصل، يمكنك تأمين مفتاحك باستخدام Websites. قيد التطبيق.

التطبيقات والخوادم التي تستخدم خدمات الويب

بالنسبة إلى التطبيقات والخوادم التي تستخدم خدمات الويب، يمكنك استخدام IP addresses. قيد التطبيق.

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

3 بالنسبة إلى تطبيقات الأجهزة الجوّالة، ننصحك باستخدام الأصلي حزمة تطوير برامج الأماكن لأجهزة Android وحزمة تطوير البرامج للأماكن لأجهزة iOS.

تطبيقات Android

بالنسبة إلى التطبيقات على Android، يمكنك فرض قيود على التطبيق Android apps. استخدِم هذه الحِزم للتطبيقات والخوادم التي تستخدم حِزم تطوير البرامج (SDK) التالية:

بالإضافة إلى ذلك، يمكنك منع التحقق غير المقصود من مفاتيح واجهة برمجة التطبيقات في التحكم في الإصدار عن طريق باستخدام أداة Gradle السرّية المكون الإضافي لإدخال المفاتيح السرّية من ملف محلي بدلاً من تخزينها في بيان Android.

تطبيقات iOS

بالنسبة إلى التطبيقات التي تعمل بنظام التشغيل iOS، يمكنك فرض قيود على التطبيقات iOS apps. استخدِم هذه الحِزم للتطبيقات والخوادم التي تستخدم حِزم تطوير البرامج (SDK) التالية: