এই পৃষ্ঠাটি আপনাকে দেখাবে কিভাবে বিল্ট-ইন reCAPTCHA v3 প্রোভাইডার ব্যবহার করে একটি ওয়েব অ্যাপে App Check সক্রিয় করতে হয়। আপনি যখন App Check সক্রিয় করেন, তখন এটি নিশ্চিত করতে সাহায্য হয় যে শুধুমাত্র আপনার অ্যাপই আপনার প্রোজেক্টের ফায়ারবেস রিসোর্সগুলো অ্যাক্সেস করতে পারবে। এই ফিচারটির একটি ওভারভিউ দেখুন।
নতুন ইন্টিগ্রেশনের জন্য আপনার reCAPTCHA Enterprise ব্যবহার করা উচিত, এবং আমরা দৃঢ়ভাবে সুপারিশ করছি যে reCAPTCHA v3 ব্যবহারকারী অ্যাপের ডেভেলপাররা সম্ভব হলে আপগ্রেড করে নিন।
reCAPTCHA v3 এবং reCAPTCHA Enterprise-এর মধ্যে পার্থক্য জানতে, বৈশিষ্ট্যগুলোর তুলনা দেখুন।
মনে রাখবেন যে reCAPTCHA v3 ব্যবহারকারীদের কাছে অদৃশ্য। reCAPTCHA v3 প্রদানকারী কোনো সময়েই ব্যবহারকারীদের কোনো চ্যালেঞ্জ সমাধান করতে বলবে না। reCAPTCHA v3 ডকুমেন্টেশন দেখুন।
আপনি যদি আপনার নিজস্ব কাস্টম প্রোভাইডারের সাথে App Check ব্যবহার করতে চান, তাহলে ‘একটি কাস্টম App Check প্রোভাইডার বাস্তবায়ন করুন ’ দেখুন।
১. আপনার ফায়ারবেস প্রজেক্ট সেট আপ করুন।
আপনার জাভাস্ক্রিপ্ট প্রজেক্টে ফায়ারবেস যোগ করুন, যদি আগে থেকে তা না করে থাকেন।
আপনার সাইটটি reCAPTCHA v3-এর জন্য নিবন্ধন করুন এবং আপনার reCAPTCHA v3 সাইট কী ও সিক্রেট কী পেয়ে যান।
Firebase কনসোলে, Security > App Check- এ যান।
অ্যাপস ট্যাবে, reCAPTCHA প্রোভাইডারের সাথে App Check ব্যবহার করার জন্য আপনার অ্যাপগুলো রেজিস্টার করুন। reCAPTCHA সাইট থেকে পাওয়া সিক্রেট কী-টি আপনাকে প্রদান করতে হবে।
সাধারণত আপনার প্রোজেক্টের সমস্ত অ্যাপ রেজিস্টার করতে হয়, কারণ একবার আপনি কোনো ফায়ারবেস প্রোডাক্টের জন্য এনফোর্সমেন্ট চালু করলে, শুধুমাত্র রেজিস্টার করা অ্যাপগুলোই সেই প্রোডাক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে।
ঐচ্ছিক : অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রোভাইডার কর্তৃক ইস্যুকৃত App Check টোকেনগুলোর জন্য একটি কাস্টম টাইম-টু-লিভ (TTL) সেট করুন। আপনি TTL-এর মান ৩০ মিনিট থেকে ৭ দিনের মধ্যে যেকোনো একটিতে সেট করতে পারেন। এই মান পরিবর্তন করার সময়, নিম্নলিখিত সীমাবদ্ধতাগুলো সম্পর্কে সচেতন থাকুন:
- নিরাপত্তা: কম TTL (টাইম টু লাইফ) আরও শক্তিশালী নিরাপত্তা প্রদান করে, কারণ এটি সেই সুযোগ কমিয়ে দেয় যার মধ্যে কোনো ফাঁস হওয়া বা হস্তগত টোকেন আক্রমণকারী দ্বারা অপব্যবহার করা যেতে পারে।
- পারফরম্যান্স: কম TTL-এর অর্থ হলো আপনার অ্যাপকে আরও ঘন ঘন অ্যাটেস্টেশন করতে হবে। যেহেতু অ্যাপ অ্যাটেস্টেশন প্রক্রিয়াটি প্রতিবার সম্পন্ন হওয়ার সময় নেটওয়ার্ক অনুরোধে লেটেন্সি যোগ করে, তাই একটি কম TTL আপনার অ্যাপের পারফরম্যান্সকে প্রভাবিত করতে পারে।
- কোটা ও খরচ: স্বল্প মেয়াদের টিটিএল (TTL) এবং ঘন ঘন পুনঃ-প্রত্যয়ন আপনার কোটা দ্রুত শেষ করে দেয়, এবং অর্থপ্রদত্ত পরিষেবার ক্ষেত্রে খরচ সম্ভাব্যভাবে বেশি হতে পারে। কোটা ও সীমা দেখুন।
বেশিরভাগ অ্যাপের জন্য ১ দিনের ডিফল্ট TTL যুক্তিসঙ্গত। উল্লেখ্য যে, App Check লাইব্রেরিটি TTL মেয়াদের প্রায় অর্ধেক সময়ে টোকেন রিফ্রেশ করে।
উন্নত সেটিংস কনফিগার করুন (ঐচ্ছিক)
যখন কোনো ব্যবহারকারী আপনার ওয়েব অ্যাপ ভিজিট করেন, reCAPTCHA v3 সেই ব্যবহারকারীর ইন্টারঅ্যাকশনের ঝুঁকির মাত্রা মূল্যায়ন করে এবং ০.০ থেকে ১.০-এর মধ্যে একটি স্কোর প্রদান করে; ১.০ মানে খুব সম্ভবত এটি একটি ভালো ইন্টারঅ্যাকশন, আর ০.০ মানে খুব সম্ভবত এটি একটি বট। App Check আপনাকে একটি অ্যাপ ঝুঁকির থ্রেশহোল্ড সেট করার সুযোগ দেয়, যাতে আপনি এই ঝুঁকির প্রতি আপনার সহনশীলতা সামঞ্জস্য করতে পারেন।
বেশিরভাগ ব্যবহারের ক্ষেত্রে, ডিফল্ট থ্রেশহোল্ড মান ০.৫ সুপারিশ করা হয়। যদি আপনার ব্যবহারের ক্ষেত্রে সমন্বয়ের প্রয়োজন হয়, তবে আপনার প্রতিটি ওয়েব অ্যাপের জন্য Firebase কনসোলের App Check ' বিভাগে এটি কনফিগার করা যেতে পারে।
বিস্তারিত
একটি ব্যবহারকারীর ইন্টারঅ্যাকশনকে বৈধ বলে গণ্য করার জন্য, App Check আপনার কনফিগার করা অ্যাপ রিস্ক থ্রেশহোল্ডকে ন্যূনতম reCAPTCHA v3 স্কোর হিসেবে ব্যবহার করে। আপনার কনফিগার করা অ্যাপ রিস্ক থ্রেশহোল্ডের চেয়ে সামান্য কম স্কোরযুক্ত সমস্ত reCAPTCHA v3 স্কোর বাতিল করা হবে। আপনার অ্যাপ রিস্ক থ্রেশহোল্ড সামঞ্জস্য করার সময়, নিম্নলিখিত বিষয়গুলি সম্পর্কে সচেতন থাকুন:
- আপনার ওয়েব অ্যাপের reCAPTCHA v3 স্কোর বন্টন নিরীক্ষণ করতে, reCAPTCHA অ্যাডমিন কনসোলে যান এবং আপনার ওয়েব অ্যাপের সাথে সম্পর্কিত সাইটটি নির্বাচন করুন।
অ্যাপের ঝুঁকি সহনশীলতা কম থাকলে, ঝুঁকির মাত্রা বাড়াতে স্লাইডারটি বাম দিকে সরান ।
- ১.০ মানটি সুপারিশ করা হয় না, কারণ এই সেটিংটি এমন বৈধ ব্যবহারকারীদেরও প্রবেশাধিকার অস্বীকার করতে পারে, যারা এই উচ্চ বিশ্বাসযোগ্যতার মানদণ্ড পূরণ করেন না।
আপনার অ্যাপের ঝুঁকি সহনশীলতা বেশি থাকলে, ঝুঁকির মাত্রা কমাতে স্লাইডারটি ডানদিকে সরান ।
- ০.০ মানটি সুপারিশ করা হয় না, কারণ এই সেটিংটি অপব্যবহার সুরক্ষা নিষ্ক্রিয় করে দেয়।
অতিরিক্ত বিবরণের জন্য reCAPTCHA v3 ডকুমেন্টেশন দেখুন।
২. আপনার অ্যাপে App Check লাইব্রেরিটি যুক্ত করুন
আপনার ওয়েব অ্যাপে ফায়ারবেস যোগ করুন, যদি আগে থেকে না করে থাকেন। App Check লাইব্রেরিটি ইম্পোর্ট করতে ভুলবেন না।
৩. App Check শুরু করুন
যেকোনো Firebase পরিষেবা অ্যাক্সেস করার আগে, আপনার অ্যাপ্লিকেশনে নিম্নলিখিত ইনিশিয়ালাইজেশন কোডটি যোগ করুন। activate() ফাংশনে আপনাকে আপনার reCAPTCHA সাইট কী পাস করতে হবে, যা আপনি reCAPTCHA কনসোলে তৈরি করেছেন।
Web
import { initializeApp } from "firebase/app"; import { initializeAppCheck, ReCaptchaV3Provider } from "firebase/app-check"; const app = initializeApp({ // Your firebase configuration object }); // Pass your reCAPTCHA v3 site key (public key) to activate(). Make sure this // key is the counterpart to the secret key you set in the Firebase console. const appCheck = initializeAppCheck(app, { provider: new ReCaptchaV3Provider('abcdefghijklmnopqrstuvwxy-1234567890abcd'), // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. isTokenAutoRefreshEnabled: true });
Web
firebase.initializeApp({ // Your firebase configuration object }); const appCheck = firebase.appCheck(); // Pass your reCAPTCHA v3 site key (public key) to activate(). Make sure this // key is the counterpart to the secret key you set in the Firebase console. appCheck.activate( 'abcdefghijklmnopqrstuvwxy-1234567890abcd', // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. true);
পরবর্তী পদক্ষেপ
আপনার অ্যাপে App Check লাইব্রেরিটি ইনস্টল হয়ে গেলে, সেটি ডিপ্লয় করুন।
আপডেট করা ক্লায়েন্ট অ্যাপটি ফায়ারবেসে করা প্রতিটি অনুরোধের সাথে App Check টোকেন পাঠানো শুরু করবে, কিন্তু ফায়ারবেস কনসোলের App Check বিভাগে আপনি এনফোর্সমেন্ট সক্রিয় না করা পর্যন্ত ফায়ারবেস প্রোডাক্টগুলোর জন্য টোকেনগুলো বৈধ থাকার প্রয়োজন হবে না।
মেট্রিক নিরীক্ষণ করুন এবং প্রয়োগ সক্ষম করুন
তবে, এনফোর্সমেন্ট চালু করার আগে আপনার নিশ্চিত হয়ে নেওয়া উচিত যে, এর ফলে আপনার বিদ্যমান বৈধ ব্যবহারকারীদের কোনো অসুবিধা হবে না। অন্যদিকে, যদি আপনি আপনার অ্যাপের রিসোর্সের সন্দেহজনক ব্যবহার দেখতে পান, তাহলে আপনি আরও দ্রুত এনফোর্সমেন্ট চালু করতে চাইতে পারেন।
এই সিদ্ধান্ত নিতে সাহায্য করার জন্য, আপনি আপনার ব্যবহৃত পরিষেবাগুলোর App Check মেট্রিক্স দেখতে পারেন:
- Firebase AI Logic , Data 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 , Data 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 জন্য আপনার অ্যাপটি নিবন্ধন করার পর, আপনি যদি এমন কোনো পরিবেশে আপনার অ্যাপটি চালাতে চান যা App Check সাধারণত বৈধ বলে গণ্য করে না, যেমন—ডেভেলপমেন্টের সময় স্থানীয়ভাবে, অথবা কোনো কন্টিনিউয়াস ইন্টিগ্রেশন (CI) পরিবেশ থেকে—তাহলে আপনি একটি প্রকৃত অ্যাটেস্টেশন প্রোভাইডারের পরিবর্তে App Check ডিবাগ প্রোভাইডার ব্যবহার করে আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে পারেন।
ওয়েব অ্যাপে ডিবাগ প্রোভাইডারের সাথে App Check ব্যবহার দেখুন।