الإعداد

توضّح هذه الصفحة طريقة إعداد تطبيقك أو لعبتك لاستخدام Play Integrity API. عليك تفعيل الردود من واجهة برمجة التطبيقات، وبعد ذلك دمج واجهة برمجة التطبيقات في تطبيقك وخادم الخلفية في تطبيقك. تتوفّر خيارات ضبط إضافية وميزات الاختبار وإعداد التقارير بعد ربط مشروع Google Cloud الذي تستخدمه في Play Integrity API في Google Play Console.

تفعيل ردود واجهة برمجة التطبيقات Play Integrity API

يحتاج كل تطبيق أو حزمة SDK تستدعي واجهة برمجة التطبيقات Play Integrity API إلى الاستفادة من مشروع على Google Cloud لمراقبة استخدام واجهة برمجة التطبيقات. يمكن للتطبيقات على Google Play ربط مشروع على السحابة الإلكترونية في Google Play Console لتفعيل ردود واجهة برمجة التطبيقات Play Integrity API. إذا أردت إنشاء مشروع جديد على السحابة الإلكترونية أو إذا تم توزيع تطبيقك حصريًا خارج Google Play، يمكنك تفعيل ردود واجهة برمجة التطبيقات Play Integrity API من خلال Google Cloud Console.

الإعداد في Google Play Console (يُنصح به)

من خلال تفعيل ردود واجهة برمجة التطبيقات Play Integrity API في Google Play Console، ستتمكّن من الوصول إلى المزيد من خيارات الضبط وميزات الاختبار وإعداد تقارير واجهة برمجة التطبيقات. ولا يتوفّر هذا الخيار إلا للتطبيقات التي يتم توزيعها على Google Play. انتقِل إلى الإصدار > سلامة التطبيق. ضمن Play Integrity API، انقر على ربط مشروع على السحابة الإلكترونية. اختَر المشروع على السحابة الإلكترونية الذي تريد ربطه بتطبيقك وسيؤدي ذلك إلى تفعيل ردود واجهة برمجة التطبيقات Play Integrity API. يمكنك الآن دمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك.

الإعداد في Google Cloud Console

في Google Cloud Console، أنشِئ مشروعًا جديدًا على Cloud أو اختَر مشروعًا حاليًا تريد استخدامه مع واجهة برمجة التطبيقات Play Integrity API. انتقِل إلى واجهات برمجة التطبيقات والخدمات. اختَر تفعيل واجهات برمجة التطبيقات والخدمات. ابحث عن واجهة برمجة التطبيقات Play Integrity API ثم فعِّلها. يمكنك الآن دمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك.

تعليمات حول إعداد موفّري حِزم SDK

على موفِّري حِزم SDK استخدام مشاريعهم على Google Cloud لطلب بيانات من Play Integrity API، وبالتالي، يتم تحديد مصدر استخدام واجهة برمجة التطبيقات هذا إلى حزمة SDK وليس إلى التطبيقات الفردية التي تستخدم حِزمة SDK. يعني هذا أنّ التطبيقات التي تستخدم حزمة تطوير البرامج (SDK) لن تحتاج إلى إعداد واجهة برمجة التطبيقات Play Integrity API بشكل فردي. يتم احتساب طلباتك إلى واجهة برمجة التطبيقات Play Integrity API تلقائيًا أثناء استخدام واجهة برمجة التطبيقات لحزمة تطوير البرامج (SDK) وليس ضِمن التطبيق.

يتوفّر لمطوِّري حِزم SDK خياران لإعداد واجهة برمجة التطبيقات Play Integrity API أو أداة Google Play SDK Console أو Google Cloud Console.

عند تفعيل ردود واجهة برمجة التطبيقات Play Integrity API في أداة Google Play SDK Console، سيُتاح لك الوصول إلى خيارات ضبط إضافية. انتقِل إلى قسم سلامة حزمة تطوير البرامج (SDK) وانقر على الإعدادات. ضمن إعدادات المشروع، اختَر ربط مشروع على Cloud. اختَر المشروع على السحابة الإلكترونية الذي تريد ربطه بحزمة تطوير البرامج (SDK) وسيؤدي هذا الإجراء إلى تفعيل ردود واجهة برمجة التطبيقات Play Integrity API. يمكنك الآن دمج واجهة برمجة التطبيقات Play Integrity API في حزمة تطوير البرامج (SDK). يُرجى العِلم أنّ الوصول إلى أداة Google Play SDK Console يخضع لمعايير الأهلية.

استخدام Google Cloud Console

