এই পৃষ্ঠাটি আপনাকে দেখাবে কিভাবে reCAPTCHA এন্টারপ্রাইজ প্রোভাইডার ব্যবহার করে একটি ওয়েব অ্যাপে App Check সক্রিয় করতে হয়। যখন আপনি App Check সক্রিয় করেন, তখন আপনি এটি নিশ্চিত করতে সাহায্য করেন যে শুধুমাত্র আপনার অ্যাপই আপনার প্রোজেক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে। এই ফিচারটির একটি ওভারভিউ দেখুন।
উল্লেখ্য যে, App Check reCAPTCHA Enterprise-এর স্কোর-ভিত্তিক সাইট কী ব্যবহার করে, যা এটিকে ব্যবহারকারীদের কাছে অদৃশ্য রাখে। reCAPTCHA Enterprise প্রদানকারী কোনো সময়েই ব্যবহারকারীদের কোনো চ্যালেঞ্জ সমাধান করতে বলবে না।
যদি আপনার ব্যবহারের ক্ষেত্রে এমন reCAPTCHA Enterprise ফিচারের প্রয়োজন হয় যা App Check এ প্রয়োগ করা হয়নি, অথবা যদি আপনি আপনার নিজস্ব কাস্টম প্রোভাইডারের সাথে App Check ব্যবহার করতে চান, তাহলে “একটি কাস্টম App Check প্রোভাইডার প্রয়োগ করুন” দেখুন।
১. আপনার ফায়ারবেস প্রজেক্ট সেট আপ করুন।
আপনার জাভাস্ক্রিপ্ট প্রজেক্টে ফায়ারবেস যোগ করুন, যদি আগে থেকে তা না করে থাকেন।
Google Cloud কনসোলের reCAPTCHA Enterprise বিভাগটি খুলুন এবং নিম্নলিখিতগুলি করুন:
- আপনাকে reCAPTCHA Enterprise API চালু করতে বলা হলে, তা করুন।
- একটি ওয়েবসাইট তৈরি করুন -এই টাইপ কী-টি আপনাকে নির্দিষ্ট করতে হবে। আপনাকে সেই ডোমেইনগুলো উল্লেখ করতে হবে যেখানে আপনি আপনার ওয়েব অ্যাপ হোস্ট করেন। "চেকবক্স চ্যালেঞ্জ ব্যবহার করুন" বিকল্পটি অনির্বাচিত রাখুন।
Firebase কনসোলে, Security > App Check- এ যান।
অ্যাপস ট্যাবে, reCAPTCHA এন্টারপ্রাইজ প্রোভাইডারের সাথে App Check ব্যবহার করার জন্য আপনার অ্যাপগুলোকে রেজিস্টার করুন। আপনাকে Google Cloud কনসোল থেকে পাওয়া সাইট কী-টি প্রদান করতে হবে।
সাধারণত আপনার প্রোজেক্টের সমস্ত অ্যাপ রেজিস্টার করতে হয়, কারণ একবার আপনি কোনো ফায়ারবেস প্রোডাক্টের জন্য এনফোর্সমেন্ট চালু করলে, শুধুমাত্র রেজিস্টার করা অ্যাপগুলোই সেই প্রোডাক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে।
ঐচ্ছিক : অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রোভাইডার কর্তৃক ইস্যুকৃত App Check টোকেনগুলোর জন্য একটি কাস্টম টাইম-টু-লিভ (TTL) সেট করুন। আপনি TTL-এর মান ৩০ মিনিট থেকে ৭ দিনের মধ্যে যেকোনো একটিতে সেট করতে পারেন। এই মান পরিবর্তন করার সময়, নিম্নলিখিত সীমাবদ্ধতাগুলো সম্পর্কে সচেতন থাকুন:
- নিরাপত্তা: কম TTL (টাইম টু লাইফ) আরও শক্তিশালী নিরাপত্তা প্রদান করে, কারণ এটি সেই সুযোগ কমিয়ে দেয় যার মধ্যে কোনো ফাঁস হওয়া বা হস্তগত টোকেন আক্রমণকারী দ্বারা অপব্যবহার করা যেতে পারে।
- পারফরম্যান্স: কম TTL-এর অর্থ হলো আপনার অ্যাপকে আরও ঘন ঘন অ্যাটেস্টেশন করতে হবে। যেহেতু অ্যাপ অ্যাটেস্টেশন প্রক্রিয়াটি প্রতিবার সম্পন্ন হওয়ার সময় নেটওয়ার্ক অনুরোধে লেটেন্সি যোগ করে, তাই একটি কম TTL আপনার অ্যাপের পারফরম্যান্সকে প্রভাবিত করতে পারে।
- কোটা ও খরচ: স্বল্প মেয়াদের টিটিএল (TTL) এবং ঘন ঘন পুনঃ-প্রত্যয়ন আপনার কোটা দ্রুত শেষ করে দেয়, এবং অর্থপ্রদত্ত পরিষেবার ক্ষেত্রে খরচ সম্ভাব্যভাবে বেশি হতে পারে। কোটা ও সীমা দেখুন।
বেশিরভাগ অ্যাপের জন্য ১ ঘণ্টার ডিফল্ট TTL যুক্তিসঙ্গত। উল্লেখ্য যে, App Check লাইব্রেরিটি TTL মেয়াদের প্রায় অর্ধেক সময়ে টোকেন রিফ্রেশ করে।
উন্নত সেটিংস কনফিগার করুন (ঐচ্ছিক)
যখন কোনো ব্যবহারকারী আপনার ওয়েব অ্যাপ ভিজিট করেন, তখন reCAPTCHA Enterprise ব্যবহারকারীর ইন্টারঅ্যাকশনের ঝুঁকির মাত্রা মূল্যায়ন করে এবং ০.০ থেকে ১.০-এর মধ্যে ০.১-এর ধাপে একটি স্কোর প্রদান করে। ১.০ স্কোর নির্দেশ করে যে ইন্টারঅ্যাকশনটি কম ঝুঁকিপূর্ণ এবং বৈধ হওয়ার সম্ভাবনা খুব বেশি, অন্যদিকে ০.০ স্কোর নির্দেশ করে যে ইন্টারঅ্যাকশনটি উচ্চ ঝুঁকিপূর্ণ এবং প্রতারণামূলক হতে পারে। App Check আপনাকে একটি অ্যাপ ঝুঁকির থ্রেশহোল্ড কনফিগার করার সুযোগ দেয়, যাতে আপনি এই ঝুঁকির প্রতি আপনার সহনশীলতা সামঞ্জস্য করতে পারেন।
বেশিরভাগ ব্যবহারের ক্ষেত্রে, ডিফল্ট থ্রেশহোল্ড মান ০.৫ সুপারিশ করা হয়। যদি আপনার ব্যবহারের ক্ষেত্রে সমন্বয়ের প্রয়োজন হয়, তবে আপনার প্রতিটি ওয়েব অ্যাপের জন্য Firebase কনসোলের App Check ' বিভাগে এটি কনফিগার করা যেতে পারে।
বিস্তারিত
একটি ব্যবহারকারীর ইন্টারঅ্যাকশনকে বৈধ বলে গণ্য করার জন্য, App Check আপনার কনফিগার করা অ্যাপ রিস্ক থ্রেশহোল্ডকে ন্যূনতম reCAPTCHA এন্টারপ্রাইজ স্কোর হিসেবে ব্যবহার করে। আপনার কনফিগার করা থ্রেশহোল্ডের চেয়ে সামান্য কম স্কোরযুক্ত সমস্ত reCAPTCHA এন্টারপ্রাইজ স্কোর বাতিল করা হবে। আপনার অ্যাপ রিস্ক থ্রেশহোল্ড সামঞ্জস্য করার সময়, নিম্নলিখিত বিষয়গুলি সম্পর্কে সচেতন থাকুন:
reCAPTCHA এন্টারপ্রাইজ স্কোরের ১১টি সম্ভাব্য স্তরের মধ্যে, আপনার প্রোজেক্টে একটি Google Cloud Billing অ্যাকাউন্ট যোগ করার আগে শুধুমাত্র নিম্নলিখিত চারটি স্কোর স্তর উপলব্ধ থাকে: ০.১, ০.৩, ০.৭, এবং ০.৯। এই সময়ে, App Check সেই অনুযায়ী শুধুমাত্র ০.১, ০.৩, ০.৫, ০.৭, এবং ০.৯ অ্যাপ ঝুঁকি থ্রেশহোল্ড মানগুলোকেই অনুমোদন করবে। বেশিরভাগ ব্যবহারের ক্ষেত্রে ০.৫ অ্যাপ ঝুঁকি থ্রেশহোল্ড মানটিই এখনও সুপারিশ করা হয়।
reCAPTCHA এন্টারপ্রাইজ স্কোরের ১১টি লেভেলই চালু করতে, আপনার প্রজেক্টে একটি Google Cloud Billing অ্যাকাউন্ট যোগ করুন। এটি করার একটি উপায় হলো Blaze প্রাইসিং প্ল্যানে আপগ্রেড করা । একবার তা করে ফেললে, App Check আপনাকে ০.০ থেকে ১.০-এর মধ্যে ০.১-এর ধাপে যেকোনো অ্যাপ রিস্ক থ্রেশহোল্ড ভ্যালু কনফিগার করার সুযোগ দেবে।
আপনার ওয়েব অ্যাপের জন্য উচ্চ এবং নিম্ন reCAPTCHA Enterprise স্কোরের বণ্টন নিরীক্ষণ করতে, Google Cloud কনসোলে reCAPTCHA Enterprise পৃষ্ঠায় যান এবং আপনার ওয়েব অ্যাপে ব্যবহৃত সাইট কী নির্বাচন করুন।
অ্যাপের ঝুঁকি সহনশীলতা কম থাকলে, ঝুঁকির মাত্রা বাড়াতে স্লাইডারটি বাম দিকে সরান ।
- ১.০ মানটি সুপারিশ করা হয় না, কারণ এই সেটিংটি এমন বৈধ ব্যবহারকারীদেরও প্রবেশাধিকার অস্বীকার করতে পারে, যারা এই উচ্চ বিশ্বাসযোগ্যতার মানদণ্ড পূরণ করেন না।
আপনার অ্যাপের ঝুঁকি সহনশীলতা বেশি থাকলে, ঝুঁকির মাত্রা কমাতে স্লাইডারটি ডানদিকে সরান ।
- ০.০ মানটি সুপারিশ করা হয় না, কারণ এই সেটিংটি অপব্যবহার সুরক্ষা নিষ্ক্রিয় করে দেয়।
অতিরিক্ত বিবরণের জন্য reCAPTCHA Enterprise ডকুমেন্টেশন দেখুন।
২. আপনার অ্যাপে App Check লাইব্রেরিটি যুক্ত করুন
আপনার ওয়েব অ্যাপে ফায়ারবেস যোগ করুন, যদি আগে থেকে না করে থাকেন। App Check লাইব্রেরিটি ইম্পোর্ট করতে ভুলবেন না।
৩. App Check শুরু করুন
যেকোনো Firebase পরিষেবা অ্যাক্সেস করার আগে, আপনার অ্যাপ্লিকেশনে নিম্নলিখিত ইনিশিয়ালাইজেশন কোডটি যোগ করুন। activate() ফাংশনে আপনাকে আপনার reCAPTCHA এন্টারপ্রাইজ সাইট কী পাস করতে হবে, যা আপনি ক্লাউড কনসোলে তৈরি করেছেন।
Web
import { initializeApp } from "firebase/app"; import { initializeAppCheck, ReCaptchaEnterpriseProvider } from "firebase/app-check"; const app = initializeApp({ // Your Firebase configuration object. }); // Create a ReCaptchaEnterpriseProvider instance using your reCAPTCHA Enterprise // site key and pass it to initializeAppCheck(). const appCheck = initializeAppCheck(app, { provider: new ReCaptchaEnterpriseProvider(/* reCAPTCHA Enterprise site key */), isTokenAutoRefreshEnabled: true // Set to true to allow auto-refresh. });
Web
firebase.initializeApp({ // Your Firebase configuration object. }); // Create a ReCaptchaEnterpriseProvider instance using your reCAPTCHA Enterprise // site key and pass it to activate(). const appCheck = firebase.appCheck(); appCheck.activate( new firebase.appCheck.ReCaptchaEnterpriseProvider( /* reCAPTCHA Enterprise site key */ ), true // Set to true to allow auto-refresh. );
পরবর্তী পদক্ষেপ
আপনার অ্যাপে 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 ব্যবহার দেখুন।
খরচ সংক্রান্ত নোট
আপনার ওয়েব অ্যাপ চালিত কোনো ব্রাউজার যখনই তার App Check টোকেন রিফ্রেশ করে, তখন ব্যবহারকারীর রেসপন্স টোকেন যাচাই করার জন্য App Check আপনার পক্ষ থেকে একটি অ্যাসেসমেন্ট তৈরি করে। বিনামূল্যের কোটার অতিরিক্ত প্রতিটি অ্যাসেসমেন্টের জন্য আপনার প্রজেক্টকে চার্জ করা হবে। বিস্তারিত জানতে reCAPTCHA প্রাইসিং দেখুন।
ডিফল্টরূপে, আপনার ওয়েব অ্যাপ প্রতি ১ ঘন্টায় এই টোকেনটি দুইবার রিফ্রেশ করবে। আপনার অ্যাপ কত ঘন ঘন App Check টোকেন রিফ্রেশ করবে (এবং এর ফলে কত ঘন ঘন নতুন অ্যাসেসমেন্ট তৈরি হবে) তা নিয়ন্ত্রণ করতে, সেগুলোর TTL কনফিগার করুন ।