ফ্লাটার অ্যাপে অ্যাপ চেক ব্যবহার শুরু করুন

এই পৃষ্ঠাটি আপনাকে দেখায় কিভাবে ডিফল্ট প্রদানকারী ব্যবহার করে একটি ফ্লাটার অ্যাপে অ্যাপ চেক সক্ষম করতে হয়: Android-এ Play Integrity, Apple প্ল্যাটফর্মে ডিভাইস চেক এবং ওয়েবে reCAPTCHA v3। আপনি যখন অ্যাপ চেক সক্ষম করেন, তখন আপনি নিশ্চিত করতে সাহায্য করেন যে শুধুমাত্র আপনার অ্যাপ আপনার প্রকল্পের ফায়ারবেস সংস্থান অ্যাক্সেস করতে পারে। এই বৈশিষ্ট্য একটি ওভারভিউ দেখুন.

1. আপনার Firebase প্রকল্প সেট আপ করুন৷

  1. আপনি যদি ইতিমধ্যে এটি না করে থাকেন তবে FlutterFire ইনস্টল করুন এবং শুরু করুন

  2. Firebase কনসোলের প্রজেক্ট সেটিংস > অ্যাপ চেক বিভাগে প্লে ইন্টিগ্রিটি, ডিভাইস চেক এবং reCAPTCHA প্রদানকারীদের সাথে অ্যাপ চেক ব্যবহার করতে আপনার অ্যাপগুলি নিবন্ধন করুন।

    আপনাকে সাধারণত আপনার প্রকল্পের সমস্ত অ্যাপ নিবন্ধন করতে হবে, কারণ একবার আপনি একটি Firebase পণ্যের জন্য এনফোর্সমেন্ট সক্ষম করলে, শুধুমাত্র নিবন্ধিত অ্যাপগুলি পণ্যের ব্যাকএন্ড সংস্থানগুলি অ্যাক্সেস করতে সক্ষম হবে৷

  3. ঐচ্ছিক : অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রদানকারীর দ্বারা জারি করা অ্যাপ চেক টোকেনের জন্য একটি কাস্টম টাইম-টু-লাইভ (TTL) সেট করুন। আপনি TTL 30 মিনিট থেকে 7 দিনের মধ্যে যেকোনো মান সেট করতে পারেন। এই মান পরিবর্তন করার সময়, নিম্নলিখিত ট্রেডঅফ সম্পর্কে সচেতন হন:

    • নিরাপত্তা: সংক্ষিপ্ত TTLগুলি শক্তিশালী নিরাপত্তা প্রদান করে, কারণ এটি সেই উইন্ডোকে হ্রাস করে যেখানে একটি ফাঁস হওয়া বা আটকানো টোকেন আক্রমণকারী দ্বারা অপব্যবহার করা যেতে পারে।
    • পারফরম্যান্স: ছোট TTL মানে আপনার অ্যাপ আরও ঘন ঘন প্রত্যয়ন করবে। যেহেতু অ্যাপ্লিকেশানের প্রত্যয়ন প্রক্রিয়াটি প্রতিবার সম্পাদিত হওয়ার সময় নেটওয়ার্ক অনুরোধগুলিতে বিলম্বিত করে, তাই একটি সংক্ষিপ্ত TTL আপনার অ্যাপের কর্মক্ষমতা প্রভাবিত করতে পারে।
    • কোটা এবং খরচ: সংক্ষিপ্ত TTL এবং ঘন ঘন পুনঃপ্রত্যয়ন আপনার কোটা দ্রুত শেষ করে, এবং অর্থপ্রদানের পরিষেবার জন্য, সম্ভাব্যভাবে আরও বেশি খরচ হতে পারে। কোটা এবং সীমা দেখুন।

    ডিফল্ট TTL বেশিরভাগ অ্যাপের জন্য যুক্তিসঙ্গত। মনে রাখবেন যে অ্যাপ চেক লাইব্রেরি টিটিএল সময়কালের প্রায় অর্ধেক সময়ে টোকেন রিফ্রেশ করে।

