| প্ল্যাটফর্ম নির্বাচন করুন: | iOS+ অ্যান্ড্রয়েড ওয়েব ফ্লাটার |
এই পৃষ্ঠায় দেখানো হয়েছে কিভাবে reCAPTCHA Enterprise প্রোভাইডার ব্যবহার করে একটি ফ্লাটার অ্যাপে App Check সেট আপ করতে হয়। App Check নিশ্চিত করতে সাহায্য করে যে শুধুমাত্র আপনার অ্যাপই আপনার প্রোজেক্টের ব্যাকএন্ড রিসোর্সগুলো অ্যাক্সেস করতে পারবে। আরও জানতে, App Check সম্পর্কিত আমাদের সংক্ষিপ্ত বিবরণটি পর্যালোচনা করুন।
App Check জন্য স্কোর-ভিত্তিক reCAPTCHA কী ব্যবহার করতে হয়, যা এটিকে ব্যবহারকারীদের কাছে অদৃশ্য রাখে। এর মানে হলো, reCAPTCHA Enterprise প্রোভাইডার ব্যবহারকারীদের কোনো সময়েই কোনো চ্যালেঞ্জ সমাধান করতে বলবে না।
যদি আপনার ব্যবহারের ক্ষেত্রে এমন reCAPTCHA Enterprise ফিচারের প্রয়োজন হয় যা App Check এ প্রয়োগ করা হয়নি, অথবা যদি আপনি আপনার নিজস্ব কাস্টম প্রোভাইডারের সাথে App Check ব্যবহার করতে চান, তাহলে “একটি কাস্টম App Check প্রোভাইডার প্রয়োগ করুন” দেখুন।
১. আপনার ফায়ারবেস প্রজেক্ট সেট আপ করুন।
যদি আগে থেকে না করে থাকেন, তাহলে আপনার ফ্লাটার প্রজেক্টে ফায়ারবেস ইনস্টল এবং ইনিশিয়ালাইজ করুন ।
Google Cloud কনসোলে, Fraud Defense পৃষ্ঠায় যান এবং reCAPTCHA Enterprise প্রোভাইডারের জন্য নিম্নলিখিতগুলি করুন:
নিশ্চিত করুন যে আপনি সঠিক প্রজেক্টে আছেন (স্ক্রিনের উপরের প্রজেক্ট পিকারটি দেখুন)।
অনুরোধ করা হলে, reCAPTCHA Enterprise API সক্রিয় করুন।
আপনার টার্গেট প্ল্যাটফর্মের উপর ভিত্তি করে একটি কী তৈরি করুন:
iOS+
একটি iOS- টাইপ কী তৈরি করুন এবং আপনার অ্যাপের বান্ডেল আইডি উল্লেখ করুন (উদাহরণস্বরূপ,
com.example.my_app)।আপনার Firebase প্রজেক্টে Firebase Apple অ্যাপ তৈরি করার সময় আপনি যে বান্ডেল আইডিটি দিয়েছিলেন, সেটিই যেন প্রবেশ করান তা নিশ্চিত করুন। বান্ডেল আইডির মানটি কেস-সেনসিটিভ।
App Check ক্ষেত্রে, প্রতিটি বান্ডেল আইডি শুধুমাত্র একটি reCAPTCHA কী-এর সাথে সঙ্গতিপূর্ণ হতে পারে।
অ্যান্ড্রয়েড
একটি Android -type কী তৈরি করুন এবং আপনার অ্যাপের প্যাকেজ নামটি উল্লেখ করুন (উদাহরণস্বরূপ,
com.example.my_app)।আপনার Firebase প্রজেক্টে Firebase Android অ্যাপ তৈরি করার সময় আপনি যে প্যাকেজ নামটি দিয়েছিলেন, সেটিই যেন প্রবেশ করান তা নিশ্চিত করুন। প্যাকেজ নামের মানটি কেস-সেনসিটিভ।
App Check ক্ষেত্রে, প্রতিটি প্যাকেজ নাম শুধুমাত্র একটি reCAPTCHA কী-এর সাথে সঙ্গতিপূর্ণ হতে পারে।
ওয়েব
একটি ওয়েব -টাইপ কী তৈরি করুন এবং আপনার ওয়েব অ্যাপগুলোর জন্য প্রতিটি ডোমেইন নির্দিষ্ট করে দিন।
App Check ২৫০টির বেশি ডোমেইনে পরিচালিত ওয়েব অ্যাপ সমর্থন করে না ।
যে reCAPTCHA কী প্রোডাকশনে ডেপ্লয় করা হয়েছে (বা ডেপ্লয় করা হবে), তাতে ডোমেইন হিসেবে কখনোই
localhostযোগ করবেন না।‘Use checkbox challenge’ অপশনটি অনির্বাচিত রাখুন।
বিস্তারিত নির্দেশাবলীর জন্য, স্কোর-ভিত্তিক reCAPTCHA কী তৈরি করুন দেখুন।
প্রতিটি কী (key) লিখে রাখুন। Firebase কনসোলে রেজিস্ট্রেশন ফ্লো-তে আপনাকে এগুলো যোগ করতে হবে।
Firebase কনসোলে, Security > App Check- এ যান।
অ্যাপস ট্যাবে, reCAPTCHA Enterprise প্রোভাইডারের সাথে App Check ব্যবহার করার জন্য আপনার প্রতিটি টার্গেট প্ল্যাটফর্ম অ্যাপ রেজিস্টার করুন। আপনাকে Google Cloud কনসোল থেকে পাওয়া কী-টি প্রদান করতে হবে।
ঐচ্ছিক : টোকেনের আয়ুষ্কাল (TTL) নির্ধারণ করুন।
অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রোভাইডার কর্তৃক ইস্যুকৃত App Check টোকেনগুলোর জন্য একটি কাস্টম টাইম টু লিভ (TTL) সেট করুন। আপনি TTL-এর মান ৩০ মিনিট থেকে ৭ দিনের মধ্যে যেকোনো একটিতে সেট করতে পারেন। এই মান পরিবর্তন করার সময়, নিম্নলিখিত সীমাবদ্ধতাগুলো সম্পর্কে সচেতন থাকুন:
- নিরাপত্তা: কম TTL (টাইম টু লাইফ) আরও শক্তিশালী নিরাপত্তা প্রদান করে, কারণ এটি সেই সুযোগ কমিয়ে দেয় যার মধ্যে কোনো ফাঁস হওয়া বা হস্তগত টোকেন আক্রমণকারী দ্বারা অপব্যবহার করা যেতে পারে।
- পারফরম্যান্স: কম TTL-এর অর্থ হলো আপনার অ্যাপকে আরও ঘন ঘন অ্যাটেস্টেশন করতে হবে। যেহেতু অ্যাপ অ্যাটেস্টেশন প্রক্রিয়াটি প্রতিবার সম্পন্ন হওয়ার সময় নেটওয়ার্ক অনুরোধে লেটেন্সি যোগ করে, তাই একটি কম TTL আপনার অ্যাপের পারফরম্যান্সকে প্রভাবিত করতে পারে।
- কোটা ও খরচ: স্বল্প মেয়াদের টিটিএল (TTL) এবং ঘন ঘন পুনঃ-প্রত্যয়ন আপনার কোটা দ্রুত শেষ করে দেয়, এবং অর্থপ্রদত্ত পরিষেবার ক্ষেত্রে খরচ সম্ভাব্যভাবে বেশি হতে পারে। কোটা ও সীমা দেখুন।
বেশিরভাগ অ্যাপের জন্য ১ ঘণ্টার ডিফল্ট TTL যুক্তিসঙ্গত। উল্লেখ্য যে, App Check লাইব্রেরিটি TTL মেয়াদের প্রায় অর্ধেক সময়ে টোকেন রিফ্রেশ করে।
ঐচ্ছিক : উন্নত সেটিংস কনফিগার করুন।
সংরক্ষণ করুন- এ ক্লিক করুন।
(ঐচ্ছিক) উন্নত সেটিংস কনফিগার করুন
যখন কোনো ব্যবহারকারী আপনার অ্যাপটি খোলে, তখন reCAPTCHA Enterprise নির্দিষ্ট কী-টির মাধ্যমে ব্যবহারকারীর কার্যকলাপের ঝুঁকির মাত্রা মূল্যায়ন করে এবং ০.০ থেকে ১.০-এর মধ্যে ০.১-এর ধাপে একটি স্কোর প্রদান করে।
- ০.০ স্কোর নির্দেশ করে যে এই মিথস্ক্রিয়াটি উচ্চ ঝুঁকিপূর্ণ এবং প্রতারণামূলক হতে পারে।
- ১.০ স্কোর নির্দেশ করে যে, এই মিথস্ক্রিয়াটি স্বল্প ঝুঁকিপূর্ণ এবং এর বৈধ হওয়ার সম্ভাবনা অত্যন্ত বেশি।
App Check আপনাকে একটি অ্যাপ ঝুঁকির সীমা নির্ধারণ করার সুযোগ দেয়, যাতে আপনি এই ঝুঁকির প্রতি আপনার সহনশীলতা সামঞ্জস্য করতে পারেন।
বেশিরভাগ ব্যবহারের ক্ষেত্রে, ডিফল্ট থ্রেশহোল্ড মান ০.৫ সুপারিশ করা হয়। যদি আপনার ব্যবহারের ক্ষেত্রে সমন্বয়ের প্রয়োজন হয়, তবে আপনি Firebase কনসোলে আপনার প্রতিটি অ্যাপের জন্য এই মানটি কনফিগার করতে পারেন ( Security > App Check- এ যান)। নিচে অ্যাপের ঝুঁকির থ্রেশহোল্ড কনফিগার করার বিষয়ে কিছু গুরুত্বপূর্ণ বিষয় বিস্তারিতভাবে দেখে নিন।
একটি ব্যবহারকারীর ইন্টারঅ্যাকশনকে বৈধ বলে গণ্য করার জন্য, App Check আপনার কনফিগার করা অ্যাপ রিস্ক থ্রেশহোল্ডকে ন্যূনতম reCAPTCHA Enterprise স্কোর হিসেবে ব্যবহার করে। আপনার কনফিগার করা থ্রেশহোল্ডের চেয়ে সামান্য কম স্কোরযুক্ত সমস্ত reCAPTCHA Enterprise স্কোর বাতিল করা হবে। আপনার অ্যাপ রিস্ক থ্রেশহোল্ড সামঞ্জস্য করার সময়, নিম্নলিখিত বিষয়গুলি সম্পর্কে সচেতন থাকুন:
আপনার Firebase প্রজেক্টটি যদি বিনামূল্যের Spark প্রাইসিং প্ল্যানে থাকে, তাহলে reCAPTCHA Enterprise ১১টি সম্ভাব্য স্কোর লেভেলের মধ্যে শুধুমাত্র নিম্নলিখিত চারটি স্কোর লেভেল পাওয়া যাবে: ০.১, ০.৩, ০.৭ এবং ০.৯।
এই সময়ে, App Check সেই অনুযায়ী শুধুমাত্র ০.১, ০.৩, ০.৫, ০.৭ এবং ০.৯ অ্যাপ ঝুঁকির থ্রেশহোল্ড মানগুলোকেই অনুমোদন করবে। বেশিরভাগ ব্যবহারের ক্ষেত্রে এখনও ০.৫ অ্যাপ ঝুঁকির থ্রেশহোল্ড মানটিই সুপারিশ করা হয়।
reCAPTCHA Enterprise স্কোরের ১১টি লেভেলই চালু করতে, আপনার প্রোজেক্টের সাথে একটি Cloud Billing অ্যাকাউন্ট লিঙ্ক করুন (যার অর্থ হলো আপনাকে আপনার Firebase প্রোজেক্টটি পে-অ্যাজ-ইউ-গো ব্লেজ প্রাইসিং প্ল্যানে আপগ্রেড করতে হবে)। আপনার প্রোজেক্ট আপগ্রেড করার পরে, App Check আপনাকে ০.০ থেকে ১.০-এর মধ্যে ০.১-এর ধাপে যেকোনো অ্যাপ রিস্ক থ্রেশহোল্ড ভ্যালু কনফিগার করার সুযোগ দেবে।
আপনার অ্যাপের উচ্চ এবং নিম্ন reCAPTCHA Enterprise স্কোরের বণ্টন নিরীক্ষণ করতে, Google Cloud কনসোলে reCAPTCHA Enterprise পৃষ্ঠায় যান এবং আপনার অ্যাপে ব্যবহৃত কী-টি নির্বাচন করুন।
আপনার সহনশীলতা অনুযায়ী আপনার অ্যাপের ঝুঁকির সীমা যথাযথভাবে নির্ধারণ করুন:
আপনার অ্যাপের ঝুঁকি সহনশীলতা বেশি থাকলে, ঝুঁকির মাত্রা কমাতে স্লাইডারটি ডানদিকে সরান ।
- ০.০ মানটি সুপারিশ করা হয় না , কারণ এই সেটিংটি অপব্যবহার সুরক্ষা নিষ্ক্রিয় করে দেয়।
অ্যাপের ঝুঁকি সহনশীলতা কম থাকলে, ঝুঁকির মাত্রা বাড়াতে স্লাইডারটি বাম দিকে সরান ।
- ১.০ মানটি সুপারিশ করা হয় না , কারণ এই সেটিংটি এমন বৈধ ব্যবহারকারীদেরও প্রবেশাধিকার অস্বীকার করতে পারে, যারা এই উচ্চ বিশ্বাসযোগ্যতার মানদণ্ড পূরণ করেন না।
অতিরিক্ত বিবরণের জন্য, মোবাইল অ্যাপ এবং ওয়েব অ্যাপের জন্য reCAPTCHA Enterprise ডকুমেন্টেশন পর্যালোচনা করুন।
২. আপনার অ্যাপে App Check প্লাগইনটি যুক্ত করুন।
reCAPTCHA Enterprise প্রোভাইডার ব্যবহার করতে হলে, আপনাকে সংশ্লিষ্ট App Check প্লাগইনটি যোগ করতে হবে।
আপনার ফ্লাটার প্রজেক্টের রুট থেকে প্লাগইনটি ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:
flutter pub add firebase_app_checkএকবার সম্পন্ন হলে, আপনার ফ্লাটার প্রজেক্টটি রি-বিল্ড করুন:
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 সেট আপ করার পরে, আপনার ব্যবহারকারীদের কাছে আপডেট করা অ্যাপটি বিতরণ করা শুরু করুন।
আপডেট করা ক্লায়েন্ট অ্যাপটি ফায়ারবেসে করা প্রতিটি অনুরোধের সাথে App Check টোকেন পাঠানো শুরু করবে। তবে, App Check App Check বাধ্যতামূলক না হওয়া পর্যন্ত, এটি অবৈধ টোকেনযুক্ত অনুরোধগুলিকে ব্লক করবে না ।
মেট্রিক্স নিরীক্ষণ করুন
এনফোর্সমেন্ট চালু করার আগে নিশ্চিত হয়ে নিন যে, এর ফলে আপনার বিদ্যমান বৈধ ব্যবহারকারীদের কোনো অসুবিধা হবে না। তবে, যদি আপনি আপনার অ্যাপের রিসোর্সের সন্দেহজনক ব্যবহার দেখতে পান, তাহলে আপনি আরও আগেই এনফোর্সমেন্ট চালু করতে চাইতে পারেন।
এই সিদ্ধান্ত নিতে সাহায্য করার জন্য, আপনি আপনার ব্যবহৃত পরিষেবাগুলির App Check মেট্রিক্স পর্যালোচনা করতে পারেন:
- Firebase AI Logic , SQL Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , Google Identity for iOS, Maps JavaScript API, এবং Places API (New)-এর জন্য 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 for iOS, Maps JavaScript API, এবং Places API (নতুন)-এর জন্য App Check এনফোর্সমেন্ট সক্রিয় করুন ।
- Cloud Functions জন্য App Check প্রয়োগ সক্ষম করুন ।
ডিবাগ পরিবেশে App Check ব্যবহার করুন
App Check কিছু পরিবেশকে অবৈধ হিসেবে চিহ্নিত করে, যেমন ডেভেলপমেন্ট চলাকালীন এমুলেটর/সিমুলেটর বা লোকালহোস্ট থেকে আসা অনুরোধ, অথবা কন্টিনিউয়াস ইন্টিগ্রেশন (CI) পরিবেশ থেকে আসা অনুরোধ।
App Check কার্যকর হওয়ার পর এই ধরনের পরিবেশে আপনার অ্যাপ চালানোর জন্য, আপনাকে প্রোডাকশন অ্যাটেস্টেশন প্রোভাইডারের পরিবর্তে App Check ডিবাগ প্রোভাইডার ব্যবহার করে আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে হবে।
আরও বিস্তারিত জানতে, ফ্লাটার অ্যাপে ডিবাগ প্রোভাইডারের সাথে App Check ব্যবহার দেখুন।
মূল্য নির্ধারণ
প্রতিবার আপনার অ্যাপ তার App Check টোকেন রিফ্রেশ করার সময়, App Check ব্যবহারকারীর রেসপন্স টোকেন যাচাই করার জন্য আপনার পক্ষ থেকে একটি অ্যাসেসমেন্ট তৈরি করে। বিনামূল্যের কোটার অতিরিক্ত প্রতিটি অ্যাসেসমেন্টের জন্য আপনার ফায়ারবেস প্রজেক্ট থেকে চার্জ করা হবে। বিস্তারিত জানতে, reCAPTCHA প্রাইসিং দেখুন।
ডিফল্টরূপে, আপনার অ্যাপ প্রতি ১ ঘণ্টায় এই টোকেনটি দুইবার রিফ্রেশ করবে। আপনার অ্যাপ কত ঘন ঘন App Check টোকেন রিফ্রেশ করবে (এবং এর ফলে কত ঘন ঘন নতুন অ্যাসেসমেন্ট তৈরি হবে) তা নিয়ন্ত্রণ করতে, আপনি টোকেনের TTL কনফিগার করতে পারেন।