Android-এ reCAPTCHA Enterprise-এর সাথে App Check ব্যবহার করা শুরু করুন

প্ল্যাটফর্ম বেছে নিন: iOS+ Android Web Flutter


reCAPTCHA Enterprise পরিষেবা প্রদানকারী ব্যবহার করে, Android অ্যাপে কীভাবে App Check সেট-আপ করবেন তা এই পৃষ্ঠা থেকে জানতে পারবেন। App Check এটি নিশ্চিত করতে সাহায্য করে যে শুধুমাত্র আপনার অ্যাপই আপনার প্রোজেক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে। আরও জানতে, আমাদের App Check-এর ওভারভিউ পর্যালোচনা করুন।

App Check-এর জন্য স্কোর-ভিত্তিক reCAPTCHA 'কী' ব্যবহার করতে হয়, যার ফলে এটি ব্যবহারকারীদের কাছে অদৃশ্য হয়ে যায়। এর অর্থ হল, reCAPTCHA Enterprise প্রোভাইডার ব্যবহারকারীদের কোনও সময়েই চ্যালেঞ্জ সমাধান করতে বলবে না।

আপনার ব্যবহারের ক্ষেত্রে যদি এমন reCAPTCHA Enterprise ফিচার প্রয়োজন হয় যা App Check-এর মাধ্যমে প্রয়োগ করা হয়নি অথবা আপনি যদি নিজের কাস্টম প্রদানকারীর সাথে App Check ব্যবহার করতে চান, তাহলে কাস্টম App Check প্রদানকারী প্রয়োগ করুন দেখুন।

১. আপনার Firebase প্রোজেক্ট সেট-আপ করুন

  1. আপনি আগে থেকে না করে থাকলে, আপনার Android প্রোজেক্টে Firebase যোগ করুন।

  2. Google Cloud কনসোলে, প্রতারণা থেকে সুরক্ষা পৃষ্ঠায় যান, এবং reCAPTCHA Enterprise পরিষেবা প্রদানকারীর জন্য নিম্নলিখিত ধাপগুলি অনুসরণ করুন:

    1. আপনি সঠিক প্রোজেক্টে আছেন কিনা তা নিশ্চিত করুন (স্ক্রিনের উপরে প্রোজেক্ট পিকার দেখুন)।

    2. প্রম্পট করা হলে, reCAPTCHA Enterprise API চালু করুন।

    3. Android-টাইপ কী তৈরি করুন এবং আপনার অ্যাপের প্যাকেজের নাম (যেমন, com.example.my_app) উল্লেখ করুন।

      • আপনার Firebase প্রোজেক্টে Firebase Android অ্যাপ তৈরি করার সময় যে প্যাকেজের নাম দিয়েছিলেন, এখানেও সেই একই নাম লিখছেন কিনা তা ভাল করে দেখে নিন। প্যাকেজের নামের ভ্যালুতে ছোট ও বড় হাতের অক্ষরের মধ্যে পার্থক্য করা হয়।

      • App Check-এর জন্য, প্রতিটি প্যাকেজের নাম শুধুমাত্র একটি reCAPTCHA কী-এর সাথে সম্পর্কিত হতে পারে।

      বিস্তারিত নির্দেশাবলীর জন্য, স্কোর-ভিত্তিক reCAPTCHA কী তৈরি করুন দেখুন।

    4. এই 'কী' নোট করে রাখুন। আপনাকে এটি Firebase কনসোলের রেজিস্ট্রেশন ফ্লোতে যোগ করতে হবে।

  3. Firebase কনসোলে, নিরাপত্তা > App Check বিকল্পে নেভিগেট করুন।

  4. অ্যাপ ট্যাবে, reCAPTCHA Enterprise পরিষেবা প্রদানকারীর সাথে App Check ব্যবহার করতে আপনার Android অ্যাপ রেজিস্টার করুন। Google Cloud কনসোলে আপনি যে 'কী' পেয়েছেন সেটি দিতে হবে।

  5. ঐচ্ছিক: টোকেন টাইম টু লাইভ (TTL) সেট করুন।

    অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রদানকারীর ইস্যু করা App Check টোকেনের জন্য কাস্টম টাইম টু লাইভ (TTL) সেট করুন। আপনি TTL-এর ভ্যালু ৩০ মিনিট থেকে ৭ দিনের মধ্যে যেকোনও সময় সেট করতে পারবেন। এই ভ্যালু পরিবর্তন করার সময়, নিম্নলিখিত ট্রেড-অফ সম্পর্কে সচেতন থাকুন:

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

    বেশিরভাগ অ্যাপের জন্য ডিফল্ট TTL ১ ঘণ্টা হলে তা যুক্তিযুক্ত। মনে রাখবেন যে App Check লাইব্রেরি TTL সময়সীমার প্রায় অর্ধেক সময়ে টোকেন রিফ্রেশ করে।

  6. ঐচ্ছিক: উন্নত সেটিংস কনফিগার করুন।

  7. সেভ করুন বিকল্পে ক্লিক করুন।

