डिवाइस रिकॉल (बीटा वर्शन) का इस्तेमाल करके, बार-बार होने वाले गलत इस्तेमाल का पता लगाना

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

डिवाइस रीकॉल की सुविधा कैसे काम करती है?

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

  • हर डिवाइस का डेटा पढ़ना: पूरी सुरक्षा की जांच का नतीजा पाने पर, हर डिवाइस के लिए तीन कस्टम वैल्यू या बिट पढ़ी जा सकती हैं. इन वैल्यू के लिए, अपनी पसंद के मुताबिक मतलब तय किया जा सकता है. उदाहरण के लिए, इन वैल्यू को तीन अलग-अलग फ़्लैग के तौर पर इस्तेमाल किया जा सकता है या इन्हें मिलाकर आठ कस्टम लेबल बनाए जा सकते हैं.
  • हर डिवाइस का डेटा बदलना: पूरी सुरक्षा की जांच का टोकन पाने के बाद, उस टोकन का इस्तेमाल करके, Google Play के सर्वर पर सर्वर-साइड कॉल किया जा सकता है. इससे एक या उससे ज़्यादा वैल्यू में बदलाव किया जा सकता है. टोकन का इस्तेमाल 14 दिनों तक किया जा सकता है. इससे किसी वैल्यू में बदलाव किया जा सकता है. उदाहरण के लिए, अगर पूरी सुरक्षा की जांच करने के दो हफ़्ते बाद ही गलत इस्तेमाल का पता चलता है, तो वैल्यू में बदलाव किया जा सकता है. किसी वैल्यू में बदलाव करने पर, उस महीने और साल की जानकारी भी सेव की जाती है जब बदलाव किया गया था.

डिवाइस रीकॉल की ज़रूरी शर्तें और ध्यान रखने वाली बातें

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

डिवाइस रीकॉल के लिए ये ज़रूरी शर्तें हैं:

  • डिवाइस रीकॉल का इस्तेमाल फ़ोन, टैबलेट, फ़ोल्ड किए जा सकने वाले डिवाइस, टीवी, Android Auto, और Wear OS पर किया जा सकता है. Wear पर, डिवाइस रीकॉल की सुविधा सिर्फ़ उन डिवाइसों पर उपलब्ध है जिनमें Wear OS 5 या उसके बाद वाला वर्शन है. डिवाइस रीकॉल की सुविधा, एम्युलेटर पर उपलब्ध नहीं है.
  • डिवाइस रीकॉल के लिए, डिवाइस पर Google Play Store और Google Play सेवाओं के नए वर्शन इंस्टॉल और चालू होने चाहिए.
  • डिवाइस रीकॉल के लिए, उपयोगकर्ता का खाता Play के लिए लाइसेंस वाला होना चाहिए. ऐसा न होने पर, जांच के नतीजे का आकलन नहीं किया जाएगा.

डिवाइस रीकॉल के लिए, समय से जुड़ी ये बातें ध्यान में रखें:

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

एक से ज़्यादा ऐप्लिकेशन वाले डेवलपर और ऐप्लिकेशन ट्रांसफ़र करने वाले डेवलपर के लिए, डिवाइस रीकॉल की सुविधा इस तरह काम करती है:

  • आपके Google Play डेवलपर खाते में मौजूद सभी ऐप्लिकेशन के पास, हर डिवाइस के लिए एक जैसी तीन वैल्यू का ऐक्सेस होता है. दूसरे शब्दों में, अगर आपका कोई ऐप्लिकेशन किसी वैल्यू में बदलाव करता है, तो आपके सभी ऐप्लिकेशन उसी डिवाइस पर इंस्टॉल होने पर, बदली हुई वैल्यू को पढ़ेंगे.
  • अगर किसी ऐप्लिकेशन को एक डेवलपर खाते से दूसरे डेवलपर खाते में ट्रांसफ़र किया जाता है, तो डिवाइस रीकॉल में, पुराने डेवलपर खाते के बजाय नए डेवलपर खाते का हर डिवाइस के लिए डेटा दिखेगा.

डिवाइस रीकॉल की सुविधा चालू करना

तैयार होने पर, Play Console में डिवाइस रीकॉल की सुविधा चालू करें:

  1. Play Console में साइन इन करें.
  2. वह ऐप्लिकेशन चुनें जो डिवाइस रीकॉल की सुविधा का इस्तेमाल करेगा.
  3. बाईं ओर मौजूद मेन्यू में जाकर, Google Play की सुरक्षा सुविधाएं लागू पर जाएं.
  4. Play Integrity API के बगल में मौजूद, मैनेज करें पर क्लिक करें.
  5. पेज के 'जवाब' सेक्शन में जाकर, जवाब बदलें पर क्लिक करें.
  6. डिवाइस रीकॉल की सुविधा चालू करें.
  7. 'बदलाव सेव करें' पर क्लिक करें.

डिवाइस रीकॉल की सुविधा चालू या बंद करने पर, Play Console में सेट अप किए गए Play Integrity API टेस्ट जवाब मिट जाएंगे. आपको उन्हें फिर से बनाना होगा.

डिवाइस रीकॉल की वैल्यू पढ़ना

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

डिवाइस रीकॉल की वैल्यू बदलना

डिवाइस रीकॉल की वैल्यू बदलने के लिए, सर्वर-टू-सर्वर एपीआई कॉल किया जा सकता है. यह कॉल, पूरी सुरक्षा की जांच के नतीजे को डिकोड करने जैसा होता है. किसी बिट को true पर सेट करने से, उसकी लिखने की तारीख भी अपडेट हो जाएगी. भले ही, वह पहले से ही true पर सेट हो. किसी बिट को false पर सेट करने से, उसकी लिखने की तारीख रीसेट होकर खाली हो जाएगी. किसी अनुरोध में, जो बिट तय नहीं किए गए हैं उनमें कोई बदलाव नहीं होगा. बिट लिखने और जांच के नतीजे में उन्हें वापस पढ़ने के बीच, थोड़ा समय लग सकता है. इसमें 30 सेकंड तक लग सकते हैं. हालांकि, आम तौर पर इसमें कम समय लगता है. डिवाइस रीकॉल के लिए लिखने के अनुरोध, पूरी सुरक्षा की जांच के टोकन के अनुरोधों की तुलना में कम होने चाहिए. इन्हें, पूरी सुरक्षा की जांच के टोकन के अनुरोध के कोटे में नहीं गिना जाता. हालांकि, इन पर सार्वजनिक तौर पर उपलब्ध नहीं होने वाली, सुरक्षा के लिए तय की गई दर की सीमाएं लागू होती हैं.

playintegrity.googleapis.com/v1/PACKAGE_NAME/deviceRecall:write -d \
'{
  "integrityToken": "INTEGRITY_TOKEN",
  "newValues": {
    "bitFirst": true,
    "bitThird": false
  }
}'
newValues.BitFirst = true // ForceSendFields optional for value true
newValues.BitSecond = false // ForceSendFields required for value false
newValues.BitThird = nil // do not set ForceSendFields for unspecified bits
newValues.ForceSendFields = []string{"BitSecond"}