הגדרה

בדף הזה מוסבר איך להגדיר את האפליקציה או המשחק לשימוש ב-Play Integrity API. צריך להפעיל את התשובות מה-API ואז לשלב את ה-API לאפליקציה ולשרת הקצה העורפי של האפליקציה. אפשרויות הגדרה נוספות, ותכונות בדיקה חדשות, והדיווח יהיו זמינים לאחר קישור של Google Cloud פרויקט שבו אתם משתמשים עבור Play Integrity API ב-Google Play Console.

הפעלת התשובות מ-Play Integrity API

כל אפליקציה או SDK ששולחים קריאה ל-Play Integrity API צריכים להשתמש ב-Google פרויקט בענן למעקב אחרי השימוש ב-API. אפליקציות ב-Google Play יכולות לקשר פרויקט בענן ב-Google Play Console כדי להפעיל את התשובות מ-Play Integrity API. אם רוצים כדי ליצור פרויקט חדש ב-Cloud, או שהאפליקציה שלכם מופצת באופן בלעדי מחוץ ל- ב-Google Play, אפשר להפעיל את התשובות של Play Integrity API מ-Google Cloud מסוף.

הגדרה ב-Google Play Console (מומלץ)

על ידי הפעלת תשובות מ-Play Integrity API ב-Google Play במסוף, תקבלו גישה לעוד אפשרויות תצורה, תכונות בדיקה ודיווח API. האפשרות הזו רק זמין לאפליקציות שמופצות ב-Google Play. ניווט אל גרסה > תקינות האפליקציה. בקטע Play Integrity API בוחרים באפשרות קישור פרויקט ב-Cloud. צריך לבחור את הפרויקט ב-Cloud שרוצים לקשר לאפליקציה, ואת זה יפעיל תשובות מ-Play Integrity API. עכשיו אפשר לשלב את Play Integrity API לאפליקציה שלך.

הגדרה במסוף Google Cloud

במסוף Google Cloud, יוצרים פרויקט ב-Cloud, או לבחור פרויקט קיים ב-Cloud שרוצים להשתמש בו עם Play Integrity API. עוברים לקטע APIs and services. יש לבחור באחת מהאפשרויות הבאות להפעיל ממשקי API ושירותים. מחפשים את Play Integrity API ואז להפעיל אותו. עכשיו אפשר לשלב את Play Integrity API אפליקציה.

הגדרת הוראות לספקי SDK

ספקי SDK צריכים להשתמש בפרויקט משלהם ב-Google Cloud כדי לשלוח קריאה ל-Play Integrity API, כך שהשימוש ב-API יהיה משויך ל-SDK ולא לאפליקציות בודדות ערכת ה-SDK. כלומר, אפליקציות שמשתמשות ב-SDK שלך לא צריכות להגדיר בנפרד את Play Integrity API. הבקשות שלך ל-Play Integrity API באופן אוטומטי נכללים בשימוש ב-API של ה-SDK ולא באפליקציה.

למפתחי SDK יש שתי דרכים להגדיר את Play Integrity API – Google Play SDK Console או Google Cloud Console.

על ידי הפעלת התשובות מ-Play Integrity API ב-Google Play SDK Console, לקבל גישה לאפשרויות הגדרה נוספות. עוברים אל SDK Integrity ולוחצים על הגדרות. בקטע Project configuration (הגדרת הפרויקט), בוחרים באפשרות Link a Cloud (קישור ענן) project. עליך לבחור את הפרויקט ב-Cloud שברצונך לקשר ל-SDK, הפעלת תשובות מ-Play Integrity API. עכשיו אפשר לשלב את Play Integrity API ל-SDK שלך. לתשומת ליבכם: הגישה ל-Google Play SDK Console כפופה הקריטריונים לזכאות.

שימוש במסוף Google Cloud

