يمكنك وضع استراتيجية أكثر فعالية ودقيقة لمكافحة إساءة الاستخدام باستخدام إشارة "نشاط حساب Play" الجديدة في واجهة برمجة التطبيقات Play Integrity API. يتم تمثيل نشاط الحساب بمستويات استنادًا إلى مدى توفّر النشاط في المتجر وحجمه و المدة المنقضية منذ إنشاء الحسابات على الجهاز. وعند تقييمه، يتم عرض مستوى نشاط الحساب لجلسة المستخدم الحالية ولا يكون مرتبطًا بمعرّفات المستخدم أو الجهاز.
ما هو نشاط حساب Play؟
توفّر واجهة برمجة التطبيقات Play Integrity API مجموعة من ميزات توفير السلامة لمساعدة مطوّري التطبيقات والألعاب في رصد الزيارات التي يحتمل أن تكون خطيرة واحتيالية. يمكن للمطوّرين المشاركين في برنامج الاستخدام التجريبي هذا إضافة نشاط الحساب إلى ردّ واجهة برمجة التطبيقات الذي يحتوي بدوره على نتائج ترخيص الجهاز والتطبيق والحساب. إذا كانت هناك مشاكل في تقييمات الجهاز أو التطبيق أو الترخيص، سيتم عدم تقييم نشاط الحساب. إذا كانت الأحكام الحالية خالية من المشاكل، سيعرض نشاط الحساب مستوىً. ويتم تحديد المستوى استنادًا إلى مدى توفّر النشاط في المتجر وحجمه والمدة المنقضية منذ إنشاء الحسابات على الجهاز. سيساعد المستوى تطبيقك في التفريق بين المستخدمين الذين من المرجّح أن يكونوا حقيقيين والزيارات التي من المرجّح أن تكون غير حقيقية (مثل الحسابات التي يتم استخدامها في عمليات احتيالية أو الحسابات التي يتم استخدامها من خلال زيارات مبرمَجة أو الحسابات التي يتم استخدامها في مزارع الأجهزة). يمكن لتطبيقك استخدام هذه الإشارة، بالإضافة إلى إشارات أخرى، عند حماية الإجراءات الحسّاسة أو ذات القيمة العالية.
يمكن للتطبيقات المشارِكة في برنامج الاستخدام التجريبي (EAP) الحصول على أحد مستويات نشاط الحساب التالية لجلسة المستخدم الحالية:
UNEVALUATED
: لا يتم تقييم نشاط الحساب لأنّ الجهاز ليس موثوقًا به أو لا يملك المستخدم ترخيص تطبيق Play.UNUSUAL
: نشاط "متجر Google Play" غير معتاد في حساب واحد على الأقل من حسابات المستخدمين على الجهاز. ينصح Google Play بالتأكّد من أنّ هذا هو مستخدم حقيقي.UNKNOWN
: لا يتوفّر لدى Google Play نشاط كافٍ في المتجر لحساب المستخدم على الجهاز. قد يكون الحساب جديدًا أو قد لا يتضمّن أي نشاط على Google Play.TYPICAL (BASIC)
: يكون نشاط "متجر Google Play" عاديًا لحساب المستخدم أو الحسابات على الجهاز.TYPICAL (STRONG)
: يُعدّ نشاط "متجر Google Play" نموذجيًا لحساب المستخدم أو الحسابات على الجهاز، مع إشارات يصعب تكرارها.
الممارسات المقترَحة لنشاط الحساب في واجهة برمجة التطبيقات Play Integrity API
استخدام نشاط الحساب كجزء من استراتيجية لمكافحة إساءة الاستخدام
يعمل نشاط الحساب على أفضل وجه عند استخدامه إلى جانب إشارات أخرى كجزء من استراتيجية المكافحة العامة للإساءة وليس كآلية مكافحة إساءة الاستخدام الوحيدة. استخدِم هذين المقياسَين وواجهة برمجة التطبيقات Play Integrity API مع أفضل الممارسات الأمنية المناسبة الأخرى لتطبيقك.
جمع بيانات القياس وفهم جمهورك قبل اتّخاذ إجراء
قبل تغيير الوظيفة استنادًا إلى نشاط الحساب أو بيانات السلامة الأخرى الصادرة عن واجهة برمجة التطبيقات Play Integrity API، يمكنك تنفيذ واجهة برمجة التطبيقات بدون فرضها لفهم الحالة الحالية لجمهورك الحالي. بعد معرفة المستويات التي تحقّقها قاعدة التثبيت الحالية، يمكنك تقدير تأثير أي إجراءات تنفيذية تخطّط لها وتعديل استراتيجية مكافحة إساءة الاستخدام وفقًا لذلك.
التحدّي الذي تواجهه الزيارات الخطيرة عند الوصول إلى الميزات الحسّاسة أو ذات القيمة العالية
يمكنك تحديد الإجراءات المهمة أو الحسّاسة في تطبيقك أو لعبتك لحمايتها باستخدام واجهة برمجة التطبيقات
Play Integrity API بدلاً من رفض الوصول إلى تطبيقك أو لعبتك تمامًا. متى كان ذلك
ممكنًا، يمكنك رفض الزيارات الخطيرة قبل السماح بتنفيذ الإجراءات ذات القيمة العالية.
على سبيل المثال، عندما يكون مستوى نشاط الحساب هو UNUSUAL
، يمكنك طلب استخدام
آلية إثبات ملكية ثانية قبل أن يتمكّن المستخدم من إكمال الإجراء الذي تتم
حمايته.
التخطيط لدعم المستخدمين
يجب تقديم رسائل خطأ مفيدة للمستخدم كلما أمكن ذلك، وإعلامه بالخطوات التي يمكنه اتّخاذها لحلّ المشكلة، مثل إعادة المحاولة أو تفعيل الاتصال بالإنترنت أو التأكّد من تحديث تطبيق "متجر Google Play". يعدّل Google Play تقييمات النشاط في الحساب بشكل دوري. يمكن أن تؤدي الأنشطة الجديدة في المتجر إلى تغيير مستوى المستخدم تلقائيًا أثناء هذه التعديلات الدورية.
اتّباع الاقتراحات الحالية لواجهة برمجة التطبيقات Play Integrity API
بالإضافة إلى الممارسات السابقة، يُرجى الاطّلاع على الاعتبارات المتعلّقة بالآمن لواجهة برمجة التطبيقات Play Integrity API.
استخدام واجهة برمجة التطبيقات Play Integrity API قبل إطلاقها للاطّلاع على نشاط الحساب
اتّبِع الخطوات التالية لبدء استخدام نشاط الحساب.
الخطوة 1: مراجعة هذه الاعتبارات المهمة
- إنّ ميزة "نشاط الحساب" قيد التطوير النشط وقد تخضع للتغيير.
- سيظلّ نشاط الحساب سريًا. لا تشارك معلومات عن نشاط الحساب أو مستويات نشاط الحساب مع المستخدمين النهائيين.
- يعني استخدام نشاط الحساب موافقتك على البنود الواردة في اتفاقية المطوّرين لتوزيع التطبيقات على Google Play وبنود خدمة واجهة برمجة التطبيقات Play Integrity API.
- من المتوقّع من المطوّرين المشاركين في برنامج "الوصول المبكر" تقييم إشارة نشاط الحساب وتقديم ملاحظات ومعلومات حول نتيجة تقييمهم إلى Google Play قبل تغيير استراتيجية التنفيذ.
الخطوة 2: طلب الانضمام إلى البرنامج التجريبي لميزة "نشاط الحساب" في واجهة برمجة التطبيقات Play Integrity API
يمكن للمطوّرين المشاركين في "برنامج شركاء ألعاب Google Play" تلقائيًا الوصول إلى الإصدار التجريبي من ميزة "نشاط الحساب" ويمكنهم التخطّي إلى الخطوة 3.
يمكن للمطوّرين الآخرين التعبير عن اهتمامهم بالانضمام إلى برنامج الاستخدام التجريبي من خلال إرسال رسالة إلكترونية إلى integrity-api-eap@google.com تتضمّن المعلومات التالية:
- اسم الحزمة ورقم تعريف حساب المطوّر
- تأكيد على أنّك قرأت الممارسات المقترَحة لنشاط حسابك
- الطريقة التي تنوي بها تقييم نشاط الحساب، وطريقة استخدام نشاط الحساب المتوقّعة (إذا كانت لديك فكرة عن ذلك)
- المخطّط الزمني المتوقّع بعد قبولك في برنامج الاستخدام المبكر لميزة "نشاط الحساب"
في الوقت الحالي، لا نقبل سوى المطوّرين الذين يستوفون معايير الأداء على نطاق واسع على Google Play ولديهم حسابات في وضع جيد.
الخطوة 3: تفعيل نشاط الحساب في ردّ Integrity API من Google Play Console
بعد قبولك في برنامج الاستخدام التجريبي، سيظهر لك خيار جديد في صفحة Integrity API في Play Console لتضمين نشاط الحساب في ردّك على Play Integrity API. عندما تكون مستعدًا، فعِّل ميزة تسجيل نشاط الحساب في Play Console باتّباع الخطوات التالية:
- سجِّل الدخول إلى Play Console.
- اختَر التطبيق الذي سيستخدم نشاط الحساب.
- في قسم الإصدار من القائمة اليمنى، انتقِل إلى سلامة التطبيق.
- بجانب Play Integrity API، انقر على الإعدادات.
- في قسم الردود في الصفحة، انقر على تفعيل بجانب نشاط الحساب.
- في النافذة التي تظهر، انقر على تفعيل.
عند تفعيل ميزة "نشاط الحساب" أو إيقافها، سيتم حذف أي ردود اختبارات واجهة برمجة التطبيقات Play Integrity API التي أعددتها في Play Console، وسيكون عليك إنشاؤها مرة أخرى.
الخطوة 4: دمج واجهة برمجة التطبيقات Integrity API في تطبيقك وخادم الخلفية لتطبيقك
اتّبِع المستندات لدمج واجهة برمجة التطبيقات Integrity API في تطبيقك وبجانب الخادم الخلفي لتطبيقك، إذا لم يسبق لك إجراء ذلك.
الخطوة 5: العمل مع نشاط الحساب
بعد تفعيل هذه الميزة، سيتضمّن حقل accountDetails
في حمولة واجهة برمجة التطبيقات
Play Integrity API
إشارة نشاط الحساب الجديدة التي تمثّل النشاط المرتبط
بحسابات المستخدمين على الجهاز.
accountDetails: {
// Represents the licensing status of the user session.
// This field can be LICENSED, UNLICENSED, or UNEVALUATED.
appLicensingVerdict: "LICENSED"
// Represents the activity level associated with the user accounts on
// the device of the user session.
accountActivity: {
// This field can be UNEVALUATED, UNUSUAL,
// UNKNOWN, TYPICAL_BASIC, TYPICAL_STRONG
activityLevel: "UNUSUAL"
}
}
يمكن أن يكون للمتغير accountActivity
القيم التالية:
- غير معتاد
- نشاط "متجر Google Play" غير معتاد في حساب واحد على الأقل من حسابات المستخدمين على الجهاز.
- UNKNOWN
- لا يتوفّر لدى Google Play نشاط كافٍ في المتجر لحساب المستخدم على الجهاز. قد يكون الحساب جديدًا أو قد لا يتضمّن أي نشاط على Google Play.
- عادي (أساسي)
- نشاط "متجر Google Play" عادي لحساب المستخدم أو الحسابات على الجهاز.
- عادي (نشِط)
- يكون نشاط "متجر Google Play" عاديًا لحساب المستخدم أو الحسابات على الجهاز، مع إشارات يصعب تكرارها.
- UNEVALUATED
لا يتم تقييم نشاط الحساب بسبب عدم استيفاء أحد المتطلّبات الضرورية.
وقد يحدث ذلك لعدة أسباب، بما فيها ما يلي:
- الجهاز غير موثوق بالقدر الكافي
- لا يتعرّف Google Play على إصدار التطبيق المثبّت على الجهاز
- لم يسجِّل المستخدم الدخول إلى Google Play.
- لا يملك المستخدم الترخيص اللازم للوصول إلى التطبيق.
للتحقّق من أنّ حسابات المستخدمين على الجهاز تتضمّن نشاطًا غير معتاد للحساب،
تحقّق من أنّ accountActivity.activityLevel
كما هو متوقّع، كما هو موضّح في مقتطف الرمز التالي:
Kotlin
val requestDetails = JSONObject(payload).getJSONObject("accountDetails") val accountActivity = requestDetails.getJSONObject("accountActivity") val activityLevel = accountActivity.getString("activityLevel") if (activityLevel == "UNUSUAL") { // One of the accounts is UNUSUAL! Be careful. }
Java
JSONObject requestDetails = new JSONObject(payload).getJSONObject("accountDetails"); JSONObject accountActivity = new JSONObject(requestDetails).getJSONObject("accountActivity"); String activityLevel = accountActivity.getString("activityLevel"); if (activityLevel == "UNUSUAL") { // One of the accounts is UNUSUAL! Be careful. }
الخطوة 6: اختبار عملية الدمج مع نشاط الحساب
يمكنك إنشاء اختبارات لتقييم كيفية تفاعل مستويات نشاط الحساب من واجهة برمجة التطبيقات Play Integrity API مع تطبيقك باستخدام ميزة اختبار Play Integrity API المتاحة. تتوفّر تعليمات استخدام ميزة الاختبار هذه في مركز مساعدة Play Console.
الخطوة 7: تقديم ملاحظات حول استخدام التطبيق قبل إطلاقه إلى Google Play
نريد من المشاركين في برنامج الاستخدام التجريبي تقديم ملاحظاتهم بشأن نشاط الحساب. لتقديم ملاحظاتك، يُرجى مراسلتنا على العنوان integrity-api-eap@google.com. سيتواصل معك أيضًا فريق أبحاث المطوّرين لترتيب مقابلات. يهمّنا معرفة ما يلي:
- ما مدى دقة ربط مستوى نشاط الحساب بالحسابات المسيئة المعروفة لتطبيقك أو لعبتك؟
- هل يتطابق توزيع شرائح الجمهور لنشاط الحساب ونتائج Play Integrity API الأخرى مع توقعاتك؟
- ما هي مشاكل إساءة الاستخدام التي تحاول حلّها باستخدام نشاط الحساب والبيانات الأخرى لواجهة برمجة التطبيقات Play Integrity API؟
- ما هي الوظائف التي تخطّط لتغييرها استنادًا إلى نشاط الحساب و بيانات Play Integrity API الأخرى؟
أدوات أخرى للتحقّق من سلامة التطبيقات في Play
ننصحك باستخدام أدوات حماية السلامة الأخرى هذه كجزء من استراتيجية مكافحة إساءة الاستخدام:
- استبعاد الأجهزة غير الموثوق بها من العثور على تطبيقك وتثبيته على Google Play ولا يؤدي ذلك إلى منع المستخدمين من الحصول على تطبيقك وتثبيته من خلال وسائل أخرى (مثل التثبيت من مصدر غير معروف).
- استخدام ميزة "توفير السلامة تلقائيًا" لمنع أي عمليات تعديل أو إعادة توزيع غير مصرَّح بها بدون إجراء تغييرات على الرمز البرمجي إذا لم تكن هذه الميزة متاحة لك حاليًا، يُرجى التواصل مع مدير الشركاء الذي تتعامل معه.
- طلب حماية اسم الحزمة (برنامج الاستخدام التجريبي) للدفاع ضد الإصدارات غير المعروفة والمعدّلة من تطبيقك عند تثبيتها على أجهزة Android 11 والإصدارات الأحدث التي تعمل بخدمات Google Play
محتوى ذو صلة
- مزيد من المعلومات حول واجهة برمجة التطبيقات Play Integrity API على موقع "مطوّرو تطبيقات Android" الإلكتروني (المستندات)
- تحسين أمان لعبتك باستخدام واجهة برمجة التطبيقات Play Integrity API (فيديو)
- تعزيز أمان تطبيقك باستخدام حقل nonce في واجهة برمجة التطبيقات Play Integrity API (مقالة في المدوّنة)