इस पेज पर, अपने पसंदीदा App Check प्रोवाइडर का इस्तेमाल करके, C++ ऐप्लिकेशन में App Check को चालू करने का तरीका बताया गया है. App Check को चालू करने पर, यह पक्का करने में मदद मिलती है कि प्रोजेक्ट के Firebase संसाधनों को सिर्फ़ आपका ऐप्लिकेशन ऐक्सेस कर सकता है.
अगर आपको डिफ़ॉल्ट प्रोवाइडर के साथ App Check का इस्तेमाल करना है, तो C++ के साथ डिफ़ॉल्ट प्रोवाइडर के साथ App Check चालू करना लेख पढ़ें.
शुरू करने से पहले
अगर आपने पहले से ही अपने C++ प्रोजेक्ट में Firebase को जोड़ दिया है, तो आपको कुछ नहीं करना.
अपने कस्टम App Check प्रोवाइडर का सर्वर-साइड लॉजिक लागू करें.
1. अपने ऐप्लिकेशन में App Check लाइब्रेरी जोड़ना
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);
}
}
3. App Check शुरू करना
अपने ऐप्लिकेशन में यह शुरू करने वाला कोड जोड़ें, ताकि यह आपके किसी भी दूसरे Firebase SDK टूल का इस्तेमाल करने से पहले चले:
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
YourCustomAppCheckProviderFactory::GetInstance());
अगले चरण
आपके ऐप्लिकेशन में App Check लाइब्रेरी इंस्टॉल हो जाने के बाद, लोगों को अपडेट किया गया ऐप्लिकेशन उपलब्ध कराना शुरू करें.
अपडेट किया गया क्लाइंट ऐप्लिकेशन, Firebase को किए जाने वाले हर अनुरोध के साथ App Check टोकन भेजना शुरू कर देगा. हालांकि, Firebase के प्रॉडक्ट के लिए टोकन तब तक मान्य नहीं होंगे, जब तक Firebase कंसोल के App Check सेक्शन में नीति उल्लंघन ठीक करने की सुविधा चालू नहीं की जाती.
मेट्रिक की निगरानी करें और नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) को चालू करें
हालांकि, नीति उल्लंघन ठीक करने की सुविधा चालू करने से पहले, आपको यह पक्का करना होगा कि इससे आपके मौजूदा मान्य उपयोगकर्ताओं को कोई परेशानी न हो. दूसरी ओर, अगर आपको अपने ऐप्लिकेशन के संसाधनों का संदिग्ध इस्तेमाल दिख रहा है, तो हो सकता है कि आप जल्द से जल्द नीति उल्लंघन ठीक करने की सुविधा चालू करना चाहें.
यह फ़ैसला लेने में मदद पाने के लिए, इस्तेमाल की जा रही सेवाओं के लिए App Check मेट्रिक देखी जा सकती हैं:
- Realtime Database, Cloud Firestore, Cloud Storage, Authentication (बीटा वर्शन), और Vertex AI in Firebase के लिए, App Check अनुरोध मेट्रिक को मॉनिटर करें.
- Cloud Functions के लिए, App Check अनुरोध मेट्रिक पर नज़र रखें.
App Check एनफ़ोर्समेंट चालू करना
जब आपको यह समझ आ जाता है कि App Check का आपके उपयोगकर्ताओं पर क्या असर पड़ेगा और आप आगे बढ़ने के लिए तैयार हैं, तो App Check के लिए नीति उल्लंघन ठीक करने का तरीका (एनफ़ोर्समेंट) चालू करें:
- Realtime Database, Cloud Firestore, Cloud Storage, Authentication (बीटा वर्शन), और Vertex AI in Firebase के लिए, App Check लागू करने की सुविधा चालू करें.
- Cloud Functions के लिए, App Check को लागू करने की सुविधा चालू करें.
डीबग एनवायरमेंट में App Check का इस्तेमाल करना
App Check के लिए अपना ऐप्लिकेशन रजिस्टर करने के बाद, अगर आपको ऐप्लिकेशन को ऐसे तरीके से चलाना है जिसे आम तौर पर, App Check मान्य के तौर पर अलग-अलग कैटगरी में न चलाता हो. जैसे, डेवलपमेंट के दौरान एम्युलेटर या लगातार इंटिग्रेशन (सीआई) एनवायरमेंट से, तो अपने ऐप्लिकेशन का डीबग बिल्ड बनाया जा सकता है. यह वर्शन, प्रमाणित करने की सुविधा देने वाली कंपनी के बजाय App Check डीबग सेवा का इस्तेमाल करता है.
C++ के साथ डीबग प्रोवाइडर के साथ App Check का इस्तेमाल करना देखें.