يمكنك تفعيل ردود واجهة برمجة التطبيقات Play Integrity API من خلال Google Cloud Console. في Google Cloud Console، أنشِئ مشروعًا جديدًا على Cloud أو اختَر مشروعًا حاليًا تريد استخدامه مع Play Integrity API. انتقِل إلى واجهات برمجة التطبيقات والخدمات. اختَر تفعيل واجهات برمجة التطبيقات والخدمات. ابحث عن واجهة برمجة التطبيقات Play Integrity API ثم فعِّلها. يمكنك الآن دمج واجهة برمجة التطبيقات Play Integrity API في حزمة تطوير البرامج (SDK).

زيادة عدد الطلبات اليومية من واجهة برمجة التطبيقات Play Integrity API الخاصة بحزمة تطوير البرامج (SDK)

على موفِّري حزم تطوير البرامج (SDK) الذين يريدون زيادة الحد الأقصى لطلباتهم اليومية إكمال نموذج طلب الحصص. في قسم التعليقات المفتوح، يُرجى تحديد أنّك تقدّم طلب حزمة SDK وتضمين إحداثيات Maven (groupId:artifactId) أو عنوان URL إلى حزمة تطوير البرامج (SDK).

زيادة طلباتك اليومية من واجهة برمجة التطبيقات Play Integrity API

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

زيادة الحد الأقصى اليومي للطلبات

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

لطلب زيادة الحد الأقصى اليومي للطلبات، اتّبِع ما يلي:

  1. اربط مشروع Google Cloud الذي تستخدمه في Play Integrity API في Play Console.
  2. يجب التأكّد من أنّك تنفّذ منطق واجهة برمجة التطبيقات بشكل صحيح بما في ذلك الاستراتيجية المقترَحة لإعادة المحاولة.
  3. يمكنك طلب زيادة الحصة باستخدام هذا النموذج.

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

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

دمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك

لدمج واجهة برمجة التطبيقات Play Integrity API في تطبيقك أو حزمة تطوير البرامج (SDK)، يمكنك تنفيذ أحد الإجراءات التالية وفقًا لبيئة التطوير التي تستخدمها:

Kotlin أو Java

تتوفّر أحدث مكتبة من تطبيقات Android لواجهة برمجة التطبيقات Play Integrity API من خلال مستودع Maven من Google. أضِف التبعية التالية إلى ملف build.gradle في تطبيقك:

implementation 'com.google.android.play:integrity:1.3.0'

الانسجام

ثبِّت الإصدار 1.3.0 من Google Play Integrity Plugin for Unity أو إصدارًا أحدث. للحصول على التعليمات، يمكنك الاطّلاع على كيفية تثبيت حِزم Google لنظام Unity.

  • يتم دعم جميع الإصدارات 2019.x و2020.x والإصدارات الأحدث.
  • إذا كنت تستخدم Unity 2018.x، يتوفّر الإصدار 2018.4 أو إصدار أحدث.
  • لا يتم دعم Unity 2017.x والإصدارات الأقدم.

مدمجة مع المحتوى

ثبِّت الإصدار 1.13.0 من Play Core Native SDK أو إصدارًا أحدث. للحصول على التعليمات، يمكنك الاطّلاع على دليل إعداد بيئة التطوير في Play Core Native.

ضبط ردود واجهة برمجة التطبيقات (اختياري)

تتضمن استجابة واجهة برمجة التطبيقات بيانات تلقائية يتم عرضها في كل طلب. إذا أعددت عملية دمج واجهة برمجة التطبيقات Play Integrity API في Play Console، يمكنك تخصيص الردّ من واجهة برمجة التطبيقات.

الاستجابات التلقائية

يتم عرض بيانات السلامة التالية في استجابة واجهة برمجة التطبيقات Play Integrity API تلقائيًا:

حقل الردّ القيمة الوصف
سلامة الجهاز MEETS_DEVICE_INTEGRITY يعمل التطبيق على جهاز Android متوافق مع "خدمات Google Play". يجتاز الجهاز عمليات التأكّد من سلامة النظام ويفي بمتطلّبات التوافق مع نظام التشغيل Android.
فارغة (قيمة فارغة) يعمل التطبيق على جهاز يتضمّن علامات تشير إلى تعرُّضه للهجوم (مثل اعتراض طلبات البيانات من واجهة برمجة التطبيقات) أو اختراق نظامه (مثل تزويده بإذن الوصول إلى الجذر)، أو لا يعمل التطبيق على جهاز فعلي (مثل المحاكي الذي لا يجتاز عمليات التأكّد من السلامة في Google Play).
تفاصيل الحساب LICENSED يملك المستخدِم إذن الوصول إلى التطبيق. بمعنى آخر، ثبَّت المستخدم تطبيقك أو اشتراه من Google Play. يحتفظ المستخدم باستحقاق التطبيق بعد إلغاء تثبيته، وبذلك يظل حساب المستخدم مرخّصًا إذا حصل على التطبيق نفسه لاحقًا بطريقة أخرى.
UNLICENSED لا يملك المستخدِم إذنًا للوصول إلى التطبيق. ويحدث ذلك مثلاً في حال ثبَّت المستخدم تطبيقك من مصدر غير معروف أو لم يحصل عليه من Google Play.
UNEVALUATED لم يتم تقييم تفاصيل الترخيص بسبب عدم استيفاء أحد المتطلبات. قد يحدث ذلك لعدة أسباب، منها ما يلي:
  • الجهاز غير موثوق بالقدر الكافي
  • لم يسجّل المستخدم الدخول إلى Google Play.
  • لا يتعرّف Google Play على إصدار التطبيق المثبّت على الجهاز
