सेटअप

इस पेज पर, Play Integrity API का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन, गेम या एसडीके को सेट अप करने का तरीका बताया गया है. एपीआई को इंटिग्रेट करने के लिए, आपके पास Google Cloud प्रोजेक्ट होना चाहिए. अनुरोध करना शुरू करने के लिए, यह ज़रूरी है. इसके बाद, Google Play Console (ऐप्लिकेशन के लिए) या Google Play SDK Console (एसडीके के लिए) में जाकर, अपने Google Cloud प्रोजेक्ट को लिंक किया जा सकता है. कॉन्फ़िगरेशन के अन्य विकल्प, टेस्टिंग की सुविधाएं, और एपीआई रिपोर्टिंग ऐक्सेस करने के लिए, आपको अपना प्रोजेक्ट लिंक करना होगा. साथ ही, हर दिन के अनुरोधों का कोटा बढ़ाने का अनुरोध करने के लिए भी ऐसा करना ज़रूरी है.

Play Integrity API को चालू करना

Play Integrity API को कॉल करने वाले हर ऐप्लिकेशन या एसडीके टूल के पास, Google Cloud प्रोजेक्ट होना चाहिए. इससे एपीआई का इस्तेमाल किया जा सकेगा और उसके इस्तेमाल पर नज़र रखी जा सकेगी. सभी इंटिग्रेशन के लिए, यह पहला चरण पूरा करना ज़रूरी है. Google Cloud Console में जाकर, Play Integrity API को चालू किया जा सकता है. इसके अलावा, सीधे तौर पर अपने क्लाउड प्रोजेक्ट को Google Play से लिंक किया जा सकता है. ऐसा करने पर, Play Integrity API आपके लिए चालू हो जाएगा.

Google Cloud Console में, नया क्लाउड प्रोजेक्ट बनाएं या कोई ऐसा मौजूदा क्लाउड प्रोजेक्ट चुनें जिसे आपको Play Integrity API के साथ इस्तेमाल करना है.

  1. एपीआई और सेवाएं पर जाएं.
  2. एपीआई और सेवाएं चालू करें को चुनें.
  3. Play Integrity API खोजें.
  4. चालू करें पर क्लिक करें.

अब अपने ऐप्लिकेशन में Play Integrity API को इंटिग्रेट किया जा सकता है. ऐडवांस सुविधाओं को ऐक्सेस करने और कोटा बढ़ाने के लिए, आपको लिंक करने की प्रोसेस पूरी करनी होगी.

Google Play से लिंक करना (सुझाया गया)

इन निर्देशों का पालन करके, अपने Google Cloud प्रोजेक्ट को अपने ऐप्लिकेशन या एसडीके से लिंक किया जा सकता है.

Google Play पर मौजूद ऐप्लिकेशन और गेम के लिए

Google Play पर उपलब्ध ऐप्लिकेशन को Google Play Console में अपने Google Cloud प्रोजेक्ट को लिंक करना चाहिए. इससे, अतिरिक्त सुविधाएं चालू की जा सकती हैं और एपीआई के लिए हर दिन के कोटा को बढ़ाने का अनुरोध किया जा सकता है.

  1. Google Play Console खोलें और अपना ऐप्लिकेशन चुनें.
  2. Google Play की सुरक्षा सुविधाएं पर जाएं.
  3. Play Integrity API के बगल में, शुरू करें बटन को चुनें. इसके बाद, Play Integrity API की सेटिंग पर जाएं.
  4. क्लाउड प्रोजेक्ट लिंक करें बटन पर क्लिक करें.
  5. वह Google Cloud प्रोजेक्ट चुनें जिसे आपको Play Integrity API के साथ इस्तेमाल करना है. अगर प्रोजेक्ट के लिए Play Integrity API पहले से चालू नहीं है, तो लिंक करने पर यह अपने-आप चालू हो जाएगा.

Play SDK Console पर एसडीके बनाने वाली कंपनियों के लिए

Google Play SDK Console का इस्तेमाल करने वाली एसडीके बनाने वाली कंपनियां, अपने Google Cloud प्रोजेक्ट को लिंक कर सकती हैं. इससे एपीआई के इस्तेमाल की जानकारी को एसडीके का इस्तेमाल करने वाले अलग-अलग ऐप्लिकेशन की जगह सीधे एसडीके में जोड़ा जाएगा. साथ ही, अतिरिक्त सुविधाएं चालू की जा सकेंगी और हर दिन के लिए एपीआई कोटा बढ़ाने का अनुरोध किया जा सकेगा. ध्यान दें कि Google Play SDK Console का ऐक्सेस पाने के लिए, ज़रूरी शर्तें पूरी करनी होंगी.

  1. Google Play SDK Console खोलें और अपना एसडीके चुनें.
  2. एसडीके टूल इंटेग्रिटी पर जाएं
  3. Play Integrity API में जाकर, Cloud प्रोजेक्ट लिंक करें पर क्लिक करें.
  4. वह Google Cloud प्रोजेक्ट चुनें जिसे आपको Play Integrity API के साथ इस्तेमाल करना है. अगर प्रोजेक्ट के लिए Play Integrity API पहले से चालू नहीं है, तो लिंक करने पर यह अपने-आप चालू हो जाएगा.

