वेब ऐप्लिकेशन में reCAPTCHA v3 की मदद से ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करना शुरू करें

इस पेज पर, वेब ऐप्लिकेशन में App Check को चालू करने का तरीका बताया गया है. इसके लिए, reCAPTCHA वर्शन 3 के बिल्ट-इन प्रोवाइडर का इस्तेमाल किया जाता है. App Check चालू करने पर, यह पक्का करने में मदद मिलती है कि सिर्फ़ आपका ऐप्लिकेशन, आपके प्रोजेक्ट के Firebase संसाधनों को ऐक्सेस कर सके. इस सुविधा के बारे में खास जानकारी देखें.

ध्यान दें कि reCAPTCHA v3, उपयोगकर्ताओं को नहीं दिखता. reCAPTCHA v3 की सेवा देने वाली कंपनी, उपयोगकर्ताओं को किसी भी समय कोई चैलेंज हल करने के लिए नहीं कहेगी. reCAPTCHA v3 से जुड़ा दस्तावेज़ देखें.

अगर आपको अपनी पसंद के मुताबिक सेवा देने वाली कंपनी के साथ App Check का इस्तेमाल करना है, तो अपनी पसंद के मुताबिक सेवा देने वाली कंपनी के साथ App Check को लागू करना लेख पढ़ें.

1. अपना Firebase प्रोजेक्ट सेट अप करना

  1. अगर आपने पहले से ही अपने JavaScript प्रोजेक्ट में Firebase नहीं जोड़ा है, तो ऐसा करें.

  2. reCAPTCHA वर्शन 3 के लिए अपनी साइट रजिस्टर करें और reCAPTCHA वर्शन 3 की साइट कुंजी और सीक्रेट कुंजी पाएं.

  3. Firebase कंसोल के App Check सेक्शन में जाकर, reCAPTCHA की सेवा देने वाली कंपनी के साथ App Check का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन रजिस्टर करें. आपको पिछले चरण में मिली सीक्रेट कुंजी देनी होगी.

    आम तौर पर, आपको अपने प्रोजेक्ट के सभी ऐप्लिकेशन रजिस्टर करने होते हैं. ऐसा इसलिए, क्योंकि किसी Firebase प्रॉडक्ट के लिए एनफ़ोर्समेंट चालू करने के बाद, सिर्फ़ रजिस्टर किए गए ऐप्लिकेशन ही प्रॉडक्ट के बैकएंड संसाधनों को ऐक्सेस कर पाएंगे.

  4. ज़रूरी नहीं: ऐप्लिकेशन रजिस्ट्रेशन की सेटिंग में, सेवा देने वाली कंपनी की ओर से जारी किए गए App Check टोकन के लिए, टाइम-टू-लाइव (टीटीएल) को अपनी पसंद के मुताबिक सेट करें. टीटीएल को 30 मिनट से लेकर सात दिनों के बीच की किसी भी वैल्यू पर सेट किया जा सकता है. इस वैल्यू को बदलते समय, इन बातों का ध्यान रखें:

    • सुरक्षा: टीटीएल कम होने पर, सुरक्षा बेहतर होती है. ऐसा इसलिए, क्योंकि इससे उस समयावधि में कमी आती है जब हमलावर, लीक हुए या इंटरसेप्ट किए गए टोकन का गलत इस्तेमाल कर सकता है.
    • परफ़ॉर्मेंस: टीटीएल कम होने का मतलब है कि आपका ऐप्लिकेशन, पुष्टि करने की प्रोसेस को ज़्यादा बार करेगा. ऐप्लिकेशन की पुष्टि करने की प्रोसेस में, नेटवर्क अनुरोधों में हर बार कुछ समय लगता है. इसलिए, टीटीएल कम होने से आपके ऐप्लिकेशन की परफ़ॉर्मेंस पर असर पड़ सकता है.
    • कोटा और लागत: टीटीएल कम होने और बार-बार पुष्टि करने से, आपका कोटा तेज़ी से खत्म हो जाता है. साथ ही, पैसे चुकाकर ली जाने वाली सेवाओं के लिए, आपको ज़्यादा शुल्क देना पड़ सकता है. कोटा और सीमाएं देखें.

    ज़्यादातर ऐप्लिकेशन के लिए, डिफ़ॉल्ट टीटीएल एक दिन का होता है. ध्यान दें कि App Check लाइब्रेरी, टीटीएल की अवधि के आधे समय में टोकन रीफ़्रेश करती है.

बेहतर सेटिंग कॉन्फ़िगर करना (ज़रूरी नहीं)

जब कोई व्यक्ति आपके वेब ऐप्लिकेशन पर जाता है, तब reCAPTCHA वर्शन 3 यह आकलन करता है कि उपयोगकर्ता के इंटरैक्शन से कितना जोखिम है. इसके बाद, यह 0.0 से 1.0 के बीच का स्कोर दिखाता है. 1.0 का मतलब है कि इंटरैक्शन के असली उपयोगकर्ता से होने की संभावना बहुत ज़्यादा है. वहीं, 0.0 का मतलब है कि इंटरैक्शन के बॉट से होने की संभावना बहुत ज़्यादा है. App Check की मदद से, ऐप्लिकेशन के जोखिम का थ्रेशोल्ड कॉन्फ़िगर किया जा सकता है. इससे, इस जोखिम को लेकर अपनी ज़रूरत के हिसाब से थ्रेशोल्ड तय किया जा सकता है.

