Google अश्वेत समुदायों के लिए नस्लीय इक्विटी को आगे बढ़ाने के लिए प्रतिबद्ध है। देखो कैसे।
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

अपने फायरबेस एमएल एंड्रॉइड ऐप के क्लाउड क्रेडेंशियल्स को सुरक्षित रखें

यदि आपका एंड्रॉइड ऐप फायरबेस एमएल के क्लाउड एपीआई में से एक का उपयोग करता है, तो उत्पादन में अपना ऐप लॉन्च करने से पहले, आपको अनधिकृत एपीआई एक्सेस को रोकने के लिए कुछ अतिरिक्त कदम उठाने चाहिए।

अपने उत्पादन एप्लिकेशन के लिए, आप यह सुनिश्चित करेंगे कि केवल प्रमाणित ग्राहक ही क्लाउड सेवाओं तक पहुँच प्राप्त कर सकते हैं। (ध्यान दें कि केवल गैर-रूट किए गए उपकरण वर्णित विधि का उपयोग करके प्रमाणित कर सकते हैं।)

फिर, आप एक डीबग-केवल API कुंजी बनाएंगे जिसका उपयोग आप परीक्षण और विकास के दौरान सुविधा के लिए कर सकते हैं।

1. Firebase के साथ अपने प्रोडक्शन ऐप्स को रजिस्टर करें

सबसे पहले, अपने उत्पादन एप्लिकेशन को फायरबेस के साथ पंजीकृत करें।

इसका सबसे तेज़ तरीका है कि आप अपने फायरबेस प्रोजेक्ट को अपने Google Play प्रोजेक्ट से लिंक करें। आप फायरबेस कंसोल में अपनी परियोजना सेटिंग्स के एकीकरण अनुभाग से ऐसा कर सकते हैं।

जब आप अपनी परियोजनाओं को लिंक करते हैं, तो आपके प्रोडक्शन एप्स SHA-1 के हस्ताक्षर आपके फायरबेस प्रोजेक्ट में आयात किए जाते हैं, जिसे आप सेटिंग पृष्ठ पर पुष्टि कर सकते हैं। ध्यान दें कि आपके Firebase और Google Play प्रोजेक्ट्स को लिंक करना भी Google Play डेटा बनाता है, जिसमें क्रैश और राजस्व आँकड़े, फायरबेस के लिए सुलभ, और फ़ायरबेज़ डेटा, जिसमें एनालिटिक्स शामिल हैं, Google Play तक पहुँच योग्य हैं।

वैकल्पिक रूप से, यदि आप अपने फायरबेस और Google Play परियोजनाओं के बीच डेटा साझा नहीं करना चाहते हैं, तो आप सेटिंग पृष्ठ पर अपने ऐप्स के SHA-1 हस्ताक्षर स्वयं निर्दिष्ट कर सकते हैं। अपने ऐप्स का SHA-1 हस्ताक्षर कैसे प्राप्त करें, यह जानने के लिए अपने क्लाइंट को प्रमाणित करें देखें।

2. अपने एपीआई कुंजी के दायरे को सीमित करें

इसके बाद, क्लाउड विजन API तक पहुंच को रोकने के लिए अपनी मौजूदा API कुंजियों को कॉन्फ़िगर करें:

  1. क्लाउड कंसोल का क्रेडेंशियल पेज खोलें।

  2. सूची में प्रत्येक एपीआई कुंजी के लिए, संपादन दृश्य खोलें, और कुंजी प्रतिबंध अनुभाग में, सूची में क्लाउड विजन एपीआई को छोड़कर सभी उपलब्ध एपीआई जोड़ें।

3. डीबग-केवल API कुंजी बनाएँ और उपयोग करें

अंत में, केवल विकास के लिए उपयोग की जाने वाली एक नई एपीआई कुंजी बनाएं। फायरबेस एमएल इस एपीआई कुंजी का उपयोग उन वातावरण में क्लाउड सेवाओं तक पहुंचने के लिए कर सकता है जहां ऐप प्रमाणीकरण संभव नहीं है, जैसे एमुलेटर पर चलने पर।

  1. विकास के लिए उपयोग की जाने वाली नई API कुंजी बनाएं:

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

    1. यदि आपके पास पहले से डिबग मैनिफ़ेस्ट नहीं है, तो फ़ाइल> नया> अन्य> Android मैनिफ़ेस्ट फ़ाइल पर क्लिक करके और लक्ष्य स्रोत सेट से debug चयन करके बनाएं।

    2. डिबग मेनिफ़ेस्ट में, निम्न घोषणा जोड़ें:

      <application>
      <meta-data
          android:name="com.firebase.ml.cloud.ApiKeyForDebug"
          android:value=" your-debug-api-key " />
      </application>
      
  3. अपने ऐप में, उत्पादन में अपने ग्राहक को प्रमाणित करने के लिए प्रमाणपत्र एपीआई फिंगरप्रिंट का उपयोग करने के लिए फायरबस एमएल को कॉन्फ़िगर करें और एपीआई कुंजियों का उपयोग करने के लिए- डीबग की-केवल डीबग बिल्ड में:

    जावा

    FirebaseVisionCloudImageLabelerOptions.Builder optionsBuilder =
            new FirebaseVisionCloudImageLabelerOptions.Builder();
    if (!BuildConfig.DEBUG) {
        // Requires physical, non-rooted device:
        optionsBuilder.enforceCertFingerprintMatch();
    }
    
    // Set other options. For example:
    optionsBuilder.setConfidenceThreshold(0.8f);
    // ...
    
    // And lastly:
    FirebaseVisionCloudImageLabelerOptions options = optionsBuilder.build();
    FirebaseVision.getInstance().getCloudImageLabeler(options).processImage(myImage);

    Kotlin + KTX

    val optionsBuilder = FirebaseVisionCloudImageLabelerOptions.Builder()
    if (!BuildConfig.DEBUG) {
        // Requires physical, non-rooted device:
        optionsBuilder.enforceCertFingerprintMatch()
    }
    
    // Set other options. For example:
    optionsBuilder.setConfidenceThreshold(0.8f)
    // ...
    
    // And lastly:
    val options = optionsBuilder.build()
    FirebaseVision.getInstance().getCloudImageLabeler(options).processImage(myImage)

अगला कदम

अन्य फायरबेस सुविधाओं का उपयोग करते समय लॉन्च करने के लिए अपने ऐप को तैयार करने की जानकारी के लिए लॉन्च चेकलिस्ट देखें।