سلامة التطبيق PLAY_RECOGNIZED يتطابق التطبيق وشهادة التطبيق مع الإصدارات التي تم توزيعها من خلال Google Play.
UNRECOGNIZED_VERSION لا تتطابق شهادة التطبيق أو اسم حزمة التطبيق مع سجلّات Google Play
UNEVALUATED لم يتم تقييم سلامة التطبيق. ولم يتم استيفاء أحد المتطلّبات الضرورية، مثلاً أن يكون الجهاز غير موثوق بالقدر الكافي.

الاستجابات الشرطية

إذا كنت توزّع المحتوى إلى ألعاب Google Play على الكمبيوتر، سيتم تلقائيًا تفعيل حصولك على تصنيف إضافي في بيان سلامة الجهاز:

حقل الردّ التصنيف الوصف
سلامة الجهاز MEETS_VIRTUAL_INTEGRITY يعمل التطبيق على محاكي Android متوافق مع "خدمات Google Play". يجتاز المحاكي عمليات التأكّد من سلامة النظام ويستوفي متطلّبات التوافق الأساسية مع نظام Android.

الردود الاختيارية

في حال إعداد عملية دمج واجهة برمجة التطبيقات Play Integrity API في Play Console أو Play SDK Console، يمكنك تفعيل خيار تلقّي المعلومات في ردّ واجهة برمجة التطبيقات.

لإجراء تغييرات على ردودك من خلال واجهة برمجة التطبيقات، يُرجى الانتقال إلى Play Console والانتقال إلى الإصدار > سلامة التطبيق. ضمن الردود، عدِّل التغييرات واحفظها.

معلومات الجهاز الاختيارية

ويمكن للتطبيقات وحِزم تطوير البرامج (SDK) الموافقة على تصنيفات إضافية للأجهزة في بيان سلامة الجهاز. بعد الموافقة على تلقّي تصنيفات إضافية، ستتضمّن استجابة السلامة تصنيفات متعددة للجهاز نفسه في حال استيفاء كل معيار من معايير التصنيف. يمكنك إعداد خادم الخلفية لكي يتصرف بشكل مختلف بناءً على نطاق الاستجابات المحتملة. على سبيل المثال، يمكن الوثوق بجهاز يعرض ثلاثة تصنيفات (MEETS_STRONG_INTEGRITY وMEETS_DEVICE_INTEGRITY وMEETS_BASIC_INTEGRITY) أكثر من الجهاز الذي يعرض تصنيفًا واحدًا فقط (MEETS_BASIC_INTEGRITY). ويمكن أيضًا مراعاة مستويات أنشطة الجهاز الأخيرة، حيث تتراوح المستويات بين LEVEL_1 (عدد قليل من الطلبات) وLEVEL_4 (العدد الكبير من الطلبات). على سبيل المثال، قد يُنشئ الجهاز الذي يعرض مستوى نشاط أعلى بكثير من المعتاد لتطبيقك عددًا كبيرًا من الرموز المميّزة للسلامة من أجل توزيعه على الأجهزة غير الموثوق بها. يشير المستوى UNEVALUATED إلى مخاوف محتملة متعلّقة بالأمان أو مشاكل فنية.

