এই পৃষ্ঠাটি আপনাকে দেখায় কিভাবে আপনার কাস্টম App Check প্রদানকারী ব্যবহার করে একটি C++ অ্যাপে App Check সক্ষম করবেন। যখন আপনি App Check সক্ষম করেন, তখন আপনি নিশ্চিত করতে সাহায্য করেন যে শুধুমাত্র আপনার অ্যাপই আপনার প্রকল্পের ফায়ারবেস রিসোর্স অ্যাক্সেস করতে পারে।
আপনি যদি ডিফল্ট প্রোভাইডারদের সাথে App Check ব্যবহার করতে চান, তাহলে C++ দিয়ে ডিফল্ট প্রোভাইডারদের সাথে App Check সক্ষম করুন দেখুন।
শুরু করার আগে
যদি আপনি ইতিমধ্যেই C++ প্রজেক্টে Firebase যোগ না করে থাকেন, তাহলে তা যোগ করুন ।
আপনার কাস্টম App Check প্রদানকারীর সার্ভার-সাইড লজিক বাস্তবায়ন করুন ।
১. আপনার অ্যাপে App Check লাইব্রেরি যোগ করুন
অ্যাপ চেকের সেটআপ নির্দেশাবলী অনুসরণ করে আপনার নির্ভরতার সেটে অ্যাপ চেক লাইব্রেরি অন্তর্ভুক্ত করুন।
2. App Check ইন্টারফেসগুলি বাস্তবায়ন করুন
প্রথমে, আপনাকে এমন ক্লাস তৈরি করতে হবে যা AppCheckProvider এবং AppCheckProviderFactory ইন্টারফেস বাস্তবায়ন করে।
আপনার AppCheckProvider ক্লাসে অবশ্যই একটি GetToken() পদ্ধতি থাকতে হবে, যা আপনার কাস্টম App Check প্রদানকারীর সত্যতার প্রমাণ হিসেবে প্রয়োজনীয় তথ্য সংগ্রহ করে এবং একটি App Check টোকেনের বিনিময়ে আপনার টোকেন অধিগ্রহণ পরিষেবায় পাঠায়। App Check SDK টোকেন ক্যাশিং পরিচালনা করে, তাই GetToken() বাস্তবায়নের সময় সর্বদা একটি নতুন টোকেন পান।
class YourCustomAppCheckProvider : public AppCheckProvider {
void GetToken(std::function<void(AppCheckToken, int, const std::string&)>
completion_callback) {
// Logic to exchange proof of authenticity for an App Check token and
// expiration time.
// ...
// Create AppCheckToken object.
AppCheckToken appCheckToken;
appCheckToken.token = token;
appCheckToken.expire_time_millis = expireTime;
completion_callback(appCheckToken, 0, "");
// Or, if needing to return an error
//completion_callback({}, error_code, "Error description");
}
};
এছাড়াও, একটি AppCheckProviderFactory ক্লাস বাস্তবায়ন করুন যা আপনার AppCheckProvider বাস্তবায়নের উদাহরণ তৈরি করে:
class YourCustomAppCheckProviderFactory : public AppCheckProviderFactory {
AppCheckProvider* CreateProvider(App* app) {
// Create and return an AppCheckProvider object.
return new YourCustomAppCheckProvider(app);
}
}
৩. App Check শুরু করুন
আপনার অ্যাপে নিম্নলিখিত ইনিশিয়ালাইজেশন কোডটি যোগ করুন যাতে এটি অন্য কোনও Firebase SDK ব্যবহার করার আগে চলে:
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
YourCustomAppCheckProviderFactory::GetInstance());
পরবর্তী পদক্ষেপ
আপনার অ্যাপে App Check লাইব্রেরি ইনস্টল হয়ে গেলে, আপনার ব্যবহারকারীদের কাছে আপডেট করা অ্যাপটি বিতরণ করা শুরু করুন।
আপডেট করা ক্লায়েন্ট অ্যাপটি Firebase-এ করা প্রতিটি অনুরোধের সাথে App Check টোকেন পাঠানো শুরু করবে, তবে Firebase কনসোলের App Check বিভাগে এনফোর্সমেন্ট সক্ষম না করা পর্যন্ত Firebase পণ্যগুলির জন্য টোকেনগুলি বৈধ হওয়ার প্রয়োজন হবে না।
মেট্রিক্স পর্যবেক্ষণ করুন এবং প্রয়োগ সক্ষম করুন
তবে, এনফোর্সমেন্ট চালু করার আগে, আপনার নিশ্চিত করা উচিত যে এটি করার ফলে আপনার বিদ্যমান বৈধ ব্যবহারকারীরা ব্যাহত হবেন না। অন্যদিকে, যদি আপনি আপনার অ্যাপ রিসোর্সের সন্দেহজনক ব্যবহার দেখতে পান, তাহলে আপনি আরও তাড়াতাড়ি এনফোর্সমেন্ট চালু করতে চাইতে পারেন।
এই সিদ্ধান্ত নিতে সাহায্য করার জন্য, আপনি যে পরিষেবাগুলি ব্যবহার করেন তার জন্য App Check মেট্রিক্স দেখতে পারেন:
- Firebase AI Logic , Data Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , iOS এর জন্য Google Identity, Maps JavaScript API, এবং Places API (নতুন) এর জন্য App Check অনুরোধের মেট্রিক্স মনিটর করুন ।
- App Check মনিটর করুন Cloud Functions জন্য অনুরোধ মেট্রিক্স পরীক্ষা করুন ।
App Check এনফোর্সমেন্ট সক্ষম করুন
যখন আপনি বুঝতে পারবেন যে App Check আপনার ব্যবহারকারীদের কীভাবে প্রভাবিত করবে এবং আপনি এগিয়ে যাওয়ার জন্য প্রস্তুত, তখন আপনি App Check এনফোর্সমেন্ট সক্ষম করতে পারেন:
- Firebase AI Logic , Data Connect , Realtime Database , Cloud Firestore , Cloud Storage , Authentication , iOS এর জন্য Google Identity, Maps JavaScript API, এবং Places API (নতুন) এর জন্য App Check এনফোর্সমেন্ট সক্ষম করুন ।
- Cloud Functions জন্য App Check এনফোর্সমেন্ট সক্ষম করুন ।
ডিবাগ পরিবেশে App Check ব্যবহার করুন
যদি, App Check জন্য আপনার অ্যাপটি নিবন্ধিত করার পরে, আপনি এমন একটি পরিবেশে আপনার অ্যাপটি চালাতে চান যা App Check সাধারণত বৈধ হিসাবে শ্রেণীবদ্ধ করে না, যেমন ডেভেলপমেন্টের সময় একটি এমুলেটর, অথবা একটি ক্রমাগত ইন্টিগ্রেশন (CI) পরিবেশ থেকে, তাহলে আপনি আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে পারেন যা একটি প্রকৃত প্রত্যয়ন প্রদানকারীর পরিবর্তে App Check ডিবাগ প্রদানকারী ব্যবহার করে।
C++ দিয়ে ডিবাগ প্রদানকারীর সাথে App Check ব্যবহার করুন দেখুন।