Play Integrity API के इस्तेमाल की सीमाओं के बारे में जानकारी

आपके ऐप्लिकेशन या SDK टूल के लिए, हर दिन ज़्यादा से ज़्यादा 10,000 अनुरोध किए जा सकते हैं. यह सीमा, उससे जुड़े क्लाउड प्रोजेक्ट नंबर से जुड़ी होती है. अगर आपको लगता है कि आपके अनुरोधों की संख्या ज़्यादा होगी, तो कोटा बढ़ाने का अनुरोध किया जा सकता है.

कार्रवाई हर दिन का कोटा नोट
टोकन के लिए अनुरोध 10,000 क्लासिक अनुरोधों और स्टैंडर्ड टोकन की तैयारी में लगने वाले अनुरोधों को मिलाकर गिना जाता है
Google के सर्वर पर टोकन डिक्रिप्ट करना 10,000 क्लासिक और स्टैंडर्ड अनुरोधों को मिलाकर गिना जाता है

हर दिन किए जाने वाले अनुरोधों की संख्या को ज़्यादा से ज़्यादा बढ़ाना

कोटा बढ़ाने के लिए, ज़रूरी शर्तें पूरी करनी होंगी. कोटा बढ़ाने की सुविधा, क्लाइंट-साइड पर टोकन जनरेट करने और सर्वर-साइड पर डिक्रिप्शन कॉल, दोनों पर लागू होती है. अनुरोधों को प्रोसेस होने में एक हफ़्ता लग सकता है. हमारा सुझाव है कि आप Google Cloud Console में, Play Integrity API के इस्तेमाल पर नज़र रखें. साथ ही, कोटे से जुड़ी सूचनाएं सेट करें, ताकि आपकी सेवा में कोई रुकावट न आए.

ज़्यादा कोटा होने के बावजूद, क्लासिक अनुरोधों को कभी-कभी होने वाली और अहम कार्रवाइयों तक ही सीमित रखें. इससे उपयोगकर्ता की बैटरी और डेटा खर्च को कम किया जा सकता है.

Google Play पर मौजूद ऐप्लिकेशन और गेम के लिए

कोटा बढ़ाने के लिए, यह ज़रूरी है कि आपका ऐप्लिकेशन किसी अन्य डिस्ट्रिब्यूशन चैनल के साथ-साथ, Google Play पर भी उपलब्ध हो. आपको Play Console में जाकर, अपने Google Cloud प्रोजेक्ट को अपने ऐप्लिकेशन से लिंक करना होगा. अनलिंक किए गए प्रोजेक्ट से कोटा के लिए किए गए अनुरोध अस्वीकार कर दिए जाएंगे.

सीमा बढ़ाने का अनुरोध करने के लिए:

  1. Play Console में, Google Cloud के उस प्रोजेक्ट को लिंक करें जो आपके ऐप्लिकेशन से जुड़ा है.
  2. पुष्टि करें कि आपने एपीआई लॉजिक को सही तरीके से लागू किया है. इसमें बार-बार की जाने वाली कोशिशों के लिए सुझाई गई रणनीतियां भी शामिल हैं.
  3. कोटा के अनुरोध वाला फ़ॉर्म सबमिट करें.

Play SDK Console पर एसडीके बनाने वाली कंपनियों के लिए

कोटा बढ़ाने के लिए, आपको Google Play SDK Console में अपने एसडीके पर दावा करना होगा. साथ ही, आपको अपने क्लाउड प्रोजेक्ट को एसडीके से लिंक करना होगा. Google Play SDK Console का ऐक्सेस पाने के लिए, ज़रूरी शर्तें पूरी करनी होंगी.

सीमा बढ़ाने का अनुरोध करने के लिए:

  1. Google Play SDK Console में अपना Google Cloud प्रोजेक्ट लिंक करें.
  2. डेवलपर सहायता फ़ॉर्म भरें.

खुले तौर पर टिप्पणी करने वाले सेक्शन में, अपने एसडीके टूल की जानकारी दें. साथ ही, अपने इस्तेमाल के उदाहरण, एपीआई अनुरोधों के टाइप (स्टैंडर्ड, क्लासिक या दोनों), अनुरोध करने की फ़्रीक्वेंसी, और हर दिन किए जाने वाले अनुरोधों की संख्या के बारे में बताएं.

अपने ऐप्लिकेशन में Play Integrity API को इंटिग्रेट करना