حقل الردّ التصنيف الوصف
سلامة الجهاز MEETS_BASIC_INTEGRITY يعمل التطبيق على أي جهاز يجتاز عمليات التأكّد الأساسية من سلامة النظام. قد لا يستوفي الجهاز متطلّبات التوافق مع نظام Android، وقد لا يحصل على موافقة لتفعيل "خدمات Google Play". على سبيل المثال، قد يعمل الجهاز بإصدار غير معروف من نظام Android، أو ربما يتضمّن برنامج إقلاع مفتوحًا، أو ربما لم تعتمده الشركة المصنِّعة.
MEETS_STRONG_INTEGRITY يعمل التطبيق على جهاز Android متوافق مع "خدمات Google Play"، وله ضمان قوي لسلامة النظام، مثل الدليل المستند إلى الأجهزة لسلامة التشغيل. يجتاز الجهاز عمليات التأكّد من سلامة النظام ويفي بمتطلّبات التوافق مع نظام التشغيل Android.
أحدث أنشطة الجهاز (ميزة تجريبية) LEVEL_1 المستوى الأدنى: طلب التطبيق 10 رموز مميزة للسلامة على هذا الجهاز أو أقل خلال الساعة الماضية.
LEVEL_2 طلب التطبيق ما بين 11 و25 رمزًا مميّزًا للسلامة على هذا الجهاز خلال الساعة الماضية.
LEVEL_3 طلب التطبيق ما بين 26 و50 رمزًا مميّزًا للسلامة على هذا الجهاز خلال الساعة الماضية.
LEVEL_4 المستوى الأعلى: طلب التطبيق أكثر من 50 رمزًا مميّزًا للسلامة على هذا الجهاز خلال الساعة الأخيرة.
UNEVALUATED لم يتم تقييم نشاط الجهاز الأخير. قد يحدث ذلك لعدة أسباب، منها ما يلي:
  • الجهاز غير موثوق بالقدر الكافي
  • لا يتعرّف Google Play على إصدار التطبيق المثبّت على الجهاز
  • حدثت مشاكل فنية في الجهاز.

تفاصيل البيئة الاختيارية

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

حقل الردّ القيمة الوصف
بيان "Play للحماية" NO_ISSUES تم تفعيل خدمة "Play للحماية" ولم ترصد أي مشاكل في التطبيق على الجهاز.
NO_DATA تم تفعيل "Play للحماية" ولكن لم يتم إجراء أي فحص بعد. ربما تمت إعادة ضبط الجهاز أو تطبيق "متجر Play" مؤخرًا.
POSSIBLE_RISK تم إيقاف خدمة "Play للحماية".
MEDIUM_RISK تم تفعيل خدمة "Play للحماية" ورصدت التطبيقات التي تم تثبيتها على الجهاز والتي قد تتسبّب بضرر.
HIGH_RISK تم تفعيل خدمة "Play للحماية" ورصدت تطبيقات خطيرة تم تثبيتها على الجهاز.
UNEVALUATED لم يتم تقييم بيان "Play للحماية". ولم يتم استيفاء أحد المتطلّبات الضرورية، مثلاً أن يكون الجهاز غير موثوق بالقدر الكافي.

ضبط إعدادات الطلب الكلاسيكية (اختياري)

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

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

السماح لـ Google بإدارة تشفير الردود (تلقائي ويُنصح به)

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

إدارة وتنزيل مفاتيحي الخاصة بتشفير الردود

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

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

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

التبديل بين مفاتيح تشفير الردود التي تديرها Google وتلك المُدارة ذاتيًا

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

  1. سجِّل الدخول إلى Play Console.
  2. اختَر تطبيقًا يستخدم Play Integrity API.
  3. في قسم الإصدار من القائمة اليمنى، انتقِل إلى قسم سلامة التطبيق.
  4. بجانب Play Integrity API، انقر على الإعدادات.
  5. في قسم الطلبات الكلاسيكية من الصفحة، بجانب تشفير الردود، انقر على تعديل.
  6. في النافذة التي تظهر، انقر على إدارة مفاتيح تشفير الردود وتنزيلها.
  7. اتّبِع التعليمات لتحميل مفتاح عام.
  8. بعد أن تُظهر النافذة أنّ عملية التحميل تمت بنجاح، انقر على حفظ وسيتم تنزيل المفاتيح المشفَّرة تلقائيًا.
  9. غيِّر منطق الخادم لتتمكّن من فك تشفير الرموز المميّزة للسلامة والتحقّق منها محليًا في بيئة الخادم الآمنة، وذلك باستخدام مفاتيح تشفير الردود.
  10. (اختياري) عند إدارة مفاتيح تشفير الردود بنفسك، لا يزال بإمكان التطبيق الرجوع إلى خادم Google Play لفك التشفير والتحقّق من الاستجابة.

إذا كنت تدير بنفسك مفاتيح تشفير الردود وأردت التبديل إلى إدارة Google لتشفير الردود، اتّبِع الخطوات التالية:

  1. غيِّر منطق الخادم بحيث يتم فقط فك التشفير والتحقُّق منها على خوادم Google.
  2. سجِّل الدخول إلى Play Console.
  3. اختَر تطبيقًا يستخدم Play Integrity API.
  4. في قسم الإصدار من القائمة اليمنى، انتقِل إلى قسم سلامة التطبيق.
  5. بجانب Play Integrity API، انقر على الإعدادات.
  6. في قسم الطلبات الكلاسيكية من الصفحة، بجانب تشفير الردود، انقر على تعديل.
  7. في النافذة التي تظهر، انقر على السماح لـ Google بإدارة تشفير الردود (مُقترح).
  8. انقر على حفظ التغييرات.