सत्यापन कोड इतना लंबा वैध रहना चाहिए कि वह पहुँच सके और दर्ज किया जा सके, साथ ही अनुमान लगाने या दोबारा उपयोग करने का अवसर सीमित रहे। अवधि चुनने से पहले पूरे सत्यापन प्रवाह को मापें।
सत्यापन कोड कितनी देर तक वैध रहना चाहिए?
भेजे गए प्रमाणीकरण कोड के लिए डिलीवरी और एंट्री सहित दस मिनट से अधिक की अनुमति न दें।
NIST का प्रमाणीकरण मार्गदर्शन अलग चैनल से प्रमाणीकरण के लिए यह अधिकतम सीमा निर्धारित करता है। यह सर्वर से कोड को केवल एक बार स्वीकार करने की भी अपेक्षा करता है, जिससे सफल प्रमाणीकरण के बाद पुनः उपयोग रोका जा सके।
कोड सफल होने पर उसे उपयोग किया गया चिह्नित करें। उस कोड की दूसरी सबमिशन को अस्वीकार करें, भले ही वह समाप्ति से पहले आए।
दस मिनट अधिकतम सीमा है, अनुशंसित प्रतीक्षा अवधि नहीं। जब आपकी डिलीवरी और एंट्री माप इसका समर्थन करें तो छोटी विंडो चुनें।
पहुँचने में चालीस सेकंड लगने वाला कोड दस मिनट की विंडो में नौ मिनट बीस सेकंड छोड़ता है। अपने डिलीवरी माप उपयोग करते समय पढ़ने और टाइप करने का समय भी शामिल करें।
ऑथेंटिकेटर से जनरेट किए गए कोड एक अलग समय मॉडल का पालन करते हैं। जब एप्लिकेशन कोड स्थानीय रूप से जनरेट करे तो संबंधित TOTP या HOTP नियम उपयोग करें।
इसमें कितने अंक होने चाहिए?
कम से कम छह यादृच्छिक रूप से जनरेट किए गए अंक उपयोग करें। विफल अनुमानों पर सीमा लगाएँ।
NIST भेजे गए प्रमाणीकरण सीक्रेट के लिए स्वीकृत रैंडम जनरेटर से कम से कम छह दशमलव अंक अपेक्षित करता है। अनुमान योग्य काउंटर या टाइमस्टैम्प यह आवश्यकता पूरी नहीं करता।
छह यादृच्छिक अंक दस लाख संभावित कोड देते हैं। पाँच अलग-अलग अनुमानों की संभावना दस लाख में पाँच, या दो लाख में एक होती है।
विफल प्रयासों की गणना खाते के विरुद्ध करें। NIST अपेक्षा करता है कि नया कोड उस गणना को बनाए रखे, ताकि दोबारा भेजने से असीमित अनुमान न बन सकें।
प्रयास सीमा के साथ वैध उपयोगकर्ताओं के लिए एक पुनर्प्राप्ति मार्ग भी आवश्यक है जो इसे समाप्त कर दें। तय करें कि वे हमलावर के लिए सीमा रीसेट किए बिना पहुँच कैसे पुनः प्राप्त करें।
क्या मुझे इसके बजाय आठ अंक उपयोग करने चाहिए?
आठ तब उपयोग करें जब छोटी अनुमान संभावना व्यक्ति द्वारा दो अतिरिक्त अंक दर्ज करने को उचित ठहराए।
आठ यादृच्छिक अंक दस करोड़ संभावित कोड देते हैं। पाँच अनुमानों के साथ, संभावना दस करोड़ में पाँच हो जाती है।
यह छह अंकों के विरुद्ध पाँच अनुमानों की तुलना में सौ गुना कम है। कोड की लंबाई बढ़ाते समय प्रयास सीमा वही रखें।
लंबे कोड असीमित अनुमान लगाने की समस्या को ठीक नहीं करते। अतिरिक्त अंकों को पर्याप्त सुरक्षा मानने से पहले प्रयास सीमा लागू करें।
Bird में मैं क्या कॉन्फ़िगर कर सकता हूँ?
वर्कस्पेस की सत्यापन कोड नीति सेट करें। प्रत्येक सत्यापन के लिए लौटाई गई resolved सेटिंग्स की जाँच करें।
| फ़ील्ड | क्या चुनें |
|---|---|
code_length | Bird 4 से 8 कैरेक्टर स्वीकार करता है। इस नीति के लिए कम से कम छह चुनें |
code_type | लौटाए गए कैरेक्टर सेट की जाँच करें, numeric या alphanumeric |
ttl_seconds | Bird 1 से 59940 सेकंड स्वीकार करता है। प्रमाणीकरण विंडो 600 सेकंड या उससे कम रखें |
max_attempts | सत्यापन विफल होने से पहले 1 से 10 गलत सबमिशन चुनें |
resend_cooldown_seconds | प्राप्तकर्ता को भेजने के बीच 0 से 3600 सेकंड चुनें |
API की अनुमत अवधि इस प्रमाणीकरण अनुशंसा से अधिक है। अधिकतम स्वीकृत मान को उपयुक्त समाप्ति मानने के बजाय मान जानबूझकर सेट करें।
सत्यापन अनुरोध उस सत्यापन के लिए code_length को ओवरराइड कर सकता है। जब व्यवहार वर्कस्पेस कॉन्फ़िगरेशन से भिन्न हो तो उसकी resolved नीति जाँचें।
मुझे क्या चुनना चाहिए?
- छह यादृच्छिक अंक और एक छोटी, लागू प्रयास सीमा से शुरू करें।
- वैधता विंडो को मापी गई डिलीवरी और एंट्री समय के आधार पर, दस मिनट के भीतर निर्धारित करें।
- आठ अंक तब उपयोग करें जब कार्य छोटी अनुमान संभावना की माँग करे।
- एकल उपयोग लागू करें और दूसरा कोड जारी करते समय विफल-प्रयास गणना बनाए रखें।
संक्षेप में
दस मिनट से अधिक की अनुमति न दें।
डिलीवरी और एंट्री दोनों वैधता विंडो का उपभोग करती हैं। जब आपका मापा गया प्रवाह इसका समर्थन करे तो छोटी अवधि चुनें।
कम से कम छह यादृच्छिक अंक उपयोग करें।
कोड की लंबाई चुनने के साथ-साथ विफल अनुमानों की गिनती भी करें। लंबे कोड प्रयास सीमा की जगह नहीं लेते।
प्रत्येक कोड को केवल एक बार स्वीकार करें।
पहले से स्वीकार किए गए कोड को अस्वीकार करें, भले ही उसकी वैधता विंडो समाप्त न हुई हो।
दोबारा भेजने पर भी प्रयास गणना बनाए रखें।
दूसरा कोड जारी करने से खाते को अनुमानों का नया कोटा नहीं मिलना चाहिए।