अपने ऐप्लिकेशन या एसडीके टूल में Play Integrity API को इंटिग्रेट करने के लिए, अपने डेवलपमेंट एनवायरमेंट के हिसाब से कोई एक काम करें:

Kotlin या Java

Play Integrity API के लिए सबसे नई Android लाइब्रेरी, Google की मेवन रिपॉज़िटरीपर उपलब्ध है. अपने ऐप्लिकेशन की build.gradle फ़ाइल में, यह डिपेंडेंसी जोड़ें:

implementation 'com.google.android.play:integrity:1.6.0'

Unity

यहां दिए गए सेक्शन में, Unity प्रोजेक्ट के लिए Google Play Integrity API को इंटिग्रेट और सेट अप करने का तरीका बताया गया है. इसमें Unity के काम करने वाले वर्शन, इंस्टॉल करने के तरीके, और एनवायरमेंट सेटअप के बारे में जानकारी दी गई है.

Unity के साथ काम करने वाले वर्शन

  • 2019.x, 2020.x, और उसके बाद के सभी वर्शन काम करते हैं.
  • Unity 2018.x का इस्तेमाल करने वाले लोग, 2018.4 या इसके बाद का वर्शन इंस्टॉल करें.
  • Unity 2017.x और इससे पहले के वर्शन, काम नहीं करते.

अपना डेवलपमेंट एनवायरमेंट सेट अप करना

OpenUPM-CLI

अगर आपके पास OpenUPM CLI इंस्टॉल है, तो इस कमांड का इस्तेमाल करके OpenUPM रजिस्ट्री इंस्टॉल की जा सकती है:

openupm add com.google.play.integrity

OpenUPM

  1. पैकेज मैनेजर की सेटिंग खोलने के लिए, Unity मेन्यू का विकल्प चुनें बदलाव करें > प्रोजेक्ट सेटिंग > पैकेज मैनेजर.

  2. पैकेज मैनेजर विंडो में, OpenUPM को ऐसी रजिस्ट्री के तौर पर जोड़ें जो उसके स्कोप में हो:

    Name: package.openupm.com
    URL: https://package.openupm.com
    Scopes: com.google.external-dependency-manager
      com.google.play.common
      com.google.play.core
      com.google.play.integrity
    
  3. पैकेज मैनेजर मेन्यू खोलने के लिए, Unity मेन्यू का विकल्प Window > Package Manager चुनें.

  4. मैनेजर स्कोप ड्रॉप-डाउन को सेट करके, मेरी रजिस्ट्री चुनें.

  5. पैकेज की सूची से, Unity के लिए Google Play Integrity प्लगिन पैकेज चुनें और इंस्टॉल करें दबाएं.

GitHub से इंपोर्ट करना

  1. GitHub से .unitypackage का सबसे नया वर्शन डाउनलोड करें.

  2. .unitypackage फ़ाइल को इंपोर्ट करने के लिए, Unity मेन्यू का विकल्प चुनें ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज और सभी आइटम इंपोर्ट करें.

Unreal Engine

यहां दिए गए सेक्शन में, Unreal Engine प्रोजेक्ट के लिए Google Play Integrity API को इंटिग्रेट और सेट अप करने का तरीका बताया गया है.

Unreal Engine के इस्तेमाल किए जा सकने वाले वर्शन

यह प्लगिन, Unreal Engine 5.0 और इसके बाद के सभी वर्शन के साथ काम करता है.

अपना डेवलपमेंट एनवायरमेंट सेट अप करना

  1. GitHub डेटाबेस से Play Unreal Engine प्लगिन डाउनलोड करें.

  2. Unreal Engine प्रोजेक्ट में, Plugins फ़ोल्डर के अंदर मौजूद GooglePlay फ़ोल्डर को कॉपी करें.

  3. अपना Unreal Engine प्रोजेक्ट खोलें और बदलाव करें → प्लगिन पर क्लिक करें.

  4. Google Play खोजें और चालू है चेकबॉक्स पर सही का निशान लगाएं.

  5. गेम प्रोजेक्ट को रीस्टार्ट करें और बिल्ड को ट्रिगर करें.

  6. अपने प्रोजेक्ट की Build.cs फ़ाइल खोलें और PlayIntegrity मॉड्यूल को PublicDependencyModuleNames में जोड़ें:

    using UnrealBuildTool;
    
    public class MyGame : ModuleRules
    {
      public MyGame(ReadOnlyTargetRules Target) : base(Target)
      {
        // ...
    
        PublicDependencyModuleNames.Add("PlayIntegrity");
    
        // ...
      }
    }
    

नेटिव

नेटिव सेटअप गाइड में दिए गए निर्देशों का पालन करें. ज़्यादा जानकारी के लिए, Play Integrity का नेटिव एपीआई रेफ़रंस दस्तावेज़ देखें.

