उपयोगकर्ताओं को पासकी को आसानी से इस्तेमाल करने में मदद करना

पब्लिश करने की तारीख: 09 मई, 2025, पिछली बार अपडेट करने की तारीख: 22 दिसंबर, 2025

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

यह कैसे काम करता है

उपयोगकर्ताओं को पासकी का इस्तेमाल करने में आसानी हो, इसके लिए WebAuthn API की Conditional Create सुविधा का इस्तेमाल करें. शर्त के साथ पासकी बनाने की सुविधा की मदद से, आपकी साइट उपयोगकर्ता से पासकी का अनुरोध कर सकती है. इसके लिए, उपयोगकर्ता को कोई कार्रवाई करने की ज़रूरत नहीं होती.

यह फ़्लो तब काम करता है, जब ये शर्तें पूरी होती हैं:

  • उपयोगकर्ता ने अपने डिफ़ॉल्ट Password Manager में पासवर्ड सेव किया हो.
  • हाल ही में इस पासवर्ड का इस्तेमाल किया गया हो. आदर्श रूप से, पासवर्ड के आधार पर लॉगिन हो जाने के तुरंत बाद, Conditional Create को कॉल करें.

अगर ये दोनों शर्तें पूरी होती हैं, तो पासवर्ड मैनेजर से उपयोगकर्ता के लिए पासकी बनाने का अनुरोध किया जा सकता है. इसके लिए, Conditional Create को कॉल करें. पासकी बन जाने के बाद, उपयोगकर्ता को पासवर्ड मैनेजर के हिसाब से सूचना दी जाती है.

शर्तों के साथ पासकी बनाने के अनुरोध का फ़्लो.

इनके साथ काम करता है

macOS पर Safari और iOS पर सभी ब्राउज़र के साथ-साथ डेस्कटॉप पर Chrome और Android पर Chrome में, शर्तों के आधार पर ऑडियंस बनाने की सुविधा काम करती है.

इसका मतलब है कि यह पासकी की सुविधा देने वाली इन डिफ़ॉल्ट सेवाओं के साथ काम करता है: macOS और iOS पर Safari में iCloud Keychain (पासवर्ड) और डेस्कटॉप और Android पर Chrome में Google Password Manager.

iOS 18 या इसके बाद के वर्शन और Android 14 या इसके बाद के वर्शन में, तीसरे पक्ष की पासकी सेवा देने वाली कंपनियों की पासकी इस्तेमाल की जा सकती है. इससे कोई फ़र्क़ नहीं पड़ता कि उपयोगकर्ता कौनसे ब्राउज़र का इस्तेमाल कर रहा है. इसलिए, पासकी सेवा देने वाली कंपनी यह तय करती है कि पासकी बनाने की सुविधा उपलब्ध कराई जाएगी या नहीं. अगर पासकी की सुविधा देने वाली चुनी गई कंपनी, शर्तों के साथ पासकी बनाने की सुविधा नहीं देती है, तो नई पासकी नहीं बनाई जाएगी.

शर्त के आधार पर खाता बनाने की सुविधा लागू करना

पासकी अपने-आप बनने की सुविधा, WebAuthn API की एक सुविधा पर आधारित होती है. इसे शर्त के साथ पासकी बनाना कहा जाता है. ये सामान्य WebAuthn create() अनुरोध हैं. इनमें mediation पैरामीटर को "conditional" पर सेट किया गया है. यह get() अनुरोधों के लिए, पासकी अपने-आप भरने की सुविधा की तरह काम करता है.

उपयोगकर्ता के पासवर्ड से साइन इन करने के बाद, शर्त के साथ खाता बनाने की सुविधा का इस्तेमाल करें. पासवर्ड मैनेजर और कुछ शर्तों के पूरा होने पर ही, पासवर्ड बनाया जा सकता है. ये शर्तें, पासवर्ड मैनेजर के हिसाब से अलग-अलग हो सकती हैं. साथ ही, इनमें समय के साथ बदलाव हो सकता है. उदाहरण के लिए, Google Password Manager (GPM) के साथ Chrome में, उपयोगकर्ता को हाल ही में साइट के लिए सेव किए गए पासवर्ड का इस्तेमाल करके साइन इन करना होगा.

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

सुविधा का पता लगाना

PublicKeyCredential.getClientCapabilities() को लागू करके, यह पता लगाया जा सकता है कि ब्राउज़र पर कंडीशनल क्रिएट उपलब्ध है या नहीं. देखें कि क्या दिखाए गए ऑब्जेक्ट में true प्रॉपर्टी के लिए conditionalCreate मौजूद है.

if (window.PublicKeyCredential && PublicKeyCredential.getClientCapabilities) {
  const capabilities = await PublicKeyCredential.getClientCapabilities();
  if (capabilities.conditionalCreate) {
    // Conditional create is available
  }
}

