שימוש בבדיקת אפליקציה עם ספק ניפוי הבאגים

אם, אחרי שרשמת את האפליקציה לבדיקת האפליקציה, ברצונך להפעיל את בסביבה שבדרך כלל היא לא מסווגת כחוקית על ידי App Check, כמו סימולטור במהלך פיתוח או מאינטגרציה רציפה (CI) תוכלו ליצור גרסת build לניפוי באגים של האפליקציה שמשתמשת ספק ניפוי באגים של App Check במקום את App Attest.

שימוש בספק ניפוי הבאגים בסימולטור

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

  1. מחפשים את מפתח ה-API של iOS לפרויקט שלכם בקטע פרטי כניסה בדף ממשקי API הקטע 'שירותים' במסוף Google Cloud.

  2. בגרסת ה-build של ניפוי הבאגים, מגדירים את האפליקציה 'בדיקת האפליקציה' לשימוש בספק ניפוי הבאגים. אפשר תצטרכו לציין את מפתח ה-API שקיבלתם בשלב הקודם.

    #if targetEnvironment(simulator)
    GIDSignIn.sharedInstance.configureDebugProvider(withAPIKey: apiKey) { error in
      if let error {
        print("Error configuring `GIDSignIn` for App Check: \(error)")
      }
    }
    #else
    // Configure App Check for production.
    #endif
    
  3. מפעילים את האפליקציה. אסימון מקומי לניפוי באגים יירשם במסוף Xcode כאשר ערכת ה-SDK מנסה לשלוח בקשה לקצה העורפי. לדוגמה:

    <Warning> [AppCheckCore][I-GAC004001] App Check debug token:
    '123a4567-b89c-12d3-e456-789012345678'.
    
  4. בקטע בדיקת אפליקציה במסוף Firebase, בוחרים באפשרות ניהול אסימוני ניפוי באגים אפשרויות נוספות. לאחר מכן, רושמים את האסימון לניפוי באגים שיצרתם באפליקציה הקודמת בכל פעימה.

    צילום מסך של האפשרות &#39;ניהול אסימוני ניפוי באגים&#39; בתפריט

לאחר רישום האסימון, נקודות הקצה מסוג OAuth 2.0 של Google יקבלו אותו בתור תקף לפרויקט שלכם.

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

שימוש בספק ניפוי הבאגים בסביבת CI

כדי להשתמש בספק ניפוי הבאגים בסביבת אינטגרציה רציפה (CI), מבצעים את הפעולות הבאות: הבאים:

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

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

    צילום מסך של האפשרות &#39;ניהול אסימוני ניפוי באגים&#39; בתפריט

  2. הוספה של האסימון לניפוי באגים שיצרתם כרגע למאגר המפתחות המאובטח של מערכת ה-CI (לדוגמה, סודות מוצפנים של פעולות GitHub או את המשתנים המוצפנים של Travis CI).

  3. אם יש צורך, מגדירים את מערכת ה-CI כדי שאסימון ניפוי הבאגים יהיה זמין. בסביבת ה-CI כמשתנה סביבה. מתן שם למשתנה משהו כמו APP_CHECK_DEBUG_TOKEN_FROM_CI.

  4. ב-Xcode, מוסיפים משתנה סביבה לסכימת הבדיקות עם השם FIRAAppCheckDebugToken ועוד משהו כמו $(APP_CHECK_DEBUG_TOKEN) בשם בערך.

  5. הגדרת סקריפט הבדיקה של ה-CI להעביר את אסימון ניפוי הבאגים כסביבה מותאם אישית. לדוגמה:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. מחפשים את מפתח ה-API של iOS לפרויקט שלכם בקטע פרטי כניסה בדף ממשקי API הקטע 'שירותים' במסוף Google Cloud.

  7. בגרסת ה-build של ניפוי הבאגים, מגדירים את האפליקציה 'בדיקת האפליקציה' לשימוש בספק ניפוי הבאגים. אפשר תצטרכו לציין את מפתח ה-API שקיבלתם בשלב הקודם.

    #if targetEnvironment(simulator)
    GIDSignIn.sharedInstance.configureDebugProvider(withAPIKey: apiKey) { error in
      if let error {
        print("Error configuring `GIDSignIn` for App Check: \(error)")
      }
    }
    #else
    // Configure App Check for production.
    #endif
    

כשהאפליקציה פועלת בסביבת CI, נקודות הקצה (endpoint) מסוג OAuth 2.0 של Google יקבלו האסימון שהוא שולח כחוקי לפרויקט.