| انتخاب پلتفرم: | iOS+ اندروید وب فلاتر |
این صفحه به شما نشان میدهد که چگونه App Check در یک برنامه Flutter با استفاده از ارائهدهنده reCAPTCHA Enterprise راهاندازی کنید. App Check کمک میکند تا اطمینان حاصل شود که فقط برنامه شما میتواند به منابع backend پروژه شما دسترسی داشته باشد. برای کسب اطلاعات بیشتر، مرور کلی ما در مورد App Check مرور کنید.
App Check نیاز به استفاده از کلیدهای reCAPTCHA مبتنی بر امتیاز دارد، که آن را برای کاربران نامرئی میکند. این بدان معناست که ارائه دهنده reCAPTCHA Enterprise از کاربران نمیخواهد که در هر زمانی یک چالش را حل کنند.
اگر مورد استفاده شما به ویژگیهای reCAPTCHA Enterprise نیاز دارد که توسط App Check پیادهسازی نشده است، یا اگر میخواهید از App Check با ارائهدهنده سفارشی خود استفاده کنید، به بخش پیادهسازی ارائهدهنده سفارشی App Check مراجعه کنید.
۱. پروژه فایربیس خود را راهاندازی کنید
اگر هنوز Firebase را نصب نکردهاید، آن را در پروژه Flutter خود نصب و راهاندازی کنید .
در کنسول Google Cloud ، به صفحه Fraud Defense بروید و موارد زیر را برای ارائه دهنده reCAPTCHA Enterprise انجام دهید:
مطمئن شوید که در پروژه صحیح هستید (به انتخابگر پروژه در بالای صفحه مراجعه کنید).
در صورت درخواست، رابط برنامهنویسی کاربردی reCAPTCHA Enterprise را فعال کنید.
بر اساس پلتفرم هدف خود، یک کلید ایجاد کنید:
آیاواس+
یک کلید از نوع iOS ایجاد کنید و شناسه بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان شناسه بستهای را که هنگام ایجاد برنامه Firebase Apple خود ارائه دادید، در پروژه Firebase خود وارد میکنید. مقدار شناسه بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر شناسه بسته فقط میتواند با یک کلید reCAPTCHA مطابقت داشته باشد.
اندروید
یک کلید از نوع اندروید ایجاد کنید و نام بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان نام بستهای را که هنگام ایجاد برنامه اندروید Firebase خود در پروژه Firebase خود ارائه دادید، وارد میکنید. مقدار نام بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر نام بسته فقط میتواند به یک کلید reCAPTCHA مربوط باشد.
وب
یک کلید از نوع وب ایجاد کنید و هر یک از دامنههای برنامههای وب خود را مشخص کنید.
App Check از برنامههای تحت وبی که روی بیش از ۲۵۰ دامنه سرویس میدهند، پشتیبانی نمیکند .
هرگز
localhostبه عنوان دامنه به کلید reCAPTCHA که در محیط عملیاتی مستقر شده است (یا قرار است مستقر شود) اضافه نکنید.گزینهی «استفاده از چالش تیکدار» را علامت نزده بگذارید.
برای دستورالعملهای دقیق، به ایجاد کلیدهای reCAPTCHA مبتنی بر امتیاز مراجعه کنید.
هر کلید را یادداشت کنید. باید آنها را به جریان ثبت نام در کنسول Firebase اضافه کنید.
در کنسول Firebase ، به مسیر Security > App Check بروید.
در تب برنامهها ، هر یک از برنامههای پلتفرم هدف خود را برای استفاده ثبت کنید. App Check با ارائهدهنده reCAPTCHA Enterprise انجام دهید. باید کلیدی را که در کنسول Google Cloud دریافت کردهاید، ارائه دهید.
اختیاری : زمان زنده بودن توکن (TTL) را تنظیم کنید.
در تنظیمات ثبت برنامه، یک زمان دلخواه برای زنده ماندن (TTL) برای توکنهای App Check صادر شده توسط ارائه دهنده تنظیم کنید. میتوانید TTL را روی هر مقداری بین 30 دقیقه تا 7 روز تنظیم کنید. هنگام تغییر این مقدار، به موارد زیر توجه داشته باشید:
- امنیت: TTL های کوتاه تر امنیت قوی تری را فراهم می کنند، زیرا بازه زمانی که یک توکن فاش شده یا رهگیری شده می تواند توسط یک مهاجم مورد سوء استفاده قرار گیرد را کاهش می دهند.
- عملکرد: هرچه TTL های کوتاهتر باشند، برنامه شما دفعات بیشتری عملیات تصدیق را انجام میدهد. از آنجایی که فرآیند تصدیق برنامه هر بار که انجام میشود، به درخواستهای شبکه تأخیر اضافه میکند، TTL کوتاه میتواند بر عملکرد برنامه شما تأثیر بگذارد.
- سهمیه و هزینه: TTL های کوتاه تر و تأیید مجدد مکرر، سهمیه شما را سریعتر تمام می کند و برای خدمات پولی، احتمالاً هزینه بیشتری دارد. به سهمیه ها و محدودیت ها مراجعه کنید.
مدت زمان پیشفرض TTL برای اکثر برنامهها ۱ ساعت است که معقول به نظر میرسد. توجه داشته باشید که کتابخانه App Check تقریباً در نصف مدت زمان TTL، توکنها را بهروزرسانی میکند.
اختیاری : تنظیمات پیشرفته را پیکربندی کنید.
روی ذخیره کلیک کنید.
(اختیاری) پیکربندی تنظیمات پیشرفته
وقتی کاربری برنامه شما را باز میکند، reCAPTCHA Enterprise سطح ریسک تعامل کاربر را تحت تأثیر کلیدهای اعمالشده ارزیابی میکند و امتیازی بین ۰.۰ تا ۱.۰، با گامهای ۰.۱، برمیگرداند.
- امتیاز ۰.۰ نشان میدهد که این تعامل ریسک بالایی دارد و ممکن است کلاهبرداری باشد.
- امتیاز ۱.۰ نشان میدهد که این تعامل ریسک کمی دارد و به احتمال زیاد قانونی است.
App Check به شما امکان میدهد آستانه ریسک برنامه را پیکربندی کنید تا بتوانید تحمل خود را برای این ریسک تنظیم کنید.
برای اکثر موارد استفاده، مقدار آستانه پیشفرض ۰.۵ توصیه میشود. اگر مورد استفاده شما نیاز به تنظیم دارد، میتوانید این مقدار را برای هر یک از برنامههای خود در کنسول Firebase پیکربندی کنید (به Security > App Check بروید). حتماً برخی از ملاحظات مهم در مورد پیکربندی آستانه ریسک برنامه را که در زیر آمده است، بسط داده و مرور کنید.
App Check از آستانه ریسک برنامه پیکربندیشده شما به عنوان حداقل امتیاز reCAPTCHA Enterprise مورد نیاز برای مشروع تلقی شدن یک تعامل کاربری استفاده میکند. تمام امتیازات reCAPTCHA Enterprise که کاملاً کمتر از آستانه پیکربندیشده شما باشند، رد خواهند شد. هنگام تنظیم آستانه ریسک برنامه خود، به موارد زیر توجه داشته باشید:
اگر پروژه فایربیس شما روی طرح قیمتگذاری بدون هزینه اسپارک باشد، از بین ۱۱ سطح امتیاز reCAPTCHA Enterprise ممکن، فقط چهار سطح امتیاز زیر در دسترس هستند: ۰.۱، ۰.۳، ۰.۷ و ۰.۹.
در این مدت، App Check به طور مشابه فقط مقادیر آستانه خطر برنامه 0.1، 0.3، 0.5، 0.7 و 0.9 را مجاز میداند. مقدار آستانه خطر برنامه 0.5 همچنان برای اکثر موارد استفاده توصیه میشود.
برای فعال کردن هر ۱۱ سطح امتیاز reCAPTCHA Enterprise ، یک حساب Cloud Billing را به پروژه خود متصل کنید (به این معنی که پروژه Firebase خود را به طرح قیمتگذاری Blaze که به صورت پرداخت در حین استفاده است ارتقا میدهید). پس از ارتقاء پروژه، App Check به شما امکان میدهد مقادیر آستانه ریسک برنامه را بین ۰.۰ تا ۱.۰، با گامهای ۰.۱ پیکربندی کنید.
برای نظارت بر توزیع نمرات بالا و پایین reCAPTCHA Enterprise برای برنامه خود، به صفحه reCAPTCHA Enterprise در کنسول Google Cloud بروید و کلید مورد استفاده برنامه خود را انتخاب کنید.
آستانه ریسک برنامه خود را متناسب با تحمل خود تنظیم کنید:
اگر تحمل ریسک بالایی برای برنامه دارید، نوار لغزنده را به سمت راست حرکت دهید تا آستانه ریسک برنامه کاهش یابد .
- مقدار ۰.۰ توصیه نمیشود ، زیرا این تنظیم محافظت در برابر سوءاستفاده را غیرفعال میکند.
اگر تحمل ریسک برنامه کمی دارید، نوار لغزنده را به سمت چپ حرکت دهید تا آستانه ریسک برنامه افزایش یابد .
- مقدار ۱.۰ توصیه نمیشود ، زیرا این تنظیم میتواند به طور بالقوه دسترسی کاربران قانونی که این آستانه اعتماد بالا را برآورده نمیکنند را نیز مسدود کند.
برای جزئیات بیشتر، مستندات reCAPTCHA Enterprise را برای برنامههای تلفن همراه و برنامههای وب بررسی کنید.
۲. افزونه App Check را به برنامه خود اضافه کنید
برای استفاده از ارائهدهنده reCAPTCHA Enterprise ، باید افزونه App Check مربوطه را اضافه کنید.
از ریشه پروژه Flutter خود، دستور زیر را برای نصب افزونه اجرا کنید:
flutter pub add firebase_app_checkپس از اتمام، پروژه Flutter خود را از نو بسازید:
flutter run
۳. App Check
در برنامه خود، قبل از استفاده از سایر سرویسهای Firebase، باید App Check مقداردهی اولیه کنید.
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_app_check/firebase_app_check.dart';
import 'firebase_options.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
await FirebaseAppCheck.instance.activate(
providerWeb: ReCaptchaEnterpriseProvider(WEB_SITE_KEY),
providerAndroid: const AndroidReCaptchaProvider(ANDROID_SITE_KEY),
providerApple: const AppleReCaptchaProvider(IOS_SITE_KEY),
);
runApp(App());
}
۴. معیارها را رصد کنید و اجرای آنها را ممکن سازید
بعد از اینکه App Check در برنامه خود تنظیم کردید، شروع به توزیع برنامه بهروزرسانیشده بین کاربران خود کنید.
برنامه کلاینت بهروزرسانیشده، همراه با هر درخواستی که به Firebase ارسال میکند، توکنهای App Check را نیز ارسال خواهد کرد. با این حال، App Check درخواستهای دارای توکنهای نامعتبر را تا زمانی که App Check اجرا نشود، مسدود نمیکند .
نظارت بر معیارها
قبل از فعال کردن اجرای قانون ، مطمئن شوید که انجام این کار، کاربران قانونی فعلی شما را مختل نمیکند. با این حال، اگر استفاده مشکوکی از منابع برنامه خود مشاهده میکنید، بهتر است زودتر اجرای قانون را فعال کنید.
برای کمک به تصمیمگیری، میتوانید معیارهای App Check را برای سرویسهایی که استفاده میکنید بررسی کنید:
- نظارت بر معیارهای درخواست App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- نظارت بر App Check معیارهای درخواست برای Cloud Functions .
فعال کردن اجرای App Check
وقتی فهمیدید که App Check چگونه بر کاربران شما تأثیر میگذارد و آماده ادامه کار شدید، میتوانید اجرای App Check را فعال کنید:
- فعال کردن اجرای App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- فعال کردن اجرای App Check برای Cloud Functions .
استفاده از App Check در محیطهای اشکالزدایی
App Check برخی از محیطها را به عنوان نامعتبر طبقهبندی میکند، مانند درخواستهایی از یک شبیهساز/شبیهساز یا میزبان محلی در طول توسعه یا از یک محیط ادغام مداوم (CI).
برای اجرای برنامه خود در این نوع محیطها پس از اجرای App Check ، باید یک نسخه اشکالزدایی از برنامه خود ایجاد کنید که از ارائهدهنده اشکالزدایی App Check به جای ارائهدهنده گواهی تولید استفاده کند.
برای جزئیات بیشتر، به بخش «استفاده از App Check با ارائهدهنده اشکالزدایی در برنامههای فلاتر» مراجعه کنید.
قیمتگذاری
App Check از طرف شما یک ارزیابی ایجاد میکند تا هر بار که برنامه شما توکن App Check خود را بهروزرسانی میکند، توکن پاسخ کاربر را اعتبارسنجی کند. پروژه Firebase شما برای هر ارزیابی ایجاد شده بالاتر از سهمیه بدون هزینه، هزینه دریافت خواهد کرد. برای جزئیات بیشتر، به قیمتگذاری reCAPTCHA مراجعه کنید.
به طور پیشفرض، برنامه شما این توکن را هر ۱ ساعت دو بار بهروزرسانی میکند. برای کنترل اینکه برنامه شما چند وقت یکبار توکنهای App Check را بهروزرسانی میکند (و در نتیجه چند وقت یکبار ارزیابیهای جدید ایجاد میشوند)، میتوانید TTL توکن را پیکربندی کنید .
،| انتخاب پلتفرم: | iOS+ اندروید وب فلاتر |
این صفحه به شما نشان میدهد که چگونه App Check در یک برنامه Flutter با استفاده از ارائهدهنده reCAPTCHA Enterprise راهاندازی کنید. App Check کمک میکند تا اطمینان حاصل شود که فقط برنامه شما میتواند به منابع backend پروژه شما دسترسی داشته باشد. برای کسب اطلاعات بیشتر، مرور کلی ما در مورد App Check مرور کنید.
App Check نیاز به استفاده از کلیدهای reCAPTCHA مبتنی بر امتیاز دارد، که آن را برای کاربران نامرئی میکند. این بدان معناست که ارائه دهنده reCAPTCHA Enterprise از کاربران نمیخواهد که در هر زمانی یک چالش را حل کنند.
اگر مورد استفاده شما به ویژگیهای reCAPTCHA Enterprise نیاز دارد که توسط App Check پیادهسازی نشده است، یا اگر میخواهید از App Check با ارائهدهنده سفارشی خود استفاده کنید، به بخش پیادهسازی ارائهدهنده سفارشی App Check مراجعه کنید.
۱. پروژه فایربیس خود را راهاندازی کنید
اگر هنوز Firebase را نصب نکردهاید، آن را در پروژه Flutter خود نصب و راهاندازی کنید .
در کنسول Google Cloud ، به صفحه Fraud Defense بروید و موارد زیر را برای ارائه دهنده reCAPTCHA Enterprise انجام دهید:
مطمئن شوید که در پروژه صحیح هستید (به انتخابگر پروژه در بالای صفحه مراجعه کنید).
در صورت درخواست، رابط برنامهنویسی کاربردی reCAPTCHA Enterprise را فعال کنید.
بر اساس پلتفرم هدف خود، یک کلید ایجاد کنید:
آیاواس+
یک کلید از نوع iOS ایجاد کنید و شناسه بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان شناسه بستهای را که هنگام ایجاد برنامه Firebase Apple خود ارائه دادید، در پروژه Firebase خود وارد میکنید. مقدار شناسه بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر شناسه بسته فقط میتواند با یک کلید reCAPTCHA مطابقت داشته باشد.
اندروید
یک کلید از نوع اندروید ایجاد کنید و نام بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان نام بستهای را که هنگام ایجاد برنامه اندروید Firebase خود در پروژه Firebase خود ارائه دادید، وارد میکنید. مقدار نام بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر نام بسته فقط میتواند به یک کلید reCAPTCHA مربوط باشد.
وب
یک کلید از نوع وب ایجاد کنید و هر یک از دامنههای برنامههای وب خود را مشخص کنید.
App Check از برنامههای تحت وبی که روی بیش از ۲۵۰ دامنه سرویس میدهند، پشتیبانی نمیکند .
هرگز
localhostبه عنوان دامنه به کلید reCAPTCHA که در محیط عملیاتی مستقر شده است (یا قرار است مستقر شود) اضافه نکنید.گزینهی «استفاده از چالش تیکدار» را علامت نزده بگذارید.
برای دستورالعملهای دقیق، به ایجاد کلیدهای reCAPTCHA مبتنی بر امتیاز مراجعه کنید.
هر کلید را یادداشت کنید. باید آنها را به جریان ثبت نام در کنسول Firebase اضافه کنید.
در کنسول Firebase ، به مسیر Security > App Check بروید.
در تب برنامهها ، هر یک از برنامههای پلتفرم هدف خود را برای استفاده ثبت کنید. App Check با ارائهدهنده reCAPTCHA Enterprise انجام دهید. باید کلیدی را که در کنسول Google Cloud دریافت کردهاید، ارائه دهید.
اختیاری : زمان زنده بودن توکن (TTL) را تنظیم کنید.
در تنظیمات ثبت برنامه، یک زمان دلخواه برای زنده ماندن (TTL) برای توکنهای App Check صادر شده توسط ارائه دهنده تنظیم کنید. میتوانید TTL را روی هر مقداری بین 30 دقیقه تا 7 روز تنظیم کنید. هنگام تغییر این مقدار، به موارد زیر توجه داشته باشید:
- امنیت: TTL های کوتاه تر امنیت قوی تری را فراهم می کنند، زیرا بازه زمانی که یک توکن فاش شده یا رهگیری شده می تواند توسط یک مهاجم مورد سوء استفاده قرار گیرد را کاهش می دهند.
- عملکرد: هرچه TTL های کوتاهتر باشند، برنامه شما دفعات بیشتری عملیات تصدیق را انجام میدهد. از آنجایی که فرآیند تصدیق برنامه هر بار که انجام میشود، به درخواستهای شبکه تأخیر اضافه میکند، TTL کوتاه میتواند بر عملکرد برنامه شما تأثیر بگذارد.
- سهمیه و هزینه: TTL های کوتاه تر و تأیید مجدد مکرر، سهمیه شما را سریعتر تمام می کند و برای خدمات پولی، احتمالاً هزینه بیشتری دارد. به سهمیه ها و محدودیت ها مراجعه کنید.
مدت زمان پیشفرض TTL برای اکثر برنامهها ۱ ساعت است که معقول به نظر میرسد. توجه داشته باشید که کتابخانه App Check تقریباً در نصف مدت زمان TTL، توکنها را بهروزرسانی میکند.
اختیاری : تنظیمات پیشرفته را پیکربندی کنید.
روی ذخیره کلیک کنید.
(اختیاری) پیکربندی تنظیمات پیشرفته
وقتی کاربری برنامه شما را باز میکند، reCAPTCHA Enterprise سطح ریسک تعامل کاربر را تحت تأثیر کلیدهای اعمالشده ارزیابی میکند و امتیازی بین ۰.۰ تا ۱.۰، با گامهای ۰.۱، برمیگرداند.
- امتیاز ۰.۰ نشان میدهد که این تعامل ریسک بالایی دارد و ممکن است کلاهبرداری باشد.
- امتیاز ۱.۰ نشان میدهد که این تعامل ریسک کمی دارد و به احتمال زیاد قانونی است.
App Check به شما امکان میدهد آستانه ریسک برنامه را پیکربندی کنید تا بتوانید تحمل خود را برای این ریسک تنظیم کنید.
برای اکثر موارد استفاده، مقدار آستانه پیشفرض ۰.۵ توصیه میشود. اگر مورد استفاده شما نیاز به تنظیم دارد، میتوانید این مقدار را برای هر یک از برنامههای خود در کنسول Firebase پیکربندی کنید (به Security > App Check بروید). حتماً برخی از ملاحظات مهم در مورد پیکربندی آستانه ریسک برنامه را که در زیر آمده است، بسط داده و مرور کنید.
App Check از آستانه ریسک برنامه پیکربندیشده شما به عنوان حداقل امتیاز reCAPTCHA Enterprise مورد نیاز برای مشروع تلقی شدن یک تعامل کاربری استفاده میکند. تمام امتیازات reCAPTCHA Enterprise که کاملاً کمتر از آستانه پیکربندیشده شما باشند، رد خواهند شد. هنگام تنظیم آستانه ریسک برنامه خود، به موارد زیر توجه داشته باشید:
اگر پروژه فایربیس شما روی طرح قیمتگذاری بدون هزینه اسپارک باشد، از بین ۱۱ سطح امتیاز reCAPTCHA Enterprise ممکن، فقط چهار سطح امتیاز زیر در دسترس هستند: ۰.۱، ۰.۳، ۰.۷ و ۰.۹.
در این مدت، App Check به طور مشابه فقط مقادیر آستانه خطر برنامه 0.1، 0.3، 0.5، 0.7 و 0.9 را مجاز میداند. مقدار آستانه خطر برنامه 0.5 همچنان برای اکثر موارد استفاده توصیه میشود.
برای فعال کردن هر ۱۱ سطح امتیاز reCAPTCHA Enterprise ، یک حساب Cloud Billing را به پروژه خود متصل کنید (به این معنی که پروژه Firebase خود را به طرح قیمتگذاری Blaze که به صورت پرداخت در حین استفاده است ارتقا میدهید). پس از ارتقاء پروژه، App Check به شما امکان میدهد مقادیر آستانه ریسک برنامه را بین ۰.۰ تا ۱.۰، با گامهای ۰.۱ پیکربندی کنید.
برای نظارت بر توزیع نمرات بالا و پایین reCAPTCHA Enterprise برای برنامه خود، به صفحه reCAPTCHA Enterprise در کنسول Google Cloud بروید و کلید مورد استفاده برنامه خود را انتخاب کنید.
آستانه ریسک برنامه خود را متناسب با تحمل خود تنظیم کنید:
اگر تحمل ریسک بالایی برای برنامه دارید، نوار لغزنده را به سمت راست حرکت دهید تا آستانه ریسک برنامه کاهش یابد .
- مقدار ۰.۰ توصیه نمیشود ، زیرا این تنظیم محافظت در برابر سوءاستفاده را غیرفعال میکند.
اگر تحمل ریسک برنامه کمی دارید، نوار لغزنده را به سمت چپ حرکت دهید تا آستانه ریسک برنامه افزایش یابد .
- مقدار ۱.۰ توصیه نمیشود ، زیرا این تنظیم میتواند به طور بالقوه دسترسی کاربران قانونی که این آستانه اعتماد بالا را برآورده نمیکنند را نیز مسدود کند.
برای جزئیات بیشتر، مستندات reCAPTCHA Enterprise را برای برنامههای تلفن همراه و برنامههای وب بررسی کنید.
۲. افزونه App Check را به برنامه خود اضافه کنید
برای استفاده از ارائهدهنده reCAPTCHA Enterprise ، باید افزونه App Check مربوطه را اضافه کنید.
از ریشه پروژه Flutter خود، دستور زیر را برای نصب افزونه اجرا کنید:
flutter pub add firebase_app_checkپس از اتمام، پروژه Flutter خود را از نو بسازید:
flutter run
۳. App Check
در برنامه خود، قبل از استفاده از سایر سرویسهای Firebase، باید App Check مقداردهی اولیه کنید.
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_app_check/firebase_app_check.dart';
import 'firebase_options.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
await FirebaseAppCheck.instance.activate(
providerWeb: ReCaptchaEnterpriseProvider(WEB_SITE_KEY),
providerAndroid: const AndroidReCaptchaProvider(ANDROID_SITE_KEY),
providerApple: const AppleReCaptchaProvider(IOS_SITE_KEY),
);
runApp(App());
}
۴. معیارها را رصد کنید و اجرای آنها را ممکن سازید
بعد از اینکه App Check در برنامه خود تنظیم کردید، شروع به توزیع برنامه بهروزرسانیشده بین کاربران خود کنید.
برنامه کلاینت بهروزرسانیشده، همراه با هر درخواستی که به Firebase ارسال میکند، توکنهای App Check را نیز ارسال خواهد کرد. با این حال، App Check درخواستهای دارای توکنهای نامعتبر را تا زمانی که App Check اجرا نشود، مسدود نمیکند .
نظارت بر معیارها
قبل از فعال کردن اجرای قانون ، مطمئن شوید که انجام این کار، کاربران قانونی فعلی شما را مختل نمیکند. با این حال، اگر استفاده مشکوکی از منابع برنامه خود مشاهده میکنید، بهتر است زودتر اجرای قانون را فعال کنید.
برای کمک به تصمیمگیری، میتوانید معیارهای App Check را برای سرویسهایی که استفاده میکنید بررسی کنید:
- نظارت بر معیارهای درخواست App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- نظارت بر App Check معیارهای درخواست برای Cloud Functions .
فعال کردن اجرای App Check
وقتی فهمیدید که App Check چگونه بر کاربران شما تأثیر میگذارد و آماده ادامه کار شدید، میتوانید اجرای App Check را فعال کنید:
- فعال کردن اجرای App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- فعال کردن اجرای App Check برای Cloud Functions .
استفاده از App Check در محیطهای اشکالزدایی
App Check برخی از محیطها را به عنوان نامعتبر طبقهبندی میکند، مانند درخواستهایی از یک شبیهساز/شبیهساز یا میزبان محلی در طول توسعه یا از یک محیط ادغام مداوم (CI).
برای اجرای برنامه خود در این نوع محیطها پس از اجرای App Check ، باید یک نسخه اشکالزدایی از برنامه خود ایجاد کنید که از ارائهدهنده اشکالزدایی App Check به جای ارائهدهنده گواهی تولید استفاده کند.
برای جزئیات بیشتر، به بخش «استفاده از App Check با ارائهدهنده اشکالزدایی در برنامههای فلاتر» مراجعه کنید.
قیمتگذاری
App Check از طرف شما یک ارزیابی ایجاد میکند تا هر بار که برنامه شما توکن App Check خود را بهروزرسانی میکند، توکن پاسخ کاربر را اعتبارسنجی کند. پروژه Firebase شما برای هر ارزیابی ایجاد شده بالاتر از سهمیه بدون هزینه، هزینه دریافت خواهد کرد. برای جزئیات بیشتر، به قیمتگذاری reCAPTCHA مراجعه کنید.
به طور پیشفرض، برنامه شما این توکن را هر ۱ ساعت دو بار بهروزرسانی میکند. برای کنترل اینکه برنامه شما چند وقت یکبار توکنهای App Check را بهروزرسانی میکند (و در نتیجه چند وقت یکبار ارزیابیهای جدید ایجاد میشوند)، میتوانید TTL توکن را پیکربندی کنید .
،| انتخاب پلتفرم: | iOS+ اندروید وب فلاتر |
این صفحه به شما نشان میدهد که چگونه App Check در یک برنامه Flutter با استفاده از ارائهدهنده reCAPTCHA Enterprise راهاندازی کنید. App Check کمک میکند تا اطمینان حاصل شود که فقط برنامه شما میتواند به منابع backend پروژه شما دسترسی داشته باشد. برای کسب اطلاعات بیشتر، مرور کلی ما در مورد App Check مرور کنید.
App Check نیاز به استفاده از کلیدهای reCAPTCHA مبتنی بر امتیاز دارد، که آن را برای کاربران نامرئی میکند. این بدان معناست که ارائه دهنده reCAPTCHA Enterprise از کاربران نمیخواهد که در هر زمانی یک چالش را حل کنند.
اگر مورد استفاده شما به ویژگیهای reCAPTCHA Enterprise نیاز دارد که توسط App Check پیادهسازی نشده است، یا اگر میخواهید از App Check با ارائهدهنده سفارشی خود استفاده کنید، به بخش پیادهسازی ارائهدهنده سفارشی App Check مراجعه کنید.
۱. پروژه فایربیس خود را راهاندازی کنید
اگر هنوز Firebase را نصب نکردهاید، آن را در پروژه Flutter خود نصب و راهاندازی کنید .
در کنسول Google Cloud ، به صفحه Fraud Defense بروید و موارد زیر را برای ارائه دهنده reCAPTCHA Enterprise انجام دهید:
مطمئن شوید که در پروژه صحیح هستید (به انتخابگر پروژه در بالای صفحه مراجعه کنید).
در صورت درخواست، رابط برنامهنویسی کاربردی reCAPTCHA Enterprise را فعال کنید.
بر اساس پلتفرم هدف خود، یک کلید ایجاد کنید:
آیاواس+
یک کلید از نوع iOS ایجاد کنید و شناسه بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان شناسه بستهای را که هنگام ایجاد برنامه Firebase Apple خود ارائه دادید، در پروژه Firebase خود وارد میکنید. مقدار شناسه بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر شناسه بسته فقط میتواند با یک کلید reCAPTCHA مطابقت داشته باشد.
اندروید
یک کلید از نوع اندروید ایجاد کنید و نام بسته برنامه خود را مشخص کنید (برای مثال،
com.example.my_app).مطمئن شوید که همان نام بستهای را که هنگام ایجاد برنامه اندروید Firebase خود در پروژه Firebase خود ارائه دادید، وارد میکنید. مقدار نام بسته به حروف کوچک و بزرگ حساس است.
برای App Check ، هر نام بسته فقط میتواند به یک کلید reCAPTCHA مربوط باشد.
وب
یک کلید از نوع وب ایجاد کنید و هر یک از دامنههای برنامههای وب خود را مشخص کنید.
App Check از برنامههای تحت وبی که روی بیش از ۲۵۰ دامنه سرویس میدهند، پشتیبانی نمیکند .
هرگز
localhostبه عنوان دامنه به کلید reCAPTCHA که در محیط عملیاتی مستقر شده است (یا قرار است مستقر شود) اضافه نکنید.گزینهی «استفاده از چالش تیکدار» را علامت نزده بگذارید.
برای دستورالعملهای دقیق، به ایجاد کلیدهای reCAPTCHA مبتنی بر امتیاز مراجعه کنید.
هر کلید را یادداشت کنید. باید آنها را به جریان ثبت نام در کنسول Firebase اضافه کنید.
در کنسول Firebase ، به مسیر Security > App Check بروید.
در تب برنامهها ، هر یک از برنامههای پلتفرم هدف خود را برای استفاده ثبت کنید. App Check با ارائهدهنده reCAPTCHA Enterprise انجام دهید. باید کلیدی را که در کنسول Google Cloud دریافت کردهاید، ارائه دهید.
اختیاری : زمان زنده بودن توکن (TTL) را تنظیم کنید.
در تنظیمات ثبت برنامه، یک زمان دلخواه برای زنده ماندن (TTL) برای توکنهای App Check صادر شده توسط ارائه دهنده تنظیم کنید. میتوانید TTL را روی هر مقداری بین 30 دقیقه تا 7 روز تنظیم کنید. هنگام تغییر این مقدار، به موارد زیر توجه داشته باشید:
- امنیت: TTL های کوتاه تر امنیت قوی تری را فراهم می کنند، زیرا بازه زمانی که یک توکن فاش شده یا رهگیری شده می تواند توسط یک مهاجم مورد سوء استفاده قرار گیرد را کاهش می دهند.
- عملکرد: هرچه TTL های کوتاهتر باشند، برنامه شما دفعات بیشتری عملیات تصدیق را انجام میدهد. از آنجایی که فرآیند تصدیق برنامه هر بار که انجام میشود، به درخواستهای شبکه تأخیر اضافه میکند، TTL کوتاه میتواند بر عملکرد برنامه شما تأثیر بگذارد.
- سهمیه و هزینه: TTL های کوتاه تر و تأیید مجدد مکرر، سهمیه شما را سریعتر تمام می کند و برای خدمات پولی، احتمالاً هزینه بیشتری دارد. به سهمیه ها و محدودیت ها مراجعه کنید.
مدت زمان پیشفرض TTL برای اکثر برنامهها ۱ ساعت است که معقول به نظر میرسد. توجه داشته باشید که کتابخانه App Check تقریباً در نصف مدت زمان TTL، توکنها را بهروزرسانی میکند.
اختیاری : تنظیمات پیشرفته را پیکربندی کنید.
روی ذخیره کلیک کنید.
(اختیاری) پیکربندی تنظیمات پیشرفته
وقتی کاربری برنامه شما را باز میکند، reCAPTCHA Enterprise سطح ریسک تعامل کاربر را تحت تأثیر کلیدهای اعمالشده ارزیابی میکند و امتیازی بین ۰.۰ تا ۱.۰، با گامهای ۰.۱، برمیگرداند.
- امتیاز ۰.۰ نشان میدهد که این تعامل ریسک بالایی دارد و ممکن است کلاهبرداری باشد.
- امتیاز ۱.۰ نشان میدهد که این تعامل ریسک کمی دارد و به احتمال زیاد قانونی است.
App Check به شما امکان میدهد آستانه ریسک برنامه را پیکربندی کنید تا بتوانید تحمل خود را برای این ریسک تنظیم کنید.
برای اکثر موارد استفاده، مقدار آستانه پیشفرض ۰.۵ توصیه میشود. اگر مورد استفاده شما نیاز به تنظیم دارد، میتوانید این مقدار را برای هر یک از برنامههای خود در کنسول Firebase پیکربندی کنید (به Security > App Check بروید). حتماً برخی از ملاحظات مهم در مورد پیکربندی آستانه ریسک برنامه را که در زیر آمده است، بسط داده و مرور کنید.
App Check از آستانه ریسک برنامه پیکربندیشده شما به عنوان حداقل امتیاز reCAPTCHA Enterprise مورد نیاز برای مشروع تلقی شدن یک تعامل کاربری استفاده میکند. تمام امتیازات reCAPTCHA Enterprise که کاملاً کمتر از آستانه پیکربندیشده شما باشند، رد خواهند شد. هنگام تنظیم آستانه ریسک برنامه خود، به موارد زیر توجه داشته باشید:
اگر پروژه فایربیس شما روی طرح قیمتگذاری بدون هزینه اسپارک باشد، از بین ۱۱ سطح امتیاز reCAPTCHA Enterprise ممکن، فقط چهار سطح امتیاز زیر در دسترس هستند: ۰.۱، ۰.۳، ۰.۷ و ۰.۹.
در این مدت، App Check به طور مشابه فقط مقادیر آستانه خطر برنامه 0.1، 0.3، 0.5، 0.7 و 0.9 را مجاز میداند. مقدار آستانه خطر برنامه 0.5 همچنان برای اکثر موارد استفاده توصیه میشود.
برای فعال کردن هر ۱۱ سطح امتیاز reCAPTCHA Enterprise ، یک حساب Cloud Billing را به پروژه خود متصل کنید (به این معنی که پروژه Firebase خود را به طرح قیمتگذاری Blaze که به صورت پرداخت در حین استفاده است ارتقا میدهید). پس از ارتقاء پروژه، App Check به شما امکان میدهد مقادیر آستانه ریسک برنامه را بین ۰.۰ تا ۱.۰، با گامهای ۰.۱ پیکربندی کنید.
برای نظارت بر توزیع نمرات بالا و پایین reCAPTCHA Enterprise برای برنامه خود، به صفحه reCAPTCHA Enterprise در کنسول Google Cloud بروید و کلید مورد استفاده برنامه خود را انتخاب کنید.
آستانه ریسک برنامه خود را متناسب با تحمل خود تنظیم کنید:
اگر تحمل ریسک بالایی برای برنامه دارید، نوار لغزنده را به سمت راست حرکت دهید تا آستانه ریسک برنامه کاهش یابد .
- مقدار ۰.۰ توصیه نمیشود ، زیرا این تنظیم محافظت در برابر سوءاستفاده را غیرفعال میکند.
اگر تحمل ریسک برنامه کمی دارید، نوار لغزنده را به سمت چپ حرکت دهید تا آستانه ریسک برنامه افزایش یابد .
- مقدار ۱.۰ توصیه نمیشود ، زیرا این تنظیم میتواند به طور بالقوه دسترسی کاربران قانونی که این آستانه اعتماد بالا را برآورده نمیکنند را نیز مسدود کند.
برای جزئیات بیشتر، مستندات reCAPTCHA Enterprise را برای برنامههای تلفن همراه و برنامههای وب بررسی کنید.
۲. افزونه App Check را به برنامه خود اضافه کنید
برای استفاده از ارائهدهنده reCAPTCHA Enterprise ، باید افزونه App Check مربوطه را اضافه کنید.
از ریشه پروژه Flutter خود، دستور زیر را برای نصب افزونه اجرا کنید:
flutter pub add firebase_app_checkپس از اتمام، پروژه Flutter خود را از نو بسازید:
flutter run
۳. App Check
در برنامه خود، قبل از استفاده از سایر سرویسهای Firebase، باید App Check مقداردهی اولیه کنید.
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_app_check/firebase_app_check.dart';
import 'firebase_options.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
await FirebaseAppCheck.instance.activate(
providerWeb: ReCaptchaEnterpriseProvider(WEB_SITE_KEY),
providerAndroid: const AndroidReCaptchaProvider(ANDROID_SITE_KEY),
providerApple: const AppleReCaptchaProvider(IOS_SITE_KEY),
);
runApp(App());
}
۴. معیارها را رصد کنید و اجرای آنها را ممکن سازید
بعد از اینکه App Check در برنامه خود تنظیم کردید، شروع به توزیع برنامه بهروزرسانیشده بین کاربران خود کنید.
برنامه کلاینت بهروزرسانیشده، همراه با هر درخواستی که به Firebase ارسال میکند، توکنهای App Check را نیز ارسال خواهد کرد. با این حال، App Check درخواستهای دارای توکنهای نامعتبر را تا زمانی که App Check اجرا نشود، مسدود نمیکند .
نظارت بر معیارها
قبل از فعال کردن اجرای قانون ، مطمئن شوید که انجام این کار، کاربران قانونی فعلی شما را مختل نمیکند. با این حال، اگر استفاده مشکوکی از منابع برنامه خود مشاهده میکنید، بهتر است زودتر اجرای قانون را فعال کنید.
برای کمک به تصمیمگیری، میتوانید معیارهای App Check را برای سرویسهایی که استفاده میکنید بررسی کنید:
- نظارت بر معیارهای درخواست App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- معیارهای درخواست App Check برای Cloud Functions را مانیتور کنید .
فعال کردن اجرای App Check
وقتی فهمیدید که App Check چگونه بر کاربران شما تأثیر میگذارد و آماده ادامه کار بودید، میتوانید اجرای App Check را فعال کنید:
- فعال کردن اجرای App Check برای Firebase AI Logic ، SQL Connect ، Realtime Database ، Cloud Firestore ، Cloud Storage ، Authentication ، Google Identity برای iOS، Maps JavaScript API و Places API (جدید).
- فعال کردن اجرای App Check برای Cloud Functions .
استفاده از App Check در محیطهای اشکالزدایی
App Check برخی از محیطها را به عنوان نامعتبر طبقهبندی میکند، مانند درخواستهایی از یک شبیهساز/شبیهساز یا میزبان محلی در طول توسعه یا از یک محیط ادغام مداوم (CI).
برای اجرای برنامه خود در این نوع محیطها پس از اجرای App Check ، باید یک نسخه اشکالزدایی از برنامه خود ایجاد کنید که از ارائهدهنده اشکالزدایی App Check به جای ارائهدهنده گواهی تولید استفاده کند.
برای جزئیات بیشتر، به بخش «استفاده از App Check با ارائهدهنده اشکالزدایی در برنامههای فلاتر» مراجعه کنید.
قیمتگذاری
App Check creates an assessment on your behalf to validate the user's response token each time your app refreshes its App Check token. Your Firebase project will be charged for each assessment created above the no-cost quota. For details, see reCAPTCHA pricing .
By default, your app will refresh this token twice every 1 hour . To control how frequently your app refreshes App Check tokens (and thus how frequently new assessments are created), you can configure the token TTL .
،| Select platform: | iOS+ Android Web Flutter |
This page shows you how to set up App Check in a Flutter app, using the reCAPTCHA Enterprise provider. App Check helps to ensure that only your app can access your project's backend resources. To learn more, review our overview of App Check .
App Check requires the use of score-based reCAPTCHA keys, which makes it invisible to users. This means that the reCAPTCHA Enterprise provider won't require users to solve a challenge at any time.
If your use case requires reCAPTCHA Enterprise features not implemented by App Check , or if you want to use App Check with your own custom provider, see Implement a custom App Check provider .
1. Set up your Firebase project
If you haven't already, install and initialize Firebase in your Flutter project .
In the Google Cloud console, go to the Fraud Defense page , and do the following for the reCAPTCHA Enterprise provider:
Make sure that you're in the correct project (see the project picker at the top of the screen).
If prompted, enable the reCAPTCHA Enterprise API.
Create a key based on your target platform:
iOS+
Create an iOS -type key, and specify your app's bundle ID (for example,
com.example.my_app).Make sure that you enter the same bundle ID that you provided when you created your Firebase Apple App in your Firebase project. The bundle ID value is case-sensitive.
For App Check , each bundle ID can only correspond to a single reCAPTCHA key.
اندروید
Create an Android -type key, and specify your app's package name (for example,
com.example.my_app).Make sure that you enter the same package name that you provided when you created your Firebase Android App in your Firebase project. The package name value is case-sensitive.
For App Check , each package name can only correspond to a single reCAPTCHA key.
وب
Create a Web -type key, and specify each of the domains for your web apps.
App Check does not support web apps that serve on more than 250 domains.
Never add
localhostas a domain to a reCAPTCHA key that is deployed to (or is going to be deployed to) production.Leave the "Use checkbox challenge" option unselected .
For detailed instructions, see Create score-based reCAPTCHA keys .
Take note of each key. You'll need to add them into the registration flow in the Firebase console.
In the Firebase console, navigate to Security > App Check .
In the Apps tab, register each of your target platform apps to use App Check with the reCAPTCHA Enterprise provider. You'll need to provide the key you got in the Google Cloud console.
Optional : Set the token time to live (TTL).
In the app registration settings, set a custom time to live (TTL) for App Check tokens issued by the provider. You can set the TTL to any value between 30 minutes and 7 days. When changing this value, be aware of the following tradeoffs:
- Security: Shorter TTLs provide stronger security, because it reduces the window in which a leaked or intercepted token can be abused by an attacker.
- Performance: Shorter TTLs mean your app will perform attestation more frequently. Because the app attestation process adds latency to network requests every time it's performed, a short TTL can impact the performance of your app.
- Quota and cost: Shorter TTLs and frequent re-attestation deplete your quota faster, and for paid services, potentially cost more. See Quotas & limits .
The default TTL of 1 hour is reasonable for most apps. Note that the App Check library refreshes tokens at approximately half the TTL duration.
Optional : Configure advanced settings.
روی ذخیره کلیک کنید.
(Optional) Configure advanced settings
When a user opens your app, reCAPTCHA Enterprise evaluates the level of risk the user interaction under the key poses, and returns a score between 0.0 and 1.0, in increments of 0.1.
- A score of 0.0 indicates that the interaction poses high risk and might be fraudulent.
- A score of 1.0 indicates that the interaction poses low risk and is very likely legitimate.
App Check lets you configure an app risk threshold so you can adjust your tolerance for this risk.
For most use cases, the default threshold value of 0.5 is recommended. If your use case requires adjustment, you can configure this value for each of your apps in the Firebase console (go to Security > App Check ). Make sure to expand and review some important considerations about configuring the app risk threshold below.
App Check uses your configured app risk threshold as the minimum reCAPTCHA Enterprise score required for a user interaction to be deemed legitimate. All reCAPTCHA Enterprise scores strictly less than your configured threshold will be rejected. When adjusting your app risk threshold, be aware of the following:
If your Firebase project is on the no-cost Spark pricing plan, then out of the 11 possible reCAPTCHA Enterprise score levels, only the following four score levels are available: 0.1, 0.3, 0.7, and 0.9.
During this time, App Check will correspondingly only allow app risk threshold values of 0.1, 0.3, 0.5, 0.7, and 0.9. An app risk threshold value of 0.5 is still recommended for most use cases.
To enable all 11 reCAPTCHA Enterprise score levels, link a Cloud Billing account to your project (which means you upgrade your Firebase project to the pay-as-you-go Blaze pricing plan ). Once you've upgraded your project, App Check will let you configure any app risk threshold values between 0.0 and 1.0, in increments of 0.1.
To monitor the distribution of high and low reCAPTCHA Enterprise scores for your app, go to the reCAPTCHA Enterprise page in the Google Cloud console, and select the key used by your app.
Set your app risk threshold appropriately for your tolerance:
If you have high app risk tolerance, move the slider to the right to decrease the app risk threshold.
- A value of 0.0 is not recommended, as this setting disables abuse protection.
If you have low app risk tolerance, move the slider to the left to increase the app risk threshold.
- A value of 1.0 is not recommended, as this setting can also potentially deny access for legitimate users who don't meet this high trust threshold.
For additional details, review the reCAPTCHA Enterprise documentation for mobile apps and web apps .
2. Add the App Check plugin to your app
To use the reCAPTCHA Enterprise provider, you must add the corresponding App Check plugin.
From the root of your Flutter project, run the following command to install the plugin:
flutter pub add firebase_app_checkOnce complete, rebuild your Flutter project:
flutter run
3. Initialize App Check
In your app, you need to initialize App Check before you use any other Firebase services.
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_app_check/firebase_app_check.dart';
import 'firebase_options.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
await FirebaseAppCheck.instance.activate(
providerWeb: ReCaptchaEnterpriseProvider(WEB_SITE_KEY),
providerAndroid: const AndroidReCaptchaProvider(ANDROID_SITE_KEY),
providerApple: const AppleReCaptchaProvider(IOS_SITE_KEY),
);
runApp(App());
}
4. Monitor metrics and enable enforcement
After you've set up App Check in your app, start distributing the updated app to your users.
The updated client app will begin sending App Check tokens along with every request it makes to Firebase. However, App Check won't block requests with invalid tokens until App Check is enforced .
نظارت بر معیارها
Before you enable enforcement , make sure that doing so won't disrupt your existing legitimate users. However, if you're seeing suspicious use of your app resources, you might want to enable enforcement sooner.
To help make this decision, you can review App Check metrics for the services you use:
- Monitor App Check request metrics for Firebase AI Logic , SQL Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , Google Identity for iOS, Maps JavaScript API, and Places API (New).
- Monitor App Check request metrics for Cloud Functions .
Enable App Check enforcement
When you understand how App Check will affect your users and you're ready to proceed, you can enable App Check enforcement:
- Enable App Check enforcement for Firebase AI Logic , SQL Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , Google Identity for iOS, Maps JavaScript API, and Places API (New).
- Enable App Check enforcement for Cloud Functions .
Use App Check in debug environments
App Check classifies some environments as invalid, such as requests from an emulator / simulator or localhost during development or from a continuous integration (CI) environment.
To run your app in these types of environments after App Check is enforced, you need to create a debug build of your app that uses the App Check debug provider instead of a production attestation provider.
For more details, see Use App Check with the debug provider in Flutter apps .
قیمتگذاری
App Check creates an assessment on your behalf to validate the user's response token each time your app refreshes its App Check token. Your Firebase project will be charged for each assessment created above the no-cost quota. For details, see reCAPTCHA pricing .
By default, your app will refresh this token twice every 1 hour . To control how frequently your app refreshes App Check tokens (and thus how frequently new assessments are created), you can configure the token TTL .