از App Check با ارائه دهنده اشکال زدایی با Flutter استفاده کنید

پس از اینکه App Check برای یک سرویس backend اجرا شد، ویژگی‌های برنامه شما که به آن سرویس backend وابسته هستند، در یک شبیه‌ساز یا از یک محیط یکپارچه‌سازی مداوم (CI) اجرا نمی‌شوند، زیرا این محیط‌ها به عنوان دستگاه‌های معتبر واجد شرایط نیستند. برای اجرای برنامه خود در این محیط‌ها در طول توسعه و آزمایش، باید یک نسخه اشکال‌زدایی از برنامه خود ایجاد کنید که از ارائه‌دهنده اشکال‌زدایی App Check به جای ارائه‌دهنده گواهی تولید استفاده می‌کند.

پلتفرم‌های اپل

در اینجا نحوه استفاده از ارائه دهنده اشکال زدایی هنگام اجرای برنامه خود در یک شبیه ساز به صورت تعاملی (به عنوان مثال، در طول توسعه محلی) آورده شده است:

  1. بلافاصله پس از راه‌اندازی اولیه برنامه Firebase، با ارائه‌دهنده اشکال‌زدایی، App Check فعال کنید:

    import 'package:flutter/material.dart';
    import 'package:firebase_core/firebase_core.dart';
    
    // Import the firebase_app_check plugin
    import 'package:firebase_app_check/firebase_app_check.dart';
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      await FirebaseAppCheck.instance.activate(
        // Set appleProvider to `AppleProvider.debug`
        appleProvider: AppleProvider.debug,
      );
      runApp(App());
    }
    
  2. فعال کردن ثبت گزارش اشکال‌زدایی در پروژه Xcode (نسخه ۱۱.۰ یا جدیدتر):

    1. محصول > طرح > ویرایش طرح را باز کنید.
    2. از منوی سمت چپ، گزینه Run را انتخاب کنید، سپس به تب Arguments بروید.
    3. در بخش آرگومان‌های ارسالی در هنگام راه‌اندازی ، -FIRDebugEnabled اضافه کنید.
  3. توکن اشکال‌زدایی خود را دریافت کنید:

    1. ios/Runner.xcworkspace را با Xcode باز کنید و برنامه خود را در شبیه‌ساز یا روی دستگاه آزمایشی خود اجرا کنید.

    2. کنسول Xcode را باز کنید و به دنبال توکن اشکال‌زدایی App Check بگردید. برای مثال:

      <Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.
      
    3. توکن را کپی کنید (برای مثال، 123a4567-b89c-12d3-e456-789012345678 ).

  4. توکن اشکال‌زدایی خود را با App Check ثبت کنید:

    1. در کنسول Firebase ، به تب Security > App Check > Apps بروید.

    2. برنامه‌ی خود را پیدا کنید، روی منوی سه‌نقطه‌ای ( ) کلیک کنید و سپس مدیریت توکن‌های اشکال‌زدایی (Manage debug tokens ) را انتخاب کنید.

    3. برای ثبت توکن اشکال‌زدایی خود، دستورالعمل‌های روی صفحه را دنبال کنید.

    تصویری از آیتم منوی مدیریت توکن‌های اشکال‌زدایی در کنسول فایربیس

پس از ثبت توکن در App Check ، سرویس‌های بک‌اند شما آن را به عنوان معتبر می‌پذیرند.

این توکن امکان دسترسی به سرویس‌های backend شما را بدون نیاز به دستگاه معتبر فراهم می‌کند، بنابراین بسیار مهم است که آن را خصوصی نگه دارید. آن را در یک مخزن عمومی قرار ندهید یا در نسخه‌های تولیدی برنامه خود ارسال نکنید. اگر یک توکن ثبت شده به خطر افتاد، فوراً آن را با استفاده از Manage debug tokens در کنسول Firebase حذف کنید.

اندروید