2. আপনার অ্যাপে অ্যাপ চেক লাইব্রেরি যোগ করুন

  1. আপনার ফ্লাটার প্রকল্পের মূল থেকে, প্লাগইন ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:

    flutter pub add firebase_app_check
    
  2. একবার সম্পূর্ণ হয়ে গেলে, আপনার ফ্লাটার অ্যাপ্লিকেশন পুনর্নির্মাণ করুন:

    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(
    // You can also use a `ReCaptchaEnterpriseProvider` provider instance as an
    // argument for `webProvider`
    webProvider: ReCaptchaV3Provider('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,
    // Default provider for iOS/macOS is the Device Check provider. You can use the "AppleProvider" enum to choose
        // your preferred provider. Choose from:
        // 1. Debug provider
        // 2. Device Check provider
        // 3. App Attest provider
        // 4. App Attest provider with fallback to Device Check provider (App Attest provider is only available on iOS 14.0+, macOS 14.0+)
    appleProvider: AppleProvider.appAttest,
  );
  runApp(App());
}

পরবর্তী পদক্ষেপ

একবার আপনার অ্যাপে অ্যাপ চেক লাইব্রেরি ইনস্টল হয়ে গেলে, আপডেট করা অ্যাপটি আপনার ব্যবহারকারীদের কাছে বিতরণ করা শুরু করুন।

আপডেট হওয়া ক্লায়েন্ট অ্যাপটি Firebase-এ করা প্রতিটি অনুরোধের সাথে অ্যাপ চেক টোকেন পাঠাতে শুরু করবে, কিন্তু Firebase পণ্যগুলির টোকেন বৈধ হওয়ার প্রয়োজন হবে না যতক্ষণ না আপনি Firebase কনসোলের অ্যাপ চেক বিভাগে এনফোর্সমেন্ট চালু করেন।

মেট্রিক্স নিরীক্ষণ এবং প্রয়োগ সক্ষম

আপনি এনফোর্সমেন্ট সক্ষম করার আগে, তবে, আপনাকে নিশ্চিত করতে হবে যে এটি করা আপনার বিদ্যমান বৈধ ব্যবহারকারীদের ব্যাহত করবে না। অন্যদিকে, আপনি যদি আপনার অ্যাপ সংস্থানগুলির সন্দেহজনক ব্যবহার দেখতে পান তবে আপনি শীঘ্রই এনফোর্সমেন্ট সক্ষম করতে চাইতে পারেন৷

এই সিদ্ধান্ত নিতে সাহায্য করতে, আপনি যে পরিষেবাগুলি ব্যবহার করেন তার জন্য অ্যাপ চেক মেট্রিক্স দেখতে পারেন:

অ্যাপ চেক এনফোর্সমেন্ট সক্ষম করুন

যখন আপনি বুঝতে পারবেন কিভাবে অ্যাপ চেক আপনার ব্যবহারকারীদের প্রভাবিত করবে এবং আপনি এগিয়ে যাওয়ার জন্য প্রস্তুত, আপনি অ্যাপ চেক এনফোর্সমেন্ট সক্ষম করতে পারেন:

ডিবাগ পরিবেশে অ্যাপ চেক ব্যবহার করুন

যদি, আপনি অ্যাপ চেকের জন্য আপনার অ্যাপ নিবন্ধন করার পরে, আপনি এমন পরিবেশে আপনার অ্যাপ চালাতে চান যা অ্যাপ চেক সাধারণত বৈধ হিসাবে শ্রেণীবদ্ধ করে না, যেমন ডেভেলপমেন্টের সময় একটি এমুলেটর, বা একটি ক্রমাগত ইন্টিগ্রেশন (CI) পরিবেশ থেকে, আপনি করতে পারেন আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করুন যা প্রকৃত সত্যায়ন প্রদানকারীর পরিবর্তে অ্যাপ চেক ডিবাগ প্রদানকারী ব্যবহার করে।

Flutter অ্যাপে ডিবাগ প্রদানকারীর সাথে অ্যাপ চেক ব্যবহার করুন দেখুন।