এই পৃষ্ঠাটি আপনাকে দেখাবে কিভাবে একটি C++ অ্যাপে ডিফল্ট প্রোভাইডার—অ্যান্ড্রয়েডের জন্য প্লে ইন্টিগ্রিটি (Play Integrity) এবং অ্যাপল প্ল্যাটফর্মের জন্য ডিভাইস চেক (Device Check) বা অ্যাপ অ্যাটেস্ট (App Attest)—ব্যবহার করে অ্যাপ চেক (App Check) সক্রিয় করতে হয়। যখন আপনি অ্যাপ চেক সক্রিয় করেন, তখন এটি নিশ্চিত করতে সাহায্য হয় যে শুধুমাত্র আপনার অ্যাপই আপনার প্রোজেক্টের ফায়ারবেস রিসোর্সগুলো অ্যাক্সেস করতে পারবে। এই ফিচারটির একটি ওভারভিউ দেখুন।
১. আপনার ফায়ারবেস প্রজেক্ট সেট আপ করুন।
আপনার C++ প্রজেক্টে Firebase যোগ করুন , যদি আগে থেকে তা করা না থাকে।
Firebase কনসোলের Project Settings > App Check বিভাগে Play Integrity, Device Check, বা App Attest প্রোভাইডারদের সাথে App Check ব্যবহার করার জন্য আপনার অ্যাপগুলিকে রেজিস্টার করুন।
সাধারণত আপনার প্রোজেক্টের সমস্ত অ্যাপ রেজিস্টার করতে হয়, কারণ একবার আপনি কোনো ফায়ারবেস প্রোডাক্টের জন্য এনফোর্সমেন্ট চালু করলে, শুধুমাত্র রেজিস্টার করা অ্যাপগুলোই সেই প্রোডাক্টের ব্যাকএন্ড রিসোর্স অ্যাক্সেস করতে পারবে।
প্রতিটি প্রোভাইডারের সাথে কীভাবে নিবন্ধন করতে হবে তার বিস্তারিত নির্দেশাবলীর জন্য, অ্যান্ড্রয়েড এবং আইওএস-এর নির্দিষ্ট ডকুমেন্টেশন দেখুন।
ঐচ্ছিক : অ্যাপ রেজিস্ট্রেশন সেটিংসে, প্রোভাইডার কর্তৃক ইস্যুকৃত অ্যাপ চেক টোকেনগুলোর জন্য একটি কাস্টম টাইম-টু-লিভ (TTL) সেট করুন। আপনি TTL-এর মান ৩০ মিনিট থেকে ৭ দিনের মধ্যে যেকোনো একটিতে সেট করতে পারেন। এই মান পরিবর্তন করার সময়, নিম্নলিখিত সীমাবদ্ধতাগুলো সম্পর্কে সচেতন থাকুন:
- নিরাপত্তা: কম TTL (টাইম টু লাইফ) আরও শক্তিশালী নিরাপত্তা প্রদান করে, কারণ এটি সেই সুযোগ কমিয়ে দেয় যার মধ্যে কোনো ফাঁস হওয়া বা হস্তগত টোকেন আক্রমণকারী দ্বারা অপব্যবহার করা যেতে পারে।
- পারফরম্যান্স: কম TTL-এর অর্থ হলো আপনার অ্যাপকে আরও ঘন ঘন অ্যাটেস্টেশন করতে হবে। যেহেতু অ্যাপ অ্যাটেস্টেশন প্রক্রিয়াটি প্রতিবার সম্পন্ন হওয়ার সময় নেটওয়ার্ক অনুরোধে লেটেন্সি যোগ করে, তাই একটি কম TTL আপনার অ্যাপের পারফরম্যান্সকে প্রভাবিত করতে পারে।
- কোটা ও খরচ: স্বল্প মেয়াদের টিটিএল (TTL) এবং ঘন ঘন পুনঃ-প্রত্যয়ন আপনার কোটা দ্রুত শেষ করে দেয়, এবং অর্থপ্রদত্ত পরিষেবার ক্ষেত্রে খরচ সম্ভাব্যভাবে বেশি হতে পারে। কোটা ও সীমা দেখুন।
বেশিরভাগ অ্যাপের জন্য ডিফল্ট TTL যুক্তিসঙ্গত। উল্লেখ্য যে, অ্যাপ চেক লাইব্রেরি TTL মেয়াদের প্রায় অর্ধেক সময়ে টোকেন রিফ্রেশ করে।
২. আপনার অ্যাপে অ্যাপ চেক লাইব্রেরিটি যুক্ত করুন
অ্যাপ চেক-এর সেটআপ নির্দেশাবলী অনুসরণ করে আপনার ডিপেন্ডেন্সি সেটে অ্যাপ চেক লাইব্রেরিটি অন্তর্ভুক্ত করুন।
৩. অ্যাপ চেক শুরু করুন
আপনার অ্যাপে নিম্নলিখিত ইনিশিয়ালাইজেশন কোডটি যোগ করুন, যাতে যেকোনো ফায়ারবেস অ্যাপ তৈরি করা সহ যেকোনো ফায়ারবেস পরিষেবা ব্যবহার করার আগে এটি রান করে।
অ্যান্ড্রয়েড
firebase::app_checkএর জন্য হেডার ফাইলটি অন্তর্ভুক্ত করুন:#include "firebase/app_check.h"
Play Integrity প্রোভাইডার ব্যবহার করে App Check লাইব্রেরিটি ইনিশিয়ালাইজ করুন:
firebase::app_check::AppCheck::SetAppCheckProviderFactory( firebase::app_check::PlayIntegrityProviderFactory::GetInstance());
iOS+
firebase::app_checkএর জন্য হেডার ফাইলটি অন্তর্ভুক্ত করুন:#include "firebase/app_check.h"
ডিভাইস চেক অথবা অ্যাপ অ্যাটেস্ট প্রোভাইডার ব্যবহার করে অ্যাপ চেক লাইব্রেরিটি চালু করুন:
firebase::app_check::AppCheck::SetAppCheckProviderFactory( firebase::app_check::DeviceCheckProviderFactory::GetInstance());
পরবর্তী পদক্ষেপ
আপনার অ্যাপে অ্যাপ চেক লাইব্রেরিটি ইনস্টল হয়ে গেলে, ব্যবহারকারীদের কাছে আপডেট করা অ্যাপটি বিতরণ করা শুরু করুন।
আপডেট করা ক্লায়েন্ট অ্যাপটি ফায়ারবেসে করা প্রতিটি অনুরোধের সাথে অ্যাপ চেক টোকেন পাঠানো শুরু করবে, কিন্তু ফায়ারবেস কনসোলের অ্যাপ চেক বিভাগে আপনি এনফোর্সমেন্ট সক্রিয় না করা পর্যন্ত ফায়ারবেস প্রোডাক্টগুলোর জন্য টোকেনগুলো বৈধ থাকার প্রয়োজন হবে না।
মেট্রিক নিরীক্ষণ করুন এবং প্রয়োগ সক্ষম করুন
তবে, এনফোর্সমেন্ট চালু করার আগে আপনার নিশ্চিত হয়ে নেওয়া উচিত যে, এর ফলে আপনার বিদ্যমান বৈধ ব্যবহারকারীদের কোনো অসুবিধা হবে না। অন্যদিকে, যদি আপনি আপনার অ্যাপের রিসোর্সের সন্দেহজনক ব্যবহার দেখতে পান, তাহলে আপনি আরও দ্রুত এনফোর্সমেন্ট চালু করতে চাইতে পারেন।
এই সিদ্ধান্ত নিতে সাহায্য করার জন্য, আপনি আপনার ব্যবহৃত পরিষেবাগুলোর অ্যাপ চেক মেট্রিক্স দেখতে পারেন:
- রিয়েলটাইম ডেটাবেস, ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য অ্যাপ চেক অনুরোধের মেট্রিক্স নিরীক্ষণ করুন ।
- ক্লাউড ফাংশনগুলির জন্য অ্যাপ চেক অনুরোধের মেট্রিক্স নিরীক্ষণ করুন ।
অ্যাপ চেক প্রয়োগ সক্ষম করুন
যখন আপনি বুঝতে পারবেন অ্যাপ চেক আপনার ব্যবহারকারীদের কীভাবে প্রভাবিত করবে এবং আপনি এগিয়ে যেতে প্রস্তুত হবেন, তখন আপনি অ্যাপ চেক এনফোর্সমেন্ট সক্রিয় করতে পারেন:
- রিয়েলটাইম ডেটাবেস, ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য অ্যাপ চেক প্রয়োগ সক্রিয় করুন ।
- ক্লাউড ফাংশনগুলির জন্য অ্যাপ চেক প্রয়োগ সক্ষম করুন ।
ডিবাগ পরিবেশে অ্যাপ চেক ব্যবহার করুন
অ্যাপ চেক-এর জন্য আপনার অ্যাপটি নিবন্ধন করার পর, যদি আপনি এমন কোনো পরিবেশে আপনার অ্যাপটি চালাতে চান যা অ্যাপ চেক সাধারণত বৈধ বলে গণ্য করে না, যেমন ডেস্কটপে, ডেভেলপমেন্টের সময় কোনো এমুলেটরে, বা কোনো কন্টিনিউয়াস ইন্টিগ্রেশন (CI) পরিবেশ থেকে, তাহলে আপনি একটি আসল অ্যাটেস্টেশন প্রোভাইডারের পরিবর্তে অ্যাপ চেক ডিবাগ প্রোভাইডার ব্যবহার করে আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে পারেন।
C++ অ্যাপে ডিবাগ প্রোভাইডারের সাথে অ্যাপ চেক-এর ব্যবহার দেখুন।