ज़्यादातर इस्तेमाल के मामलों के लिए, थ्रेशोल्ड की डिफ़ॉल्ट वैल्यू 0.5 इस्तेमाल करने का सुझाव दिया जाता है. अगर आपको इस्तेमाल के तरीके में बदलाव करना है, तो इसे Firebase console के App Check सेक्शन में जाकर, अपने हर वेब ऐप्लिकेशन के लिए कॉन्फ़िगर किया जा सकता है.

विवरण

App Check आपके कॉन्फ़िगर किए गए ऐप्लिकेशन के जोखिम थ्रेशोल्ड का इस्तेमाल, reCAPTCHA v3 के उस कम से कम स्कोर के तौर पर करता है जो किसी उपयोगकर्ता के इंटरैक्शन को सही ठहराने के लिए ज़रूरी होता है. आपके कॉन्फ़िगर किए गए ऐप्लिकेशन के जोखिम थ्रेशोल्ड से कम स्कोर वाले सभी reCAPTCHA v3 स्कोर अस्वीकार कर दिए जाएंगे. ऐप्लिकेशन के जोखिम के थ्रेशोल्ड में बदलाव करते समय, इन बातों का ध्यान रखें:

  • अपने वेब ऐप्लिकेशन के लिए, reCAPTCHA वर्शन 3 के स्कोर के डिस्ट्रिब्यूशन पर नज़र रखने के लिए, reCAPTCHA Admin console पर जाएं. इसके बाद, अपने वेब ऐप्लिकेशन से जुड़ी साइट चुनें.
  • अगर आपको ऐप्लिकेशन से जुड़े जोखिम को कम करना है, तो ऐप्लिकेशन से जुड़े जोखिम के थ्रेशोल्ड को बढ़ाने के लिए, स्लाइडर को बाईं ओर ले जाएं.

    • हम 1.0 वैल्यू का सुझाव नहीं देते, क्योंकि इस सेटिंग की वजह से, भरोसेमंद उपयोगकर्ताओं को भी ऐक्सेस से रोका जा सकता है. ऐसा तब होता है, जब वे भरोसेमंद होने की इस थ्रेशोल्ड को पूरा नहीं करते.
  • अगर आपके ऐप्लिकेशन में जोखिम लेने की क्षमता ज़्यादा है, तो ऐप्लिकेशन के जोखिम थ्रेशोल्ड को कम करने के लिए, स्लाइडर को दाईं ओर ले जाएं.

    • 0.0 वैल्यू का इस्तेमाल करने का सुझाव नहीं दिया जाता, क्योंकि इस सेटिंग से गलत इस्तेमाल से सुरक्षा पाने की सुविधा बंद हो जाती है.

ज़्यादा जानकारी के लिए, reCAPTCHA v3 का दस्तावेज़ देखें.

2. अपने ऐप्लिकेशन में App Check लाइब्रेरी जोड़ना

अगर आपने पहले से ऐसा नहीं किया है, तो अपने वेब ऐप्लिकेशन में Firebase जोड़ें. App Check लाइब्रेरी को इंपोर्ट करना न भूलें.

3. 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 लाइब्रेरी इंस्टॉल करने के बाद, इसे डिप्लॉय करें.

अपडेट किया गया क्लाइंट ऐप्लिकेशन, Firebase को किए जाने वाले हर अनुरोध के साथ App Check टोकन भेजेगा. हालांकि, Firebase के प्रॉडक्ट को टोकन की पुष्टि करने की ज़रूरत तब तक नहीं होगी, जब तक कि Firebase कंसोल के App Check सेक्शन में जाकर, पुष्टि करने की सुविधा चालू नहीं की जाती.

मेट्रिक मॉनिटर करना और उल्लंघन ठीक करने के तरीके लागू करना

हालांकि, नीति उल्लंघन ठीक करने के लिए कार्रवाई करने की सुविधा चालू करने से पहले, आपको यह पक्का करना होगा कि इससे आपके मौजूदा असली उपयोगकर्ताओं को कोई परेशानी न हो. दूसरी ओर, अगर आपको अपने ऐप्लिकेशन के संसाधनों का संदिग्ध इस्तेमाल दिख रहा है, तो आपको नीति उल्लंघन ठीक करने के लिए, जल्द से जल्द कार्रवाई शुरू करनी चाहिए.

यह फ़ैसला लेने के लिए, इस्तेमाल की जा रही सेवाओं की App Check मेट्रिक देखें:

App Check लागू करने की सुविधा चालू करना

जब आपको यह समझ आ जाए कि App Check से आपके उपयोगकर्ताओं पर क्या असर पड़ेगा और आप आगे बढ़ने के लिए तैयार हों, तब App Check को लागू करने की सुविधा चालू की जा सकती है:

डीबग एनवायरमेंट में App Check का इस्तेमाल करना

अगर आपने अपने ऐप्लिकेशन को App Check के लिए रजिस्टर कर लिया है और आपको अपने ऐप्लिकेशन को ऐसे एनवायरमेंट में चलाना है जिसे App Check आम तौर पर मान्य नहीं मानता है, तो आपके पास अपने ऐप्लिकेशन का डीबग बिल्ड बनाने का विकल्प होता है. जैसे, डेवलपमेंट के दौरान स्थानीय तौर पर या कंटीन्यूअस इंटिग्रेशन (सीआई) एनवायरमेंट से. यह बिल्ड, पुष्टि करने वाले असली प्रोवाइडर के बजाय App Check डीबग प्रोवाइडर का इस्तेमाल करता है.

वेब ऐप्लिकेशन में, डीबग प्रोवाइडर के साथ App Check का इस्तेमाल करना लेख पढ़ें.