एपीआई से मिली जानकारी कॉन्फ़िगर करना (ज़रूरी नहीं)

एपीआई से मिली जानकारी में डिफ़ॉल्ट तौर पर दिए नतीजे शामिल होते हैं. ये नतीजे, हर अनुरोध के साथ मिलते हैं. अगर आपने Play Console या Play SDK Console में अपने Cloud प्रोजेक्ट को लिंक किया है, तो एपीआई से मिली जानकारी को पसंद के मुताबिक बनाया जा सकता है, ताकि उसमें ज़्यादा जानकारी शामिल की जा सके.

पूरी सुरक्षा की जांच के डिफ़ॉल्ट नतीजे

Play Integrity API से मिली जानकारी में, डिफ़ॉल्ट रूप से पूरी सुरक्षा की जांच के ये नतीजे दिखते हैं:

जानकारी का फ़ील्ड वैल्यू ब्यौरा
Play खाते की जानकारी LICENSED उपयोगकर्ता के पास ऐप्लिकेशन का अधिकार है. इसका मतलब, उपयोगकर्ता ने अपने डिवाइस पर Google Play से आपका ऐप्लिकेशन इंस्टॉल किया है या अपडेट किया है.
UNLICENSED उपयोगकर्ता के पास ऐप्लिकेशन का अधिकार नहीं है. ऐसा तब होता है, जब कोई व्यक्ति ऐप्लिकेशन को अलग से लोड करता है या उसे Google Play से डाउनलोड नहीं करता.
UNEVALUATED लाइसेंस से जुड़ी जानकारी की जांच नहीं की गई, क्योंकि एक ज़रूरी शर्त पूरी नहीं हुई. ऐसा कई वजहों से हो सकता है. जैसे:
  • डिवाइस भरोसेमंद नहीं है.
  • उपयोगकर्ता ने Google Play में साइन इन नहीं किया है.
  • Google Play को ऐप्लिकेशन के इंस्टॉल किए गए वर्शन की जानकारी नहीं है.
ऐप्लिकेशन इंटेग्रिटी PLAY_RECOGNIZED ऐप्लिकेशन और सर्टिफ़िकेट, Google Play पर उपलब्ध वर्शन से मेल खाते हैं.
UNRECOGNIZED_VERSION सर्टिफ़िकेट या पैकेज का नाम Google Play के रिकॉर्ड से मेल नहीं खाता है.
UNEVALUATED ऐप्लिकेशन इंटेग्रिटी की जांच नहीं की गई. एक ज़रूरी शर्त पूरी नहीं हुई, जैसे कि डिवाइस भरोसेमंद नहीं है.
डिवाइस इंटिग्रिटी MEETS_DEVICE_INTEGRITY यह ऐप्लिकेशन, सर्टिफ़ाइड Android डिवाइस पर चल रहा है. Android 13 और उसके बाद के वर्शन में, हार्डवेयर से यह पुष्टि की जाती है कि डिवाइस का बूटलोडर लॉक है और लोड किया गया Android OS, डिवाइस बनाने वाली कंपनी की सर्टिफ़ाइड इमेज है.
खाली (वैल्यू खाली है) ऐप्लिकेशन किसी ऐसे डिवाइस पर चल रहा है जिस पर हमला होने (जैसे कि एपीआई हुकिंग) या सिस्टम से छेड़छाड़ (जैसे कि रूट किया गया) के संकेत मिले हैं. ऐसा भी हो सकता है कि ऐप्लिकेशन किसी फ़िज़िकल डिवाइस पर न चल रहा हो. उदाहरण के लिए, किसी ऐसे एम्युलेटर पर चल रहा हो जिसमें पूरी सुरक्षा देने वाला Google Play Integrity मौजूद नहीं है.

पीसी के लिए Google Play Games

पीसी के लिए Google Play Games पर अपना गेम पब्लिश करने पर, आपको डिवाइस की इंटेग्रिटी की जांच के नतीजे में एक अतिरिक्त लेबल मिलेगा, जो यह बताएगा कि गेम 'पीसी के लिए Google Play Games' पर चल रहा है:

जानकारी का फ़ील्ड लेबल ब्यौरा
डिवाइस इंटेग्रिटी MEETS_VIRTUAL_INTEGRITY यह ऐप्लिकेशन, एक ऐसे Android एम्युलेटर पर चल रहा है जो Google Play services के साथ काम करता है. एम्युलेटर की जांच से यह पता चला है कि इस पर सिस्टम को पूरी सुरक्षा मिलती है. साथ ही, यह Android के साथ काम करने की ज़रूरी शर्तों के मुताबिक है.

पूरी सुरक्षा की जांच के वैकल्पिक नतीजे

अगर आपने Play Console या Play SDK Console में अपने Cloud प्रोजेक्ट को लिंक किया है, तो ज़्यादा जानकारी पाने के लिए ऑप्ट-इन किया जा सकता है.

