मुख्य सामग्री पर जाएं

Passkey

Passkey सक्षम करना

Passkey को SDK Portal के माध्यम से सक्षम किया जाता है। Android इंटीग्रेशन में कोई बदलाव आवश्यक नहीं है — सक्रियण पूरी तरह से प्लेटफ़ॉर्म की ओर से संभाला जाता है।

नोट

Passkey वर्तमान में केवल Android के लिए उपलब्ध है। iOS SDK इस सुविधा का समर्थन नहीं करता।

तकनीकी पृष्ठभूमि: Digital Asset Links (DAL)

Android पर Passkey, Digital Asset Links प्रोटोकॉल का उपयोग करके क्लाइंट के native एप्लिकेशन और Unico के web डोमेन के बीच एक सत्यापन योग्य और सुरक्षित संबंध स्थापित करता है। यह लिंक Google मोबाइल एप्लिकेशन में passkeys के साथ प्रमाणीकरण के लिए Android ऑपरेटिंग सिस्टम के डिज़ाइन द्वारा अनिवार्य है।

सुरक्षा सत्यापन कैसे काम करता है

Passkey के लिए key pair उत्पन्न करने से पहले, Android authenticator सर्वर की प्रतिक्रिया में मौजूद Relying Party ID (RP ID) को Digital Asset Links फ़ाइल में निर्दिष्ट डोमेन नाम के विरुद्ध सत्यापित करता है। इस सफल सत्यापन के बिना, Passkey काम नहीं करेगा।

SHA-256 क्या है और यह क्यों आवश्यक है?

SHA-256 फिंगरप्रिंट एप्लिकेशन के signing certificate से उत्पन्न एक अनूठा hash है, जिसका उपयोग ऐप की प्रामाणिकता और अखंडता की पहचान के लिए किया जाता है।

यह certificate उस key से मेल खाती है जिसका उपयोग Google Play Store पर वितरण से पहले APK/AAB पर हस्ताक्षर करने के लिए किया जाता है। इस फिंगरप्रिंट को /.well-known/assetlinks.json पथ के तहत Unico द्वारा होस्ट की गई assetlinks.json फ़ाइल में पंजीकृत करना आवश्यक है। यह फ़ाइल पूरी तरह से Unico द्वारा प्रबंधित है और केवल सपोर्ट टिकट सबमिट करके ही अपडेट की जा सकती है।

assetlinks.json फ़ाइल की संरचना

फ़ाइल में दो विशिष्ट permissions शामिल होनी चाहिए:

  • delegate_permission/common.handle_all_urls — Android App Links के लिए
  • delegate_permission/common.get_login_creds — वेबसाइट और Android ऐप के बीच credentials साझा करने के लिए

...साथ में क्लाइंट का package name और SHA-256 fingerprint

नोट

SHA-256 को दो स्थानों पर पंजीकृत किया जाना चाहिए: सार्वजनिक assetlinks.json फ़ाइल और सर्वर कॉन्फ़िगरेशन (expected origin)। उपयोग में आने वाले प्रत्येक signing configuration के लिए fingerprints पंजीकृत करें — debug, release, और किसी भी product flavor — क्योंकि प्रत्येक एक अलग fingerprint उत्पन्न करता है।

SHA-256 कैसे प्राप्त करें

Java Development Kit (JDK) keytool टूल का उपयोग करके SHA-256 फिंगरप्रिंट निकालना संभव है, या इसे सीधे Google Play Console में Setup > App integrity के अंतर्गत App Signing अनुभाग में पाया जा सकता है।

keytool -list -v -keystore <your-keystore.jks> -alias <key-alias>
पूर्वापेक्षाओं का सारांश

किसी भी passkey ऑपरेशन के सफल होने से पहले, निम्नलिखित तैयार होना चाहिए:

  • ऐप का package name और SHA-256 fingerprint Unico की assetlinks.json फ़ाइल में पंजीकृत होना चाहिए (fingerprints पंजीकृत या अपडेट करने के लिए सपोर्ट टिकट सबमिट करें)
  • ऐप का SHA-256 fingerprint सर्वर कॉन्फ़िगरेशन में पंजीकृत होना चाहिए (expected origin)
  • उपयोग में आने वाले प्रत्येक signing configuration के लिए fingerprints पंजीकृत होने चाहिए (debug, release, product flavors)
संदर्भ