अगर getClientCapabilities उपलब्ध नहीं है, तो शर्त के साथ क्रिएट करने की सुविधा भी उपलब्ध नहीं होगी.

पासकी बनाने की सुविधा को शर्तों के साथ उपलब्ध कराना

पासकी ऑटोमैटिक तरीके से बनाने के लिए, navigator.credentials.create() को इस तरह mediation: "conditional" के साथ लागू करें.

const cred = await navigator.credentials.create({
  publicKey: options,
  // Request conditional creation
  mediation: 'conditional'
});

उपयोगकर्ता के साइन इन करने के तुरंत बाद, पासकी अपने-आप बनने की सुविधा का इस्तेमाल करना चाहिए. इससे, पासकी अपने-आप बनने की सुविधा के लिए, Password Manager की ज़रूरी शर्तें पूरी होने की संभावना बढ़ जाती है.

सर्वर को सार्वजनिक पासकोड क्रेडेंशियल भेजा जा सकता है, ताकि पासकी की पुष्टि की जा सके और उसे रजिस्टर किया जा सके. सर्वर पर, पक्का करें कि उपयोगकर्ता ने साइन इन किया हो.

चेतावनियां

शर्त के हिसाब से क्रिएट करने की सुविधा को लागू करना मुश्किल नहीं है. हालांकि, इस सुविधा को किसी मौजूदा सिस्टम में इंटिग्रेट करते समय कई बातों का ध्यान रखना होता है.

सर्वर पर उपयोगकर्ता की मौजूदगी और उपयोगकर्ता की पुष्टि को अनदेखा करें

रजिस्ट्रेशन के जवाब में, "उपयोगकर्ता की मौजूदगी" और "उपयोगकर्ता की पुष्टि हो चुकी है", दोनों को false के तौर पर दिखाया जाता है. इसलिए, क्रेडेंशियल की पुष्टि के दौरान सर्वर को इन फ़्लैग को अनदेखा करना चाहिए.

पासकी अपने-आप बनने की सुविधा चालू करने से पहले, चालू WebAuthn कॉल को बंद करता है

जब आरपी को उम्मीद होती है कि उपयोगकर्ता पासकी या पासवर्ड से साइन इन करेगा, तो शर्त के साथ पासकी पाने का अनुरोध करना सबसे अच्छा विकल्प है. इस वजह से, शर्त के साथ बनाए जाने वाले ऑब्जेक्ट से पहले, शर्त के साथ किए जाने वाले गेट कॉल को रद्द किया जा सकता है.

इसके लिए, आपको AbortController का इस्तेमाल करना होगा और .abort() को कॉल करना होगा.

// To abort a WebAuthn call, instantiate an AbortController.
const controller = new AbortController();

const cred = await navigator.credentials.get({
  publicKey: options,
  signal: controller.signal,
  // Request conditional get
  mediation: 'conditional'
});

// Abort the call
controller.abort();

अपवादों को आसानी से अनदेखा करना

पासकी बनाने की शर्त पूरी होने पर, कुछ मामलों में आपको अपवादों को अनदेखा करना चाहिए:

  • InvalidStateError: पासकी की सुविधा देने वाली कंपनी के पास, पासकी पहले से मौजूद है (excludeCredentials के बारे में बताना न भूलें).
  • NotAllowedError: पासकी बनाने की शर्त पूरी नहीं की गई है.
  • AbortError: WebAuthn कॉल को रद्द कर दिया गया है.

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

पासकी रजिस्टर करने में गड़बड़ी होने पर सिग्नल

जब पासकी बन जाती है, लेकिन सर्वर पर रजिस्टर नहीं हो पाती, तो उपयोगकर्ता को साइन इन करने में समस्या आती है. ऐसा तब हो सकता है, जब पासकी उपलब्ध कराने वाली कंपनी और सर्वर के बीच पासकी की सूची में अंतर हो.

ऐसी स्थितियों से बचने के लिए, सिग्नल एपीआई का इस्तेमाल करके, उन्हें एक जैसा रखें.

बिना पासवर्ड के साइन इन करने की सुविधा से अपग्रेड नहीं किया जा सकता

इस समय, पासकी बनाने की सुविधा सिर्फ़ तब उपलब्ध होती है, जब उपयोगकर्ता मान्य पासवर्ड डालता है. इसका मतलब है कि बिना पासवर्ड के साइन इन करने के तरीके, जैसे कि मैजिक लिंक, फ़ोन नंबर की पुष्टि या आइडेंटिटी फ़ेडरेशन, इस शर्त को पूरा नहीं करेंगे.

खास जानकारी

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

पासकी के बारे में ज़्यादा जानने के लिए, पासकी की मदद से बिना पासवर्ड के लॉगिन करना लेख पढ़ें.