बदलाव करने के लिए, Play Console पर जाएं और Google Play की सुरक्षा सुविधाएं लागू पर जाएं. Play Integrity API के बगल में, मैनेज करें पर क्लिक करें. जवाब बदलें पर क्लिक करें. इसके बाद, बदलाव करें और उन्हें सेव करें.

डिवाइस की जानकारी

deviceIntegrity के नतीजे में डिवाइस के लिए अन्य लेबल से, आपको उस डिवाइस के बारे में ज़्यादा जानकारी मिलती है जिस पर ऐप्लिकेशन चल रहा है. अगर कोई डिवाइस हर लेबल की शर्त पूरी करता है, तो उसके लिए कई लेबल दिखते हैं. इन लेबल का इस्तेमाल करके, नीति उल्लंघन ठीक करने के तरीके के लिए टियर वाली रणनीति बनाई जा सकती है. उदाहरण के लिए, वह डिवाइस ज़्यादा भरोसेमंद हो सकता है जिसके लिए रिस्पॉन्स के तौर पर तीन लेबल मिले हों, जबकि ऊपर बताए गए डिवाइस के मुकाबले वह डिवाइस कम भरोसेमंद हो सकता है जिसके लिए रिस्पॉन्स के तौर पर सिर्फ़ एक लेबल मिला हो.MEETS_STRONG_INTEGRITYMEETS_DEVICE_INTEGRITYMEETS_BASIC_INTEGRITYMEETS_BASIC_INTEGRITY

डिवाइस एट्रिब्यूट से आपको डिवाइस पर मौजूद Android OS के Android SDK वर्शन का पता चलता है. आने वाले समय में, इसे डिवाइस के अन्य एट्रिब्यूट के साथ जोड़ा जा सकता है.

डिवाइस से हाल ही में की गई गतिविधि से जुड़ी जानकारी में, LEVEL_1 (अनुरोधों की संख्या कम) से लेकर LEVEL_4 (अनुरोधों की संख्या ज़्यादा) तक का लेवल दिखता है. गतिविधि के ज़्यादा लेवल से यह पता चल सकता है कि किसी डिवाइस का इस्तेमाल, बहुत ज़्यादा टोकन जनरेट करने के लिए किया जा रहा है. ऐसा इसलिए किया जा रहा है, ताकि उन टोकन को गैर-भरोसेमंद डिवाइसों को डिस्ट्रिब्यूट किया जा सके.

डिवाइस रीकॉल की सुविधा से, किसी डिवाइस के लिए कुछ कस्टम डेटा सेव किया जा सकता है. इस डेटा को उसी डिवाइस पर ऐप्लिकेशन को फिर से इंस्टॉल करने पर, आसानी से वापस लाया जा सकता है.

वैकल्पिक जानकारी के लिए ऑप्ट इन करने के बाद, आपके एपीआई से मिली जानकारी की जांच के नतीजे में नए फ़ील्ड और जानकारी शामिल होगी:

जानकारी का फ़ील्ड लेबल ब्यौरा
डिवाइस इंटेग्रिटी MEETS_BASIC_INTEGRITY यह ऐप्लिकेशन एक ऐसे डिवाइस पर चल रहा है जिस पर सिस्टम को बुनियादी स्तर की पूरी सुरक्षा मिलती है. डिवाइस के बूटलोडर को लॉक या अनलॉक किया जा सकता है. साथ ही, बूट की स्थिति की पुष्टि की जा सकती है या नहीं की जा सकती. हो सकता है कि डिवाइस को सर्टिफ़िकेट न मिला हो. ऐसे में, Google सुरक्षा, निजता या ऐप्लिकेशन के साथ काम करने से जुड़ी कोई भी गारंटी नहीं दे सकता. Android 13 और इसके बाद के वर्शन पर, MEETS_BASIC_INTEGRITY का नतीजा पाने के लिए, यह ज़रूरी है कि पुष्टि करने वाला रूट ऑफ़ ट्रस्ट, Google ने दिया हो.
MEETS_STRONG_INTEGRITY यह ऐप्लिकेशन, सुरक्षा से जुड़े नए अपडेट वाले, असली और सर्टिफ़ाइड Android डिवाइस पर चल रहा है.
  • Android 13 और उसके बाद के वर्शन पर, MEETS_STRONG_INTEGRITY का नतीजा पाने के लिए MEETS_DEVICE_INTEGRITY और डिवाइस के सभी सेगमेंट के लिए, पिछले एक साल में किए गए सुरक्षा अपडेट ज़रूरी हैं. इनमें Android OS के सेगमेंट के लिए पैच और वेंडर के सेगमेंट के लिए पैच शामिल हैं.
  • Android 12 और उससे पहले के वर्शन पर, MEETS_STRONG_INTEGRITY नतीजा पाने के लिए, सिर्फ़ हार्डवेयर के ज़रिए बूट इंटेग्रिटी की पुष्टि की ज़रूरत होती है. साथ ही, डिवाइस पर हाल ही का सुरक्षा अपडेट होना ज़रूरी नहीं है. इसलिए, MEETS_STRONG_INTEGRITY का इस्तेमाल करते समय, यह सुझाव दिया जाता है कि deviceAttributes फ़ील्ड में Android SDK टूल के वर्शन को भी ध्यान में रखा जाए.