אפשר להפעיל תשובות מ-Play Integrity API ממסוף Google Cloud. לחשבון את מסוף Google Cloud, צרו פרויקט ב-Cloud, או לבחור פרויקט קיים ב-Cloud שרוצים להשתמש בו עם Play Integrity API. עוברים לקטע APIs and services. יש לבחור באחת מהאפשרויות הבאות להפעיל ממשקי 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. חשוב לוודא שאתם מטמיעים את לוגיקת ה-API בצורה נכונה, כולל אסטרטגיה מומלצת של ניסיונות חוזרים.
  3. בקשה להגדלת מכסה באמצעות הטופס.

יכול לקחת עד שבוע להגדיל את המכסה של Play Integrity API, לכן מומלץ לעקוב אחרי השימוש ב-Play Integrity API ב-Google Play Console או במסוף Google Cloud, שבו אפשר גם להגדיר מכסה התראות, כדי למנוע שיבושים בשירות.

האפשרות להגדיל את מכסת הבקשות הקלאסית תיושם באופן אוטומטי גם בחשבון הלקוח קריאה ליצירת אסימוני תקינות וקריאה לשרת לפענוח ואימות אסימוני תקינות. על השרת יחולו ההגדלה הרגילה של מכסת הבקשות קריאה לפענוח ולאימות של אסימוני תקינות.

משלבים Play Integrity API באפליקציה

כדי לשלב את Play Integrity API באפליקציה או ב-SDK, צריך לבצע אחת מהפעולות הבאות בהתאם לסביבת הפיתוח שלכם:

Kotlin או Java

ספריית Android העדכנית ביותר ל-Play Integrity API זמינה אצל ה-Maven של Google מאגר. צריך להוסיף את התלות הבאה לקובץ build.gradle של האפליקציה:

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

אחדות

התקנת Google Play Integrity Plugin עבור Unity 1.3.0 או גבוהה יותר. לקבלת הוראות, ראו איך להתקין חבילות של Google עבור Unity.

  • כל הגרסאות של 2019.x, 2020.x ואילך נתמכות.
  • אם אתם משתמשים ב-Unity 2018.x, יש תמיכה בגרסה 2018.4 ואילך.
  • אין תמיכה ב-Unity מגרסה 2017.x או בגרסה ישנה יותר.

מותאמת

צריך להתקין את Play Core Native SDK מגרסה 1.13.0 ואילך. עבור להוראות, ראו הגדרת סביבת הפיתוח של Play Core Native guide.

הגדרת תגובות מה-API (אופציונלי)

תגובת ה-API כוללת קביעות ברירת מחדל שמוחזרות בכל בקשה. אם מגדירים את השילוב של Play Integrity API ב-Play Console, אפשר להתאים אישית תגובת API.

תשובות ברירת מחדל

קביעות התקינות הבאות מוחזרות בתגובת Play Integrity API על ידי ברירת מחדל:

