अपने Firebase प्रोजेक्ट के लिए, सिर्फ़ पुष्टि किए गए उपयोगकर्ताओं के लिए उपलब्ध मोड लागू किया जा सकता है. लागू होने पर, Firebase AI Logic के ज़रिए किए गए सभी Gemini API अनुरोध, आपके ऐप्लिकेशन के पुष्टि किए गए उपयोगकर्ताओं से आने चाहिए. खास तौर पर, आपके ऐप्लिकेशन के असली उपयोगकर्ता की पुष्टि Firebase Authentication का इस्तेमाल करके की जानी चाहिए. ऐसा तब किया जाना चाहिए, जब वह आपके ऐप्लिकेशन से Firebase AI Logic को अनुरोध भेज रहा हो. अगर असली उपयोगकर्ता की पुष्टि नहीं की गई है, तो अनुरोध को ब्लॉक कर दिया जाता है.
किसी अनुरोध को ब्लॉक किए जाने पर, जवाब में 401: unauthenticated गड़बड़ी दिखेगी.
ज़रूरी बातें
प्रमाणीकरण किए गए उपयोगकर्ताओं के लिए उपलब्ध मोड के बारे में इन बातों का ध्यान रखें.
'सिर्फ़ पुष्टि किए गए उपयोगकर्ताओं के लिए उपलब्ध' मोड लागू होने पर
जब पुष्टि किए गए उपयोगकर्ताओं के लिए मोड लागू किया जाता है, तो इन बातों का ध्यान रखें:
यह सेटिंग, Firebase AI Logic के लिए पूरे प्रोजेक्ट पर लागू होने वाली सेटिंग है.
- यह प्रोजेक्ट में रजिस्टर किए गए सभी ऐप्लिकेशन पर लागू होता है.
- यह सिर्फ़ उस प्रोजेक्ट पर लागू होती है जहां इसे लागू किया गया है.
यह सेटिंग, Firebase AI Logic के ज़रिए किए गए उन सभी अनुरोधों को ब्लॉक करती है जो Firebase Authentication क्रेडेंशियल नहीं भेजते हैं.
- उपयोगकर्ता को Firebase Authentication के ज़रिए पुष्टि करनी होगी इससे पहले कि वह Firebase AI Logic को अनुरोध भेजे.
- यह सेटिंग, Firebase AI Logic के ज़रिए Gemini Developer API और Agent Platform Gemini API (formerly Vertex AI), दोनों को किए गए सभी अनुरोधों पर लागू होती है.
- यह सेटिंग, उन सभी अनुरोधों पर लागू होती है जिनमें सर्वर प्रॉम्प्ट टेंप्लेट का इस्तेमाल किया जाता है.
- इस सेटिंग को हर उपयोगकर्ता, हर एपीआई या हर टेंप्लेट के हिसाब से लागू नहीं किया जा सकता.
इस सेटिंग से, आपके प्रोजेक्ट में Gemini API के उन अनुरोधों को ब्लॉक नहीं किया जाता जो Firebase AI Logic के ज़रिए नहीं किए गए हैं.
अगर हाइब्रिड / उपयोगकर्ता के डिवाइस पर सुविधा का इस्तेमाल किया जा रहा है, तो:
- अगर उपयोगकर्ता की पुष्टि नहीं हुई है, तो यह सेटिंग क्लाउड पर होस्ट किए गए मॉडल के अनुरोधों को ब्लॉक करती है.
- यह सेटिंग, उपयोगकर्ता के डिवाइस पर मौजूद मॉडल के अनुरोधों को ब्लॉक नहीं करती. भले ही, उपयोगकर्ता की पुष्टि की गई हो या नहीं.
अगर Gemini Live API का इस्तेमाल किया जा रहा है, तो:
- इस सेटिंग से, Firebase AI Logic का इस्तेमाल करते समय वेब ऐप्लिकेशन के लिए, Gemini Live API के इस्तेमाल को ब्लॉक किया जाता है. भले ही, उपयोगकर्ता की पुष्टि हो चुकी हो. इसमें Firebase JS SDK या Flutter वेब ऐप्लिकेशन का इस्तेमाल करने वाले वेब ऐप्लिकेशन शामिल हैं.
अगर Firebase AI Logic REST API का इस्तेमाल किया जा रहा है, तो:
- यह सेटिंग, अनुमान लगाने के उन अनुरोधों को ब्लॉक करती है जो नहीं भेजते हैं
Firebase Authentication क्रेडेंशियल. इसमें सर्वर प्रॉम्प्ट टेंप्लेट के लिए किए गए अनुरोध शामिल हैं. जैसे,
templateGenerateContentयाtemplateStreamGenerateContent. - यह सेटिंग, कंट्रोल-प्लेन के अनुरोधों को ब्लॉक नहीं करती. जैसे, टेंप्लेट और कॉन्फ़िगरेशन मैनेज करने के अनुरोध. ऐसा इसलिए, क्योंकि इनकी सुरक्षा IAM करता है.
- यह सेटिंग, अनुमान लगाने के उन अनुरोधों को ब्लॉक करती है जो नहीं भेजते हैं
Firebase Authentication क्रेडेंशियल. इसमें सर्वर प्रॉम्प्ट टेंप्लेट के लिए किए गए अनुरोध शामिल हैं. जैसे,
यह सेटिंग,
countTokens(Count Tokens API) को किए गए अनुरोधों को ब्लॉक नहीं करती.
भरोसेमंद उपयोगकर्ताओं के लिए मोड लागू करने से पहले
पुष्टि किए गए उपयोगकर्ताओं के लिए मोड लागू करने से पहले, इन बातों का ध्यान रखें:
अगर आपके ऐप्लिकेशन के मौजूदा वर्शन में Firebase Authentication का इस्तेमाल नहीं किया जाता है, तो:
- इस सेटिंग से, ऐप्लिकेशन के उन मौजूदा वर्शन से Firebase AI Logic के ज़रिए किए गए अनुरोध ब्लॉक हो जाएंगे.
- पक्का करें कि पुष्टि किए गए उपयोगकर्ताओं के मोड को लागू करने से Firebase Authentication पहले, सभी चालू क्लाइंट को अपडेट कर दिया गया हो.
Flutter प्लगिन के पुराने वर्शन में, अनुरोधों के साथ Firebase Authentication क्रेडेंशियल भेजने के लिए, खास इंस्टैंटिएशन की ज़रूरत होती है.
- अगर आपका ऐप्लिकेशन, Flutter प्लगिन
firebase_aiv3.11.0 या इससे कम (BoM v4.12.0 या इससे कम) का इस्तेमाल करता है और इंस्टैंटिएशन के दौरान Authentication में पास नहीं होता है, तो यह सेटिंग Firebase AI Logic के ज़रिए किए गए अनुरोधों को ब्लॉक कर देगी. ऐसा पुष्टि किए गए उपयोगकर्ताओं के लिए भी होगा. - यह पक्का करें कि Flutter के सभी ऐक्टिव क्लाइंट को प्लगिन के नए वर्शन पर अपडेट कर दिया गया हो. ऐसा इससे पहले करें कि पुष्टि किए गए उपयोगकर्ताओं के मोड को लागू किया जाए.
- अगर आपका ऐप्लिकेशन, Flutter प्लगिन
Firebase Authentication सेट अप करें
Firebase Authentication दस्तावेज़ में, पुष्टि करने की सुविधा देने वाली कंपनियों के बारे में जानकारी दी गई है. साथ ही, पुष्टि करने की सुविधा लागू करने के निर्देश दिए गए हैं. इनमें पासवर्ड, फ़ोन नंबर, फ़ेडरेटेड आइडेंटिटी की सुविधा देने वाली लोकप्रिय कंपनियां (जैसे, Google, Facebook, और GitHub) वगैरह का इस्तेमाल करना शामिल है.
अपने ऐप्लिकेशन में Firebase Authentication लागू करने के बाद, आपका ऐप्लिकेशन हर अनुरोध में पुष्टि किए गए उपयोगकर्ता के लिए Firebase Authentication क्रेडेंशियल अपने-आप Firebase AI Logic को भेजेगा.
पुष्टि करने की सेवा देने वाली कुछ कंपनियों के बारे में यहां दी गई जानकारी ध्यान में रखें:
कस्टम ऑथराइज़ेशन: आपको हस्ताक्षर किया गया ऑथराइज़ेशन टोकन फ़ेच करना होगा, ताकि उसे Firebase AI Logic को भेजे जाने वाले अनुरोध के साथ भेजा जा सके. ज़्यादा जानकारी के लिए, कस्टम पुष्टि करने की सुविधा देखें.
पहचान छिपाकर या ईमेल/पासवर्ड से पुष्टि करने के तरीके: इन उपयोगकर्ताओं को पुष्टि किए गए उपयोगकर्ता माना जाता है. इसलिए, Firebase AI Logic के लिए उनके अनुरोध ब्लॉक नहीं किए जाते.
ध्यान दें कि भले ही, पहचान छिपाकर और ईमेल/पासवर्ड से पुष्टि करने के तरीकों में, उपयोगकर्ताओं को Firebase Authenticationक्रेडेंशियल बनाने के लिए आपके ऐप्लिकेशन पर जाना पड़ता है, लेकिन ये पुष्टि करने के भरोसेमंद तरीके नहीं हैं. खास तौर पर, पैसे चुकाकर इस्तेमाल की जाने वाली किसी सुविधा को सुरक्षित रखने के लिए. ऐसा इसलिए, क्योंकि इनमें डिफ़ॉल्ट रूप से उपयोगकर्ता की पहचान की पुष्टि करने की ज़रूरत नहीं होती. अगर आपका ऐप्लिकेशन, पुष्टि करने के इन तरीकों के डिफ़ॉल्ट तरीके का इस्तेमाल करता है, तो पुष्टि किए गए उपयोगकर्ताओं के मोड को लागू करने पर भी, सुरक्षा कम हो सकती है. पक्का करें कि आपने Firebase App Check को भी लागू किया हो.
सत्यापित उपयोगकर्ताओं के लिए उपलब्ध मोड की सेटिंग मैनेज करना
Firebase कंसोल में, पुष्टि किए गए उपयोगकर्ताओं के मोड के लिए सेटिंग मैनेज की जाती है.
IAM से जुड़ी ज़रूरी अनुमतियां और भूमिकाएं
'सिर्फ़ पुष्टि किए गए उपयोगकर्ताओं के लिए उपलब्ध' मोड की सेटिंग मैनेज करने के लिए, firebasevertexai.configs.update अनुमति की ज़रूरत होती है. यह अनुमति, IAM की इन भूमिकाओं में डिफ़ॉल्ट रूप से शामिल होती है: मालिक, एडिटर, Firebase एडमिन, और Firebase AI Logic एडमिन.
पुष्टि किए गए उपयोगकर्ताओं के लिए मोड लागू करना
अपने Firebase प्रोजेक्ट के लिए, पुष्टि किए गए उपयोगकर्ताओं के मोड को लागू करने का तरीका यहां बताया गया है:
अगर आपने अब तक ऐसा नहीं किया है, तो इस गाइड में पहले बताए गए, पुष्टि किए गए उपयोगकर्ताओं के मोड के लिए ध्यान रखने वाली ज़रूरी बातें पढ़ें.
अगर आपने अब तक अपने ऐप्लिकेशन में Firebase Authentication सेट अप नहीं किया है, तो उसे सेट अप करें. इसके बारे में इस गाइड में पहले बताया गया है.
पुष्टि किए गए उपयोगकर्ताओं के लिए, टिप्पणी करने की सुविधा लागू करें:
Firebase console में, एआई सेवाएं > एआई लॉजिक > सेटिंग टैब पर जाएं.
पुष्टि किए गए उपयोगकर्ताओं का मोड में जाकर, पुष्टि किए गए उपयोगकर्ताओं का मोड लागू करें के लिए टॉगल को लागू किया गया पर स्लाइड करें.
पुष्टि करने वाले डायलॉग बॉक्स को देखें. इसके बाद, पुष्टि करें पर क्लिक करें.
पुष्टि किए गए उपयोगकर्ताओं के मोड को लागू करना बंद करें
अगर आपने पुष्टि किए गए उपयोगकर्ताओं के लिए उपलब्ध मोड को लागू करना बंद कर दिया है, तो इन बातों का ध्यान रखें:
- Firebase AI Logic के ज़रिए किए गए ऐसे अनुरोधों को अनुमति दी जाएगी जिनमें Firebase Authentication क्रेडेंशियल नहीं भेजे जाते हैं.
- यह Firebase AI Logic के लिए, पूरे प्रोजेक्ट की सेटिंग है.
यहां बताया गया है कि अपने Firebase प्रोजेक्ट के लिए, पुष्टि किए गए उपयोगकर्ताओं के मोड को लागू होने से कैसे रोका जाए:
Firebase console में, एआई सेवाएं > एआई लॉजिक > सेटिंग टैब पर जाएं.
पुष्टि किए गए उपयोगकर्ताओं के लिए उपलब्ध मोड में जाकर, पुष्टि किए गए उपयोगकर्ताओं के लिए उपलब्ध मोड लागू करें को बंद करें.
पुष्टि करने वाले डायलॉग बॉक्स को देखें. इसके बाद, पुष्टि करें पर क्लिक करें.