डिवाइस की विशेषताएं sdkVersion: 19, 20, ..., 37 डिवाइस पर चल रहे Android OS का एसडीके टूल वर्शन. लौटाई गई संख्या, Build.VERSION_CODES पर मैप होती है.
खाली (वैल्यू खाली है) एसडीके टूल के वर्शन की जांच नहीं की गई, क्योंकि एक ज़रूरी शर्त पूरी नहीं हुई. इस मामले में, sdkVersion फ़ील्ड को सेट नहीं किया गया है. इसलिए, deviceAttributes फ़ील्ड खाली है. ऐसा इन वजहों से हो सकता है:
  • डिवाइस भरोसेमंद नहीं है.
  • डिवाइस में तकनीकी समस्याएं थीं.
हर ऐप्लिकेशन के लिए, इस डिवाइस पर पिछले एक घंटे में किए गए स्टैंडर्ड एपीआई इंटेग्रिटी टोकन के अनुरोध हर ऐप्लिकेशन के लिए, इस डिवाइस पर पिछले एक घंटे में किए गए क्लासिक एपीआई इंटेग्रिटी टोकन के अनुरोध
डिवाइस पर हाल ही में की गई गतिविधि LEVEL_1 (सबसे कम) 10 या इससे कम 5 या इससे कम
LEVEL_2 11 से 25 के बीच 6 से 10 के बीच
LEVEL_3 26 से 50 11 से 15
LEVEL_4 (सबसे ज़्यादा) 50 से ज़्यादा 15 से ज़्यादा
UNEVALUATED डिवाइस पर हाल ही में की गई गतिविधि की जांच नहीं की गई. ऐसा इन वजहों से हो सकता है:
  • डिवाइस भरोसेमंद नहीं है.
  • Google Play को ऐप्लिकेशन के इंस्टॉल किए गए वर्शन की जानकारी नहीं है.
  • डिवाइस में तकनीकी समस्याएं थीं.
डिवाइस रीकॉल values: bitFirst, bitSecond, bitThird ये वही बिट वैल्यू हैं जिन्हें आपने किसी खास डिवाइस के लिए पहले सेट की थीं. हर बिट का मतलब आपने तय किया हुआ है. तीनों बिट वैल्यू डिफ़ॉल्ट रूप से गलत होती हैं.
writeDates: yyyymmFirst, yyyymmSecond, yyyymmThird ये यूटीसी में बिट वैल्यू लिखने की तारीखें हैं. इनमें साल और महीने की सटीक जानकारी होती है. रिकॉल बिट की तारीख हर बार अपडेट की जाती है, जब बिट को 'सही है' पर सेट किया जाता है. साथ ही, बिट को 'गलत है' पर सेट करने पर, तारीख हटा दी जाती है.

सिस्टम की जानकारी

ऐप्लिकेशन को ऐक्सेस करने से जुड़े जोखिम की सुविधा से आपको यह पता चलता है कि क्या आपके डिवाइस में ऐसे कोई दूसरे ऐप्लिकेशन चल रहे हैं जो स्क्रीन कैप्चर कर सकते हैं, आपके ऐप्लिकेशन के ऊपर ओवरले दिखा सकते हैं या डिवाइस को कंट्रोल कर सकते हैं. पुष्टि की गई जिन सुलभता सेवाओं के बारे में Google Play को पता है उन्हें इस नतीजे से अपने-आप बाहर रखा जाता है.

Play Protect के नतीजे से आपको यह पता चलता है कि डिवाइस पर Google Play Protect की सुविधा चालू है या नहीं. साथ ही, यह भी पता चलता है कि उसे डिवाइस पर पहले से मौजूद मैलवेयर मिला है या नहीं.

वैकल्पिक जानकारी के लिए ऑप्ट इन करने के बाद, आपके एपीआई से मिली जानकारी की जांच के नतीजे में नए फ़ील्ड और जानकारी शामिल होगी:

