יצירת אסטרטגיה יעילה ומדויקת יותר למניעת ניצול לרעה באמצעות פעילות בחשבון Play, אות חדש ב-Play Integrity API. הפעילות בחשבון מיוצגת ברמות על סמך הנוכחות אונליין והנפח של הפעילות בחנות והגיל של החשבונות במכשיר. בתוצאת הבדיקה מוחזר רמת פעילות בחשבון עבור סשן המשתמש הנוכחי, והיא לא מקושרת למזהי משתמשים או למזהי מכשירים.
מהי פעילות בחשבון Play?
Play Integrity API מציע אוסף של אותות תקינות שיעזרו למפתחי אפליקציות ומשחקים לזהות תנועה שעלולה להיות מסוכנת או כזו שמקורה בתרמית. מפתחים בתוכנית הגישה המוקדמת הזו יכולים להוסיף פעילות בחשבון לתגובה שלהם ל-API, שכבר מכילה את התוצאות של בדיקות הרישיון של המכשיר, האפליקציה והחשבון. אם יש בעיות בפסקי הדין לגבי המכשיר, האפליקציה או הרישיון, הפעילות בחשבון לא תעבור הערכה. אם אין בעיות בפסקי הדין הקיימים, הפעילות בחשבון תחזיר רמה. הרמה נקבעת על סמך הנוכחות אונליין והנפח של הפעילות בחנות והגיל של החשבונות במכשיר. הרמה הזו תעזור לאפליקציה להבחין בין משתמשים שסביר להניח שהם אמיתיים לבין תנועה שסביר להניח שהיא לא אמיתית (למשל, חשבונות שמשמשים לתרמית, חשבונות שמשמשים לתנועה אוטומטית או חשבונות שמשמשים בחוות מכשירי IOT). האפליקציה יכולה להשתמש באות הזה, לצד אותות אחרים, כדי להגן על פעולות רגישות או בעלות ערך גבוה.
אפליקציות שמשתתפות בתוכנית הגישה המוקדמת (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, מומלץ להטמיע את ה-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: שליחת בקשה להצטרפות לתוכנית ה-EAP של פעילות בחשבון ב-Play Integrity API
למפתחים בתוכנית השותפים של Google Play ל-Games יש גישה אוטומטית ל-EAP של פעילות החשבון, והם יכולים לדלג לשלב 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 באפליקציה ובשרת הקצה העורפי של האפליקציה
אם עדיין לא עשיתם זאת, פועלים לפי המסמכים כדי לשלב את Play 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
יכול לקבל את הערכים הבאים:
- UNUSUAL
- יש פעילות חריגה בחנות Google Play בחשבון משתמש אחד לפחות במכשיר.
- לא ידוע
- אין ב-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 Integrity
כדאי להשתמש בכלים הנוספים הבאים להגנה על תקינות הנתונים כחלק מהאסטרטגיה שלכם למניעת ניצול לרעה:
- להחריג מכשירים לא מהימנים כדי שלא יוכלו למצוא את האפליקציה שלכם ב-Google Play ולהתקין אותה. הפעולה הזו לא מונעת ממשתמשים לקבל את האפליקציה ולהתקין אותה בדרכים אחרות (למשל, התקנה ממקור לא ידוע).
- משתמשים בהגנה האוטומטית על התקינות כדי למנוע שינויים לא מורשים והפצה מחדש בלי לשנות את הקוד. אם אין לכם כרגע גישה לתכונה הזו, תוכלו לפנות למנהל השותפים שלכם.
- מגישים בקשה להגנה על שם החבילה (תוכנית גישה מוקדמת) כדי להגן מפני גרסאות לא ידועות או גרסאות שעברו שינוי של האפליקציה, בכל פעם שהן מותקנות במכשירי Android מגרסה 11 ואילך עם Google Play Services.
תוכן קשור
- מידע נוסף על Play Integrity API זמין באתר למפתחי Android (תיעוד)
- שיפור האבטחה של המשחק באמצעות Play Integrity API (סרטון)
- שיפור האבטחה של האפליקציה באמצעות שדה ה-nonce של Play Integrity API (פוסט בבלוג)