(ঐচ্ছিক) উন্নত সেটিংস কনফিগার করুন

কোনও ব্যবহারকারী আপনার অ্যাপ খুললে, reCAPTCHA Enterprise সেই কীয়ের অধীনে ব্যবহারকারীর ইন্টার‍্যাকশনের ঝুঁকির লেভেল মূল্যায়ন করে এবং ০.০ থেকে ১.০-এর মধ্যে ০.১-এর ইনক্রিমেন্টে স্কোর প্রদান করে।

  • স্কোর ০.০ হলে বোঝা যায় যে ইন্টার‍্যাকশনটি অত্যন্ত ঝুঁকিপূর্ণ এবং সেটি জালিয়াতি হতে পারে।
  • ১.০ স্কোর হলে বোঝা যায় যে ইন্টার‍্যাকশনে ঝুঁকি কম এবং সেটি বৈধ হওয়ার সম্ভাবনা খুব বেশি।

App Check আপনাকে অ্যাপের ঝুঁকি সংক্রান্ত থ্রেশহোল্ড কনফিগার করতে দেয় যাতে আপনি এই ঝুঁকির জন্য আপনার সহনশীলতা অ্যাডজাস্ট করতে পারেন।

বেশিরভাগ ব্যবহারের ক্ষেত্রে, ডিফল্ট থ্রেশহোল্ড ভ্যালু ০.৫ সাজেস্ট করা হয়। আপনার ব্যবহারের ক্ষেত্রে অ্যাডজাস্টমেন্টের প্রয়োজন হলে, আপনি Firebase কনসোলে (সুরক্ষা > App Check বিকল্পে যান) আপনার প্রতিটি অ্যাপের জন্য এই ভ্যালু কনফিগার করতে পারবেন। নিচে দেওয়া অ্যাপের ঝুঁকি থ্রেশহোল্ড কনফিগার করার ব্যাপারে কিছু গুরুত্বপূর্ণ বিষয় বড় করে দেখে নিতে ভুলবেন না।

২. আপনার অ্যাপে App Check SDK যোগ করুন

reCAPTCHA Enterprise প্রোভাইডার ব্যবহার করতে, আপনাকে অবশ্যই সংশ্লিষ্ট ডিপেন্ডেন্সি যোগ করতে হবে।

আপনার মডিউল (অ্যাপ-লেভেল) Gradle ফাইলে (সাধারণত <project>/<app-module>/build.gradle.kts বা <project>/<app-module>/build.gradle), Android-এর জন্য App Check reCAPTCHA লাইব্রেরির ডিপেন্ডেন্সি যোগ করুন। লাইব্রেরি ভার্সনিং নিয়ন্ত্রণ করতে আমরা Firebase Android BoM ব্যবহার করার সাজেশন দিই।

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:35.1.0"))

    // Add the dependency for the App Check reCAPTCHA library
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-recaptcha")
}

Firebase Android BoM ব্যবহার করার মাধ্যমে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির মানানসই ভার্সন ব্যবহার করবে।

(বিকল্প)  BoM ব্যবহার না করে Firebase লাইব্রেরি ডিপেন্ডেন্সি যোগ করুন

আপনি যদি Firebase BoM ব্যবহার না করার সিদ্ধান্ত নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি ভার্সন এর ডিপেন্ডেন্সি লাইনে উল্লেখ করতে হবে।

মনে রাখবেন, আপনার অ্যাপে একাধিক Firebase লাইব্রেরি ব্যবহার করলে, লাইব্রেরি ভার্সন ম্যানেজ করার জন্য আমরা BoM ব্যবহার করার জন্য বিশেষভাবে সাজেস্ট করি, যা নিশ্চিত করে যে সব ভার্সন মানানসই।

dependencies {
    // Add the dependency for the App Check reCAPTCHA library
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-recaptcha:20.0.0")
}

৩. App Check শুরু করুন

আপনার অ্যাপে, অন্য কোনও Firebase পরিষেবা ব্যবহার করার আগে আপনাকে App Check শুরু করতে হবে।

Kotlin

Firebase.initialize(context = this)
Firebase.appCheck.installAppCheckProviderFactory(
    RecaptchaAppCheckProviderFactory.getInstance("SITE_KEY")
)

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
      RecaptchaAppCheckProviderFactory.getInstance("SITE_KEY"));

৪. মেট্রিক মনিটর করা এবং এনফোর্সমেন্ট চালু করা

আপনার অ্যাপে App Check সেট-আপ করার পরে, ব্যবহারকারীদের কাছে আপডেট করা অ্যাপ ডিস্ট্রিবিউট করা শুরু করুন।

আপডেট করা ক্লায়েন্ট অ্যাপ Firebase-এ করা প্রতিটি অনুরোধের সাথে App Check টোকেন পাঠানো শুরু করবে। তবে, App Check App Check এনফোর্স না করা পর্যন্ত ভুল টোকেন সহ অনুরোধ ব্লক করবে না।

মেট্রিক মনিটর করা

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

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

App Check এনফোর্সমেন্ট চালু করুন

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

ডিবাগ এনভায়রনমেন্টে App Check ব্যবহার করা

App Check কিছু এনভায়রনমেন্টকে ভুল হিসেবে চিহ্নিত করে, যেমন ডেভেলপমেন্টের সময় এমুলেটর / সিমুলেটর থেকে আসা অনুরোধ অথবা কন্টিনিউয়াস ইন্টিগ্রেশন (CI) এনভায়রনমেন্ট থেকে আসা অনুরোধ।

App Check এনফোর্স করার পরে এই ধরনের পরিবেশে আপনার অ্যাপ চালাতে, আপনাকে অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে হবে যা প্রোডাকশন অ্যাটেস্টেশন প্রোভাইডারের পরিবর্তে App Check ডিবাগ প্রোভাইডার ব্যবহার করে।

আরও জানতে, Android-এ ডিবাগ প্রোভাইডারের সাথে App Check ব্যবহার করুন দেখুন।

মূল্য

আপনার অ্যাপ যতবার App Check টোকেন রিফ্রেশ করে, ততবার ব্যবহারকারীর রেসপন্স টোকেন যাচাই করার জন্য App Check আপনার হয়ে একটি মূল্যায়ন তৈরি করে। বিনামূল্যে কোটার উপরে তৈরি করা প্রতিটি মূল্যায়নের জন্য আপনার Firebase প্রোজেক্টে চার্জ করা হবে। আরও জানতে, reCAPTCHA-এর দাম দেখুন।

ডিফল্ট হিসেবে, আপনার অ্যাপ প্রতি ১ ঘণ্টায় দুবার এই টোকেন রিফ্রেশ করবে। আপনার অ্যাপ কত ঘন ঘন App Check টোকেন রিফ্রেশ করে (এবং এইভাবে কত ঘন ঘন নতুন মূল্যায়ন তৈরি হয়) তা নিয়ন্ত্রণ করতে, আপনি টোকেন TTL কনফিগার করতে পারেন।