जानकारी का फ़ील्ड वैल्यू ब्यौरा
ऐप्लिकेशन को ऐक्सेस करने से जुड़े जोखिम का नतीजा KNOWN_INSTALLED ऐप्लिकेशन, Google Play से इंस्टॉल किए जाते हैं या डिवाइस बनाने वाली कंपनी, सिस्टम के पार्टिशन पर उन्हें पहले से लोड करती है.
KNOWN_CAPTURING Google Play से इंस्टॉल किए गए या डिवाइस पर पहले से लोड किए गए ऐप्लिकेशन चल रहे हों. इनका इस्तेमाल, अनुरोध करने वाले ऐप्लिकेशन के इनपुट और आउटपुट को पढ़ने या कैप्चर करने के लिए किया जा सकता है. जैसे, स्क्रीन रिकॉर्डिंग वाले ऐप्लिकेशन.
KNOWN_CONTROLLING Google Play से इंस्टॉल किए गए या डिवाइस पर पहले से लोड किए गए ऐप्लिकेशन चल रहे हों. इनका इस्तेमाल, डिवाइस के साथ-साथ अनुरोध करने वाले ऐप्लिकेशन के इनपुट और आउटपुट को कंट्रोल करने के लिए किया जा सकता है. जैसे, रिमोट से कंट्रोल करने वाले ऐप्लिकेशन.
KNOWN_OVERLAYS Google Play से इंस्टॉल किए गए या डिवाइस पर पहले से लोड किए गए ऐप्लिकेशन चल रहे हों. ऐसा हो सकता है कि ये ऐप्लिकेशन, अनुरोध करने वाले ऐप्लिकेशन पर ओवरले दिखा रहे हों.
UNKNOWN_INSTALLED अन्य ऐप्लिकेशन इंस्टॉल किए गए हैं. इन्हें Google Play से इंस्टॉल नहीं किया गया था या डिवाइस बनाने वाली कंपनी ने सिस्टम के पार्टिशन पर पहले से लोड नहीं किया था.
UNKNOWN_CAPTURING डिवाइस पर ऐसे अन्य ऐप्लिकेशन चल रहे हैं जिन्हें Google Play से इंस्टॉल नहीं किया गया है या जो डिवाइस पर पहले से लोड नहीं हैं. इन ऐप्लिकेशन का इस्तेमाल, अनुरोध करने वाले ऐप्लिकेशन के इनपुट और आउटपुट को पढ़ने या कैप्चर करने के लिए किया जा सकता है. जैसे, स्क्रीन रिकॉर्डिंग वाले ऐप्लिकेशन.
UNKNOWN_CONTROLLING डिवाइस पर ऐसे अन्य ऐप्लिकेशन चल रहे हैं जिन्हें Play से इंस्टॉल नहीं किया गया है या जो डिवाइस पर पहले से लोड नहीं हैं. इनका इस्तेमाल, डिवाइस को कंट्रोल करने के साथ-साथ, अनुरोध करने वाले ऐप्लिकेशन के इनपुट और आउटपुट को कंट्रोल करने के लिए किया जा सकता है. जैसे, रिमोट से कंट्रोल करने वाले ऐप्लिकेशन.
UNKNOWN_OVERLAYS डिवाइस पर ऐसे अन्य ऐप्लिकेशन चल रहे हैं जो अनुरोध करने वाले ऐप्लिकेशन पर ओवरले दिखा सकते हैं. ये ऐप्लिकेशन, Google Play से इंस्टॉल नहीं किए गए हैं या डिवाइस पर पहले से लोड नहीं हैं.
खाली (वैल्यू खाली है) अगर कोई ज़रूरी शर्त पूरी नहीं की गई है, तो ऐप्लिकेशन को ऐक्सेस करने से जुड़े जोखिम की जांच नहीं की जाती. इस मामले में, appAccessRiskVerdict फ़ील्ड खाली है. ऐसा कई वजहों से हो सकता है. इनमें ये वजहें शामिल हैं:
  • डिवाइस भरोसेमंद नहीं है.
  • डिवाइस का साइज़, डाइमेंशन या कॉन्फ़िगरेशन, किसी फ़ोन, टैबलेट या फ़ोल्ड होने वाले डिवाइस जैसा नहीं है.
  • डिवाइस में Android 6 (एपीआई लेवल 23) या इसके बाद का वर्शन न हो.
  • Google Play को ऐप्लिकेशन के इंस्टॉल किए गए वर्शन की जानकारी नहीं है.
  • डिवाइस पर Google Play Store का पुराना वर्शन है.
  • सिर्फ़ गेम के लिए: उपयोगकर्ता खाते के पास गेम के लिए Play लाइसेंस नहीं है.
  • verdictOptOut पैरामीटर के साथ स्टैंडर्ड अनुरोध का इस्तेमाल किया गया था.
  • स्टैंडर्ड अनुरोध के लिए, Play Integrity API की लाइब्रेरी के ऐसे वर्शन का इस्तेमाल किया गया है जो स्टैंडर्ड अनुरोधों के लिए, ऐप्लिकेशन को ऐक्सेस करने से जुड़े जोखिम की सूचना पाने की सुविधा के साथ काम नहीं करता.