در اینجا نحوه استفاده از ارائه دهنده اشکال زدایی هنگام اجرای برنامه خود در یک شبیه ساز به صورت تعاملی (به عنوان مثال، در طول توسعه محلی) آورده شده است:

  1. بلافاصله پس از راه‌اندازی اولیه برنامه Firebase، با ارائه‌دهنده اشکال‌زدایی، App Check فعال کنید:

    import 'package:flutter/material.dart';
    import 'package:firebase_core/firebase_core.dart';
    
    // Import the firebase_app_check plugin
    import 'package:firebase_app_check/firebase_app_check.dart';
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      await FirebaseAppCheck.instance.activate(
        // Set androidProvider to `AndroidProvider.debug`
        androidProvider: AndroidProvider.debug,
      );
      runApp(App());
    }
    
    
  2. توکن اشکال‌زدایی خود را دریافت کنید:

    1. برنامه خود را در شبیه‌ساز یا روی دستگاه آزمایشی خود اجرا کنید.

    2. در لاگ‌های خود به دنبال توکن اشکال‌زدایی App Check بگردید. برای مثال:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. توکن را کپی کنید (برای مثال، 123a4567-b89c-12d3-e456-789012345678 ).

  3. توکن اشکال‌زدایی خود را با App Check ثبت کنید:

    1. در کنسول Firebase ، به تب Security > App Check > Apps بروید.

    2. برنامه‌ی خود را پیدا کنید، روی منوی سه‌نقطه‌ای ( ) کلیک کنید و سپس مدیریت توکن‌های اشکال‌زدایی (Manage debug tokens ) را انتخاب کنید.

    3. برای ثبت توکن اشکال‌زدایی خود، دستورالعمل‌های روی صفحه را دنبال کنید.

    تصویری از آیتم منوی مدیریت توکن‌های اشکال‌زدایی در کنسول فایربیس

پس از ثبت توکن در App Check ، سرویس‌های بک‌اند شما آن را به عنوان معتبر می‌پذیرند.

این توکن امکان دسترسی به سرویس‌های backend شما را بدون نیاز به دستگاه معتبر فراهم می‌کند، بنابراین بسیار مهم است که آن را خصوصی نگه دارید. آن را در یک مخزن عمومی قرار ندهید یا در نسخه‌های تولیدی برنامه خود ارسال نکنید. اگر یک توکن ثبت شده به خطر افتاد، فوراً آن را با استفاده از Manage debug tokens در کنسول Firebase حذف کنید.

وب

در اینجا نحوه استفاده از ارائه دهنده اشکال زدایی هنگام اجرای برنامه خود از localhost (به عنوان مثال، در طول توسعه محلی) آورده شده است:

  1. در فایل web/index.html ، با تنظیم self.FIREBASE_APPCHECK_DEBUG_TOKEN به true ، حالت اشکال‌زدایی را فعال کنید:

    <body>
      <script>
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
      </script>
    
      ...
    
    </body>
    
  2. برنامه وب خود را به صورت محلی اجرا کنید و ابزارهای توسعه‌دهنده مرورگر را باز کنید. در کنسول اشکال‌زدایی، یک توکن اشکال‌زدایی مشاهده خواهید کرد. برای مثال:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678".
    You will need to safelist it in the Firebase console for it to work.
    

    این توکن به صورت محلی در مرورگر شما ذخیره می‌شود و هر زمان که از برنامه خود در همان مرورگر روی همان دستگاه استفاده کنید، استفاده خواهد شد. اگر می‌خواهید از این توکن در مرورگر یا دستگاه دیگری استفاده کنید، به جای true self.FIREBASE_APPCHECK_DEBUG_TOKEN را روی رشته توکن تنظیم کنید.

  3. توکن اشکال‌زدایی خود را با App Check ثبت کنید:

    1. در کنسول Firebase ، به تب Security > App Check > Apps بروید.

    2. برنامه‌ی خود را پیدا کنید، روی منوی سه‌نقطه‌ای ( ) کلیک کنید و سپس مدیریت توکن‌های اشکال‌زدایی (Manage debug tokens ) را انتخاب کنید.

    3. برای ثبت توکن اشکال‌زدایی خود، دستورالعمل‌های روی صفحه را دنبال کنید.

    تصویری از آیتم منوی مدیریت توکن‌های اشکال‌زدایی در کنسول فایربیس

پس از ثبت توکن در App Check ، سرویس‌های بک‌اند شما آن را به عنوان معتبر می‌پذیرند.

این توکن امکان دسترسی به سرویس‌های backend شما را بدون نیاز به دستگاه معتبر فراهم می‌کند، بنابراین بسیار مهم است که آن را خصوصی نگه دارید. آن را در یک مخزن عمومی قرار ندهید یا در نسخه‌های تولیدی برنامه خود ارسال نکنید. اگر یک توکن ثبت شده به خطر افتاد، فوراً آن را با استفاده از Manage debug tokens در کنسول Firebase حذف کنید.