यह पृष्ठ आपको डिफ़ॉल्ट प्रदाताओं का उपयोग करके फ़्लटर ऐप में ऐप चेक को सक्षम करने का तरीका दिखाता है: एंड्रॉइड पर प्ले इंटीग्रिटी, ऐप्पल प्लेटफॉर्म पर डिवाइस चेक और वेब पर रीकैप्चा v3। जब आप ऐप चेक सक्षम करते हैं, तो आप यह सुनिश्चित करने में सहायता करते हैं कि केवल आपका ऐप ही आपके प्रोजेक्ट के फायरबेस संसाधनों तक पहुंच सकता है। इस सुविधा का अवलोकन देखें।
1. अपना फायरबेस प्रोजेक्ट सेट करें
यदि आपने पहले से ऐसा नहीं किया है, तो FlutterFire को स्थापित और प्रारंभ करें ।
Firebase कंसोल के प्रोजेक्ट सेटिंग्स > ऐप चेक सेक्शन में Play Integrity, Device Check, और reCAPTCHA प्रदाताओं के साथ ऐप चेक का उपयोग करने के लिए अपने ऐप्स को पंजीकृत करें।
आपको आमतौर पर अपने सभी प्रोजेक्ट के ऐप्स को पंजीकृत करने की आवश्यकता होती है, क्योंकि एक बार जब आप किसी Firebase उत्पाद के लिए प्रवर्तन सक्षम कर देते हैं, तो केवल पंजीकृत ऐप्स ही उत्पाद के बैकएंड संसाधनों तक पहुंच पाएंगे।
वैकल्पिक : ऐप पंजीकरण सेटिंग में, प्रदाता द्वारा जारी किए गए ऐप चेक टोकन के लिए कस्टम टाइम-टू-लाइव (टीटीएल) सेट करें। आप टीटीएल को 30 मिनट और 7 दिनों के बीच किसी भी मान पर सेट कर सकते हैं। इस मान को बदलते समय, निम्नलिखित ट्रेडऑफ़ से अवगत रहें:
- सुरक्षा: छोटे टीटीएल मजबूत सुरक्षा प्रदान करते हैं, क्योंकि यह उस विंडो को कम करता है जिसमें एक लीक या इंटरसेप्टेड टोकन का हमलावर द्वारा दुरुपयोग किया जा सकता है।
- प्रदर्शन: छोटे टीटीएल का मतलब है कि आपका ऐप अधिक बार सत्यापन करेगा। चूंकि ऐप्लिकेशन सत्यापन प्रक्रिया नेटवर्क अनुरोधों को हर बार निष्पादित किए जाने पर विलंबता जोड़ती है, इसलिए एक छोटा TTL आपके ऐप्लिकेशन के प्रदर्शन को प्रभावित कर सकता है।
- कोटा और लागत: छोटे टीटीएल और बार-बार पुन: सत्यापन से आपका कोटा तेजी से समाप्त हो जाता है, और सशुल्क सेवाओं के लिए, संभावित रूप से अधिक लागत आती है। कोटा और सीमाएं देखें।
अधिकांश ऐप्स के लिए डिफ़ॉल्ट टीटीएल उचित है। ध्यान दें कि ऐप चेक लाइब्रेरी टीटीएल की लगभग आधी अवधि में टोकन को रीफ्रेश करती है।
2. ऐप चेक लाइब्रेरी को अपने ऐप में जोड़ें
अपने फ़्लटर प्रोजेक्ट की जड़ से, प्लगइन स्थापित करने के लिए निम्न कमांड चलाएँ:
flutter pub add firebase_app_check
एक बार पूरा होने के बाद, अपने स्पंदन एप्लिकेशन का पुनर्निर्माण करें:
flutter run
3. ऐप चेक इनिशियलाइज़ करें
अपने ऐप में निम्नलिखित इनिशियलाइज़ेशन कोड जोड़ें ताकि यह आपके द्वारा स्टोरेज जैसी किसी भी फायरबेस सेवाओं का उपयोग करने से पहले चले, लेकिन Firebase.initializeApp()
को कॉल करने के बाद;
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(
webRecaptchaSiteKey: 'recaptcha-v3-site-key',
// Default provider for Android is the Play Integrity provider. You can use the "AndroidProvider" enum to choose
// your preferred provider. Choose from:
// 1. debug provider
// 2. safety net provider
// 3. play integrity provider
androidProvider: AndroidProvider.debug,
);
runApp(App());
}
अगले कदम
एक बार जब आपके ऐप में ऐप चेक लाइब्रेरी इंस्टॉल हो जाए, तो अपडेट किए गए ऐप को अपने उपयोगकर्ताओं को वितरित करना शुरू करें।
अपडेट किया गया क्लाइंट ऐप, Firebase को किए जाने वाले हर अनुरोध के साथ ऐप चेक टोकन भेजना शुरू कर देगा, लेकिन जब तक आप Firebase कंसोल के ऐप चेक सेक्शन में प्रवर्तन को सक्षम नहीं करते, तब तक Firebase उत्पादों को टोकन के मान्य होने की आवश्यकता नहीं होगी।
मेट्रिक्स की निगरानी करें और प्रवर्तन सक्षम करें
हालांकि, इससे पहले कि आप प्रवर्तन सक्षम करें, आपको यह सुनिश्चित करना चाहिए कि ऐसा करने से आपके मौजूदा वैध उपयोगकर्ता बाधित नहीं होंगे। दूसरी ओर, यदि आप अपने ऐप संसाधनों का संदिग्ध उपयोग देख रहे हैं, तो हो सकता है कि आप प्रवर्तन को जल्द ही सक्षम करना चाहें।
यह निर्णय लेने में सहायता के लिए, आप अपने द्वारा उपयोग की जाने वाली सेवाओं के लिए ऐप चेक मेट्रिक्स देख सकते हैं:
- रीयलटाइम डेटाबेस, क्लाउड फायरस्टोर और क्लाउड स्टोरेज के लिए मॉनिटर ऐप चेक अनुरोध मीट्रिक ।
- क्लाउड फ़ंक्शंस के लिए मॉनिटर ऐप चेक अनुरोध मेट्रिक्स ।
ऐप चेक प्रवर्तन सक्षम करें
जब आप समझते हैं कि ऐप चेक आपके उपयोगकर्ताओं को कैसे प्रभावित करेगा और आप आगे बढ़ने के लिए तैयार हैं, तो आप ऐप चेक प्रवर्तन को सक्षम कर सकते हैं:
- रीयलटाइम डेटाबेस, क्लाउड फायरस्टोर और क्लाउड स्टोरेज के लिए ऐप चेक प्रवर्तन सक्षम करें ।
- क्लाउड फ़ंक्शंस के लिए ऐप चेक प्रवर्तन सक्षम करें ।
डिबग वातावरण में ऐप चेक का उपयोग करें
यदि, ऐप चेक के लिए अपना ऐप पंजीकृत करने के बाद, आप अपने ऐप को ऐसे वातावरण में चलाना चाहते हैं, जिसे ऐप चेक सामान्य रूप से मान्य के रूप में वर्गीकृत नहीं करेगा, जैसे कि विकास के दौरान एक एमुलेटर, या निरंतर एकीकरण (सीआई) वातावरण से, आप कर सकते हैं अपने ऐप का डिबग बिल्ड बनाएं जो वास्तविक सत्यापन प्रदाता के बजाय ऐप चेक डिबग प्रदाता का उपयोग करता है।
फ़्लटर ऐप्स में डिबग प्रदाता के साथ ऐप चेक का उपयोग करें देखें।