Play Protect का नतीजा NO_ISSUES Play Protect चालू है और उसे डिवाइस पर ऐप्लिकेशन से जुड़ी कोई समस्या नहीं मिली है.
NO_DATA Play Protect चालू है, लेकिन अब तक कोई स्कैन नहीं किया गया है. ऐसा हो सकता है कि डिवाइस या Play Store ऐप्लिकेशन को हाल ही में रीसेट किया गया हो.
POSSIBLE_RISK Play Protect बंद है.
MEDIUM_RISK Play Protect चालू है और उसे डिवाइस पर नुकसान पहुंचाने वाले ऐप्लिकेशन मिले हैं.
HIGH_RISK Play Protect चालू है और उसे डिवाइस पर खतरनाक ऐप्लिकेशन मिले हैं.
UNEVALUATED Play Protect के नतीजों की जांच नहीं की गई. एक ज़रूरी शर्त पूरी नहीं हुई, जैसे कि डिवाइस भरोसेमंद नहीं है.

क्लासिक अनुरोध की सेटिंग कॉन्फ़िगर करना (ज़रूरी नहीं)

अगर आपको सिर्फ़ स्टैंडर्ड एपीआई अनुरोध करने हैं, तो इस सेक्शन को छोड़ दें.

डिफ़ॉल्ट रूप से, Google Play जवाब को एन्क्रिप्ट करने का तरीका मैनेज करता है. इसका मतलब है कि आपका बैकएंड, नतीजों को डिक्रिप्ट करने के लिए Google के सर्वर को कॉल करता है. इसके अलावा, आपके पास कुंजियों को खुद मैनेज करने का विकल्प भी होता है. इससे, अपने सुरक्षित सर्वर के स्थानीय डिवाइस की सुरक्षा और स्थिति की जानकारी में, पूरी सुरक्षा से जुड़े नतीजे को डिक्रिप्ट किया जा सकता है.

Google को जानकारी एन्क्रिप्ट करने की प्रोसेस मैनेज करने दें (सुझाया गया)

हमारा सुझाव है कि अपने ऐप्लिकेशन की सुरक्षा के लिए, Google को कुंजियां जनरेट और मैनेज करने की अनुमति दें. आपका बैकएंड, Google Play के सर्वर से संपर्क करेगा, ताकि जवाबों को डिक्रिप्ट किया जा सके और उनकी पुष्टि की जा सके.

अपनी एन्क्रिप्शन कुंजियां मैनेज करना

अपने सुरक्षित सर्वर के स्थानीय डिवाइस पर डिक्रिप्ट करने के लिए, Play Console या Play SDK Console से एन्क्रिप्शन कुंजियां डाउनलोड की जा सकती हैं. इस सुविधा का इस्तेमाल करने के लिए, आपका ऐप्लिकेशन Google Play पर उपलब्ध होना चाहिए.

Play Console में, रिस्पॉन्स एन्क्रिप्ट (सुरक्षित) करने के तरीके को मैनेज करने की रणनीति बदलने से पहले, पक्का करें कि आपका सर्वर सही तरीके से कॉन्फ़िगर किया गया हो. इससे, Google Play के सर्वर पर इंटेग्रिटी टोकन को डिक्रिप्ट (सुरक्षित) करने और उनकी पुष्टि करने में कोई रुकावट नहीं आएगी.

Google की ओर से मैनेज की जाने वाली और खुद मैनेज की जाने वाली एन्क्रिप्शन कुंजियों के बीच स्विच करना

  1. Play Console खोलें और अपना ऐप्लिकेशन चुनें .
  2. Google Play की सुरक्षा सुविधाएं लागू पेज पर जाएं.
  3. Play Integrity API के बगल में, मैनेज करें पर क्लिक करें.
  4. क्लासिक अनुरोध में जाकर, जवाब एन्क्रिप्ट करने का तरीका के बगल में मौजूद, बदलाव करें पर क्लिक करें.

खुद से मैनेज की जाने वाली कुंजियों पर स्विच करने के लिए:

  1. जवाब को एन्क्रिप्ट करने वाली अपनी कुंजियां मैनेज और डाउनलोड करें को चुनें और अपनी सार्वजनिक कुंजी अपलोड करें.
  2. एन्क्रिप्ट की गई कुंजियों को अपने-आप डाउनलोड करने के लिए, सेव करें पर क्लिक करें.
  3. अपने सुरक्षित बैकएंड सर्वर को अपडेट करें, ताकि इन कुंजियों का इस्तेमाल करके लोकल तौर पर डिक्रिप्ट किया जा सके.

Google की ओर से मैनेज की जाने वाली कुंजियों पर स्विच करने के लिए:

  1. Google को मेरे जवाब एन्क्रिप्ट करने का तरीका मैनेज करने दें (सुझाया गया) को चुनें.
  2. बदलाव सेव करें पर क्लिक करें.