שדה לתשובה ערך תיאור
תקינות המכשיר MEETS_DEVICE_INTEGRITY האפליקציה פועלת במכשיר Android שמופעל על ידי Google Play Services. המכשיר עובר את בדיקות התקינות של המערכת ועומד בדרישות התאימות של Android.
ריק (ערך ריק) האפליקציה פועלת במכשיר שיש סימנים למתקפה (למשל, מתחברים ל-API) או לפריצה למערכת (למשל, אם האפליקציה עברה תהליך רוט (Root), או שהאפליקציה לא פועלת במכשיר פיזי (כמו אמולטור שלא עובר את בדיקות התקינות של Google Play).
פרטי חשבון Play LICENSED למשתמש יש הרשאה לאפליקציה. במילים אחרות, המשתמש התקין או קנה את האפליקציה ב-Google Play. המשתמש שומר על ההרשאה של האפליקציה לאחר הסרת האפליקציה, כך שחשבון המשתמש עדיין יוכל לקבל רישיון אם המשתמש ישיג את אותה האפליקציה בדרך אחרת.
UNLICENSED אין למשתמש הרשאה לאפליקציה. זה קורה כאשר, לדוגמה, המשתמש מעלה את האפליקציה ממקור לא ידוע או לא מוסיף אותה מ-Google Play.
UNEVALUATED פרטי הרישוי לא נבדקו כי לא עמדת בדרישה. יכולות להיות לכך כמה סיבות, כולל הסיבות הבאות:
  • המכשיר לא מספיק מהימן.
  • המשתמש לא מחובר ל-Google Play.
  • הגרסה של האפליקציה שמותקנת במכשיר לא ידועה ל-Google Play.
מהימנות אפליקציה PLAY_RECOGNIZED האפליקציה והאישור תואמים לגרסאות שמופצות על ידי Google Play.
UNRECOGNIZED_VERSION האישור או שם החבילה לא תואמים לרשומות ב-Google Play.
UNEVALUATED תקינות האפליקציה לא נבדקה. לא עמדת בדרישה נדרשת, למשל שהמכשיר לא מהימן מספיק.

תשובות מותנות

אם אתם מפיצים אל Google Play Games במחשב, אתם יצורף אוטומטית לקבלת תווית נוספת במכשיר קביעת התקינות:

שדה לתשובה לייבל תיאור
תקינות המכשיר MEETS_VIRTUAL_INTEGRITY האפליקציה פועלת באמולטור Android שמבוסס על Google Play Services. האמולטור עובר את בדיקות התקינות של המערכת ועומד בדרישות התאימות המרכזיות של Android.

תשובות אופציונליות

אם הגדרתם את השילוב של Play Integrity API ב-Play Console או Play SDK Console, אפשר להביע הסכמה לקבלת מידע בתגובת ה-API.

כדי לבצע שינויים בתשובות מה-API, צריך להיכנס ל-Play Console ולעבור אל גרסה > תקינות האפליקציה. בקטע תגובות, עורכים ושומרים את שינויים.

מידע אופציונלי לגבי המכשיר

אפליקציות וערכות SDK יכולות להביע הסכמה לשימוש בתוויות מכשירים נוספות בתקינות המכשיר בתוצאה. אחרי שמביעים הסכמה לקבלת תוויות נוספות, התגובה לגבי תקינות המכשיר תכלול מספר תוויות של אותו מכשיר אם כל אחד מהקריטריונים של התווית עומדים בתנאים. אפשר להכין את שרת הקצה העורפי להתנהגות שונה, בהתאם את טווח התשובות האפשריות. לדוגמה, מכשיר שמחזיר שלוש תוויות (MEETS_STRONG_INTEGRITY, MEETS_DEVICE_INTEGRITY וגם MEETS_BASIC_INTEGRITY ) יכול להיות מהימן יותר ממכשיר שמחזיר תווית אחת בלבד (MEETS_BASIC_INTEGRITY).

אפשר גם להביע הסכמה לפעילות האחרונה במכשיר. פעילות במכשיר מהזמן האחרון מחזירה רמה בטווח מ-LEVEL_1 (מספר בקשות נמוך) עד LEVEL_4 (מספר גבוה של בקשות). לדוגמה, מכשיר שמחזיר ערך גבוה ייתכן שרמת פעילות גבוהה יותר מהרגיל לאפליקציה שלך מנסה ליצור מספר גדול של אסימוני תקינות להפצה למכשירים לא מהימנים מכשירים.

שדה לתשובה לייבל תיאור
תקינות המכשיר MEETS_BASIC_INTEGRITY האפליקציה פועלת במכשיר שעובר את הבדיקות הבסיסיות של תקינות המערכת. יכול להיות שהמכשיר לא עומד בדרישות התאימות של Android ולא יאושר להפעלת Google Play Services. לדוגמה, יכול להיות שבמכשיר פועלת גרסה לא מוכרת של Android, תוכנת אתחול לא נעולה או שלא אושר על ידי היצרן.
MEETS_STRONG_INTEGRITY האפליקציה פועלת במכשיר Android שמופעל על ידי Google Play Services ומתחייבת היטב לתקינות המערכת, למשל הוכחה לתקינות ההפעלה שמגובה באמצעות חומרה. המכשיר עובר את בדיקות התקינות של המערכת ועומד בדרישות התאימות של Android.
פעילות במכשיר מהזמן האחרון בקשות סטנדרטיות לאסימון תקינות של API במכשיר הזה בשעה האחרונה לכל אפליקציה בקשות לאסימון תקינות של API בגרסה הקלאסית של ה-API במכשיר הזה בשעה האחרונה לכל אפליקציה
LEVEL_1 (הנמוך ביותר) 10 או פחות 5 או פחות
LEVEL_2 בין 11 ל-25 6 עד 10
LEVEL_3 בין 26 ל-50 בין 11 ל-15
LEVEL_4 (הגבוה ביותר) יותר מ-50 יותר מ-15
UNEVALUATED לא בוצעה הערכה של הפעילות האחרונה במכשיר. הפעולה הזו יכולה סיבות אפשריות:
  • המכשיר לא מספיק מהימן.
  • הגרסה של האפליקציה שמותקנת במכשיר לא ידועה ל-Google הפעלה.
  • היו בעיות טכניות במכשיר.

פרטים אופציונליים לגבי הסביבה

אפליקציות יכולות להביע הסכמה לקבלת קביעות נוספות לגבי הסביבה. גישה לאפליקציה מאפשר לך לדעת אם פועלות אפליקציות אחרות שיכולות לצלם את המסך, להציג שכבות-על או לשלוט במכשיר. התקבל מידע על הפסיקה של Play Protect אם Play Protect מופעל במכשיר והאם הוא זיהה תוכנה זדונית.

אחרי שמביעים הסכמה לקבלת הקביעות האלה, התגובה מה-API כוללים את שדה פרטי הסביבה בתוצאה:

שדה לתשובה ערך תיאור
קביעת סיכון הגישה לאפליקציה KNOWN_INSTALLED האפליקציות מותקנות על ידי Google Play או נטענות מראש במחיצת המערכת על ידי יצרן המכשיר.
KNOWN_CAPTURING אפליקציות שהותקנו על ידי Google Play או שנטענו מראש במכשיר פועלות כדי לקרוא או לתעד קלט ופלט מהאפליקציה ששלחה את הבקשה. למשל, אפליקציות של הקלטת מסך.
KNOWN_CONTROLLING אפליקציות שהותקנו על ידי Google Play או שנטענו מראש במכשיר פועלות והן יכולות לשמש לשליטה במכשיר ובקלט ובפלט של האפליקציה ששלחה את הבקשה, כמו אפליקציות לשליטה מרחוק.
KNOWN_OVERLAYS אפליקציות שהותקנו על ידי Google Play או שנטענו מראש במכשיר פועלות ויכול להיות שיוצגו שכבות-על באפליקציה שמבקשת.
UNKNOWN_INSTALLED מותקנות אפליקציות אחרות שלא הותקנו על ידי Google Play, נטען מראש במחיצת המערכת על ידי יצרן המכשיר.
UNKNOWN_CAPTURING אפליקציות אחרות פועלות (לא הותקנו על ידי Play או נטענו מראש במכשיר) וניתן להשתמש בהן כדי לקרוא או לתעד קלט ופלט של האפליקציה ששלחה את הבקשה, כמו אפליקציות של הקלטת מסך.
UNKNOWN_CONTROLLING פועלות אפליקציות אחרות (שלא הותקנו על ידי Play או נטענו מראש במכשיר) וניתן להשתמש בהן כדי לשלוט במכשיר ובקלט ובפלט של האפליקציה ששלחה את הבקשה, כמו אפליקציות לשליטה מרחוק.
UNKNOWN_OVERLAYS אפליקציות אחרות פועלות (לא הותקנו על ידי Play או נטענו מראש במכשיר) שעשויות להציג שכבות-על באפליקציה שמבקשת.
EMPTY (ערך ריק) לא מתבצעת הערכה של סיכון הגישה לאפליקציה אם לא עמדת בדרישה כלשהי. לחשבון במקרה הזה, השדה appAccessRiskVerdict ריק. מצב כזה יכול לקרות במקרים כמה סיבות, כולל הסיבות הבאות:
  • המכשיר לא מספיק מהימן.
  • גורם הצורה של המכשיר הוא לא טלפון, טאבלט או מכשיר מתקפל.
  • במכשיר לא פועלת מערכת Android בגרסה 6 (רמת API 23) ואילך.
  • הגרסה של האפליקציה שמותקנת במכשיר לא ידועה ל-Google Play.
  • הגרסה של חנות Google Play במכשיר מיושנת.
  • משחקים בלבד: לחשבון המשתמש אין רישיון Play למשחק.
  • נעשה שימוש בבקשה רגילה עם הפרמטר verdictOptOut.
  • נעשה שימוש בבקשה רגילה עם גרסת ספרייה של Play Integrity API שעדיין לא תומכת בסיכון הגישה לאפליקציה בבקשות רגילות.
ההחלטה של Play Protect NO_ISSUES Play Protect מופעל ולא נמצאו בעיות באפליקציה במכשיר.
NO_DATA Play Protect מופעל אבל עדיין לא בוצעה סריקה. יכול להיות שהמכשיר או האפליקציה של חנות Play אופסו לאחרונה.
POSSIBLE_RISK Play Protect מושבת.
MEDIUM_RISK שירות Play Protect מופעל ונמצאו במכשיר אפליקציות שעלולות להזיק (PHA).
HIGH_RISK שירות Play Protect מופעל ונמצאו בו אפליקציות מסוכנות.
UNEVALUATED לא התבצעה הערכה של ההחלטה של Play Protect. לא עמדת בדרישה נדרשת, למשל שהמכשיר לא מהימן מספיק.

קביעת הגדרות הבקשה הקלאסיות (אופציונלי)

דלגו על הקטע הזה אם אתם מתכוונים ליצור API רגיל בלבד בקשות.

כששולחים בקשות קלאסיות, כברירת מחדל, השרתים של Google Play מנהלים את הצפנת התגובות שהאפליקציה משתמשת בה בזמן אינטראקציה עם Play Integrity API. אנחנו ממליצים להשתמש באפשרות ברירת המחדל הזו, אבל אפשר גם לבחור לנהל ולהוריד את המפתחות להצפנת תשובות. לשם כך צריך לפעול לפי ההוראות שלמטה.

Google תנהל את הצפנת התשובות שלך (ברירת מחדל ומומלצת)

כדי להגן על אבטחת האפליקציה שלך, מומלץ לאפשר ל-Google ליצור ולנהל את המפתחות להצפנת תשובות. השרת העורפי יתקשר השרת של Google Play לפענוח התשובות.

ניהול והורדה של המפתחות שלי להצפנת תשובות

אם אתם רוצים לפענח את קביעת התקינות באופן מקומי בתוך האבטחה שלכם בסביבת השרת, אפשר לנהל ולהוריד את המפתחות להצפנת תשובות. כדי לנהל ולהוריד את המפתחות של הצפנת התשובות, צריך להשתמש ב-Play במסוף, והאפליקציה חייבת להיות זמינה ב-Google Play בנוסף לאפליקציות אחרות. ערוצי הפצה. כדי לעבור מחשבון אחר, פועלים לפי ההוראות הבאות מפתחות להצפנת תשובות בניהול עצמי של Google.

חשוב לזכור לא לפענח או לאמת את האסימון שהתקבל מתוך הלקוח האפליקציה ואף פעם לא חושפים מפתחות פענוח לאפליקציית הלקוח.

לפני שמשנים את האסטרטגיה לניהול הצפנת תשובות ב-Play המסוף, עליך לוודא שהשרת מוגדר כראוי לפענוח ולאימות אסימוני תקינות בשרתים של 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. לוחצים על שמירת השינויים.