استخدام ميزة "فحص التطبيقات" مع موفِّر تصحيح الأخطاء

بعد تسجيل تطبيقك في App Check، إذا أردت تشغيل تطبيقك في بيئة لا تصنّفها ميزة App Check في العادة على أنّها صالحة، مثل المحاكي أثناء التطوير أو من بيئة الدمج المستمر (CI)، يمكنك إنشاء إصدار لتصحيح الأخطاء في تطبيقك يستخدم موفِّر تصحيح أخطاء App Check بدلاً من App Attest.

استخدام موفِّر تصحيح الأخطاء في المحاكي

لاستخدام موفِّر تصحيح الأخطاء أثناء تشغيل تطبيقك في محاكي تفاعلي (أثناء التطوير مثلاً)، عليك إجراء ما يلي:

  1. ابحث عن مفتاح واجهة برمجة تطبيقات iOS لمشروعك في صفحة بيانات الاعتماد ضمن قسم واجهات برمجة التطبيقات والخدمات في وحدة تحكُّم Google Cloud.

  2. في إصدار تصحيح الأخطاء، اضبط ميزة "فحص التطبيقات" لاستخدام موفّر تصحيح الأخطاء. وستحتاج إلى تحديد مفتاح واجهة برمجة التطبيقات الذي حصلت عليه في الخطوة السابقة

    #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"، اختَر إدارة الرموز المميّزة لتصحيح الأخطاء من القائمة الكاملة لتطبيقك. بعد ذلك، عليك تسجيل الرمز المميز لتصحيح الأخطاء الذي سجّلته في الخطوة السابقة.

    لقطة شاشة لعنصر القائمة &quot;Manage Debug Tokens&quot; (إدارة الرموز المميّزة لتصحيح الأخطاء)

بعد تسجيل الرمز المميز، تقبل نقاط نهاية OAuth 2.0 من Google أنه صالح لمشروعك.

وبما أنّ هذا الرمز المميّز يسمح بالوصول إلى نقاط نهاية المصادقة بدون استخدام جهاز صالح، من الضروري الحفاظ على خصوصيته. لا تُدخِله في مستودع عام، وفي حال تعرُّض رمز مميّز مسجَّل للاختراق، يمكنك إبطاله فورًا في وحدة تحكُّم Firebase.

استخدام موفِّر تصحيح الأخطاء في بيئة CI

لاستخدام موفِّر تصحيح الأخطاء في بيئة دمج متواصل (CI)، عليك اتّباع ما يلي:

  1. في قسم فحص التطبيق ضمن "وحدة تحكُّم Firebase"، اختَر إدارة الرموز المميّزة لتصحيح الأخطاء من القائمة الكاملة لتطبيقك. بعد ذلك، يمكنك إنشاء رمز مميّز جديد لتصحيح الأخطاء. ستحتاج إلى الرمز المميّز في الخطوة التالية.

    وبما أنّ هذا الرمز المميّز يسمح بالوصول إلى نقاط نهاية المصادقة بدون استخدام جهاز صالح، ننصحك بالحفاظ على خصوصيته. لا تُدخِله في مستودع عام، وفي حال تعرُّض رمز مميّز مسجَّل للاختراق، يمكنك إبطاله فورًا في وحدة تحكُّم Firebase.

    لقطة شاشة لعنصر القائمة &quot;Manage Debug Tokens&quot; (إدارة الرموز المميّزة لتصحيح الأخطاء)

  2. أضِف الرمز المميّز لتصحيح الأخطاء الذي أنشأته للتوّ إلى ملف تخزين المفاتيح الآمن لنظام CI (على سبيل المثال، الأسرار المشفَّرة لـ GitHub Actions أو المتغيّرات المشفّرة في جهاز 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. ابحث عن مفتاح واجهة برمجة تطبيقات iOS لمشروعك في صفحة بيانات الاعتماد ضمن قسم واجهات برمجة التطبيقات والخدمات في وحدة تحكُّم Google Cloud.

  7. في إصدار تصحيح الأخطاء، اضبط ميزة "فحص التطبيقات" لاستخدام موفّر تصحيح الأخطاء. وستحتاج إلى تحديد مفتاح واجهة برمجة التطبيقات الذي حصلت عليه في الخطوة السابقة

    #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، ستقبل نقاط نهاية OAuth 2.0 من Google الرمز المميّز الذي ترسله كصالح لمشروعك.