Apple প্ল্যাটফর্মে reCAPTCHA Enterprise-এর সাথে App Check ব্যবহার করা শুরু করা

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


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

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

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

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

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

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

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

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

    3. iOS-এর মতো কী তৈরি করুন এবং আপনার অ্যাপের বান্ডেল আইডি নির্দিষ্ট করুন (যেমন, com.example.my_app)।

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

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

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

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

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

  4. অ্যাপ ট্যাবে, reCAPTCHA Enterprise প্রদানকারীর সাথে App Check ব্যবহার করার জন্য আপনার Apple প্ল্যাটফর্ম অ্যাপ রেজিস্টার করুন। 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 SDK যোগ করুন

Firebase ডিপেন্ডেন্সি ইনস্টল ও ম্যানেজ করতে Swift Package Manager (SPM) ব্যবহার করুন। আপনি আগে থেকেই Firebase ব্যবহার করলে, আপনার Firebase প্যাকেজ v12.17.0 বা তার পরের যেকোনও ভার্সন আছে কিনা তা নিশ্চিত করুন।

  1. Xcode-এ, আপনার অ্যাপ প্রোজেক্ট খুলুন।

  2. Firebase লাইব্রেরি যোগ করুন:

    1. ফাইল > প্যাকেজ যোগ করুন বিকল্পে নেভিগেট করুন।

    2. প্রম্পট করা হলে, Firebase Apple প্ল্যাটফর্ম SDK রিপোজিটরি যোগ করুন:

      https://github.com/firebase/firebase-ios-sdk
      
    3. লেটেস্ট SDK ভার্সন (v12.17.0 বা এর পরের যেকোনও ভার্সন) বেছে নিন।

    4. FirebaseAppCheck লাইব্রেরি বেছে নিন।

    5. প্যাকেজ যোগ করুন বিকল্পে ক্লিক করুন। Xcode ডিপেন্ডেন্সি সংক্রান্ত সমস্যার সমাধান করবে এবং সেগুলি ডাউনলোড করবে।

    6. প্রম্পট করা হলে, আপনার অ্যাপ টার্গেটে লাইব্রেরি যোগ করুন।

  3. reCAPTCHA Enterprise লাইব্রেরি যোগ করুন:

    1. ফাইল > প্যাকেজ যোগ করুন বিকল্পে ফিরে যান

    2. প্রম্পট করা হলে, reCAPTCHA Enterprise SDK রিপোজিটরি যোগ করুন:

      https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdk
      
    3. RecaptchaEnterprise লাইব্রেরি বেছে নিন।

    4. প্যাকেজ যোগ করুন বিকল্পে ক্লিক করুন। প্রম্পট করা হলে, আপনার অ্যাপ টার্গেটে লাইব্রেরি যোগ করুন।

৩. App Check চালু করুন

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

RecaptchaProviderFactory-এর একটি ইনস্ট্যান্স তৈরি করুন, আপনার reCAPTCHA কী পাস করান এবং তারপরে এটি ব্যবহার করার জন্য App Check কনফিগার করুন:

let providerFactory = RecaptchaProviderFactory(siteKey: "SITE_KEY")
AppCheck.setAppCheckProviderFactory(providerFactory)

FirebaseApp.configure()

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

আপনার অ্যাপে 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 ডিবাগ প্রোভাইডার ব্যবহার করে।

আরও বিবরণের জন্য, Apple প্ল্যাটফর্মে ডিবাগ প্রোভাইডারের সাথে App Check ব্যবহার করুন দেখুন।

মূল্য

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

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