OAuth, JWT और गेटवे: सुरक्षा नियंत्रण अलग रखें

संक्षेप में

OAuth 2.0 सौंपे गए प्राधिकरण को व्यवस्थित करता है; OpenID Connect प्रमाणीकरण जोड़ता है। JWT टोकन प्रारूप है और गेटवे नियंत्रण बिंदु है: भूमिकाएँ अलग हैं।

काल्पनिक खाली पहचान सत्यापन कक्ष: दो सुरक्षा कुंजियाँ, खाली कार्ड और बरगंडी फ़ोल्डर
इस लेख में

उपकरण से पहले भूमिका चुनें

OAuth पहुँच टोकन अपारदर्शी हो सकता है या JWT उपयोग कर सकता है। JWT डिकोड करना प्रामाणिकता नहीं जाँचता; हस्ताक्षरित JWT सामग्री को अपने आप एन्क्रिप्ट नहीं करता। गेटवे सेवाओं के व्यावसायिक प्राधिकरण की जगह नहीं लेता।

तत्वभूमिकास्पष्ट सीमा
OAuth 2.0सौंपा गया प्राधिकरण।अकेले उपयोगकर्ता लॉगिन प्रोटोकॉल नहीं।
OpenID ConnectOAuth 2.0 पर प्रमाणीकरण।प्रोफाइल और टोकन सत्यापन जरूरी।
JWTदावों का प्रारूप।डिकोडिंग, हस्ताक्षर और एन्क्रिप्शन अलग हैं।
API गेटवेप्रवेश के साझा नियंत्रण।ऑब्जेक्ट स्तर के अधिकार नहीं बदलता।

प्रोटोकॉल और हर पहुँच सत्यापित करें

  • क्लाइंट के अनुकूल प्रवाह चुनें। उपयोगकर्ता यात्राओं में रखरखाव वाली लाइब्रेरी और कड़े रीडायरेक्ट नियंत्रण के साथ वर्तमान authorization-code और PKCE अनुशंसाएँ अपनाएँ।
  • स्वीकृत JWT में हस्ताक्षर, अनुमत एल्गोरिदम, जारीकर्ता, लक्षित प्राप्तकर्ता और प्रोफाइल की समय शर्तें जाँचें। दूसरे उपयोग के टोकन अस्वीकार करें।
  • हर ऑब्जेक्ट, कार्रवाई और संगठन की पहुँच जाँचें। काल्पनिक डेटा से खातों के बीच पहुँच जाँचें; सामान्य भूमिका या दायरा हमेशा पर्याप्त नहीं होता।

समाप्ति, निरस्तीकरण और घटनाएँ भी तय करें

नवीनीकरण, कुंजी बदलाव, गोपनीय जानकारी खोने और निरस्तीकरण की रणनीति लिखें। स्थानीय सत्यापन दूर हुए निरस्तीकरण को अपने आप नहीं जानता। टोकन डेटा और लॉग सीमित करें; JWT या कोटा अकेले सुरक्षा या अनुपालन सुनिश्चित नहीं करते।

प्राथमिक स्रोत

गेटवे ऑब्जेक्ट ऑथराइज़ेशन की जगह नहीं लेता है।

API को यह वेरिफ़ाई करना चाहिए कि टोकन उसके लिए है और कॉलर ऑब्जेक्ट पर ऑपरेशन कर सकता है। एक वैलिड JWT सिग्नेचर या सफल OAuth साइन-इन उन परमिशन को पक्का नहीं करता है। आस-पास की आइडेंटिटी और प्रिविलेज्ड फ़ंक्शन को टेस्ट करें।

  • किसी दूसरे ऑडियंस के लिए बने वैलिड टोकन को रिजेक्ट करें।
  • क्रॉस-अकाउंट एक्सेस, प्राइवेट फ़ील्ड और एडमिनिस्ट्रेटिव ऑपरेशन को टेस्ट करें।
  • लॉग में टोकन लिखे बिना एक्सपायरी और रोल चेंज करें।

प्राथमिक स्रोत: IETF — RFC 9700, OAuth 2.0 Security Best Current Practice. संबंधित विधि: व्यावहारिक मार्गदर्शिका पढ़ें.

पासकी: डोमेन और RP ID बदलने की तैयारी

खाते, वेब ओरिजिन और RP ID को अलग रखें ताकि क्रेडेंशियल चुपचाप फिर न बाँधे जाएँ।

  • पुराने तथा नए ओरिजिन, RP ID और जुड़े खाते लिखें। वही खाता नाम किसी पासकी को दूसरे RP ID के लिए वैध नहीं बनाता। WebAuthn के अनुमत संयोजन और बदलाव के दौरान उपलब्ध प्रवेश मार्ग जाँचें।
  • अधिकृत परीक्षण वातावरण में उपयुक्त लाइब्रेरी से चैलेंज, ओरिजिन, RP ID और खाते का जुड़ाव जाँचें। अप्रत्याशित ओरिजिन और दोहराया चैलेंज आजमाएँ। RP ID बदले तो प्रमाणित नया पंजीकरण तैयार करें; डेटाबेस की पंक्ति कॉपी करना कुंजी का स्थानांतरण नहीं है।
  • केवल पुराना क्रेडेंशियल रखने वाला उपयोगकर्ता, बहाली और खुले सत्र जाँचें। जाँची वापसी के साथ मार्ग खोलने और हटाने का क्रम तय करें। नए डोमेन पर पंजीकरण सफल होना सभी पुराने सत्रों का निरस्तीकरण साबित नहीं करता।

दोहराने योग्य स्वीकृति मामला

काल्पनिक उदाहरण: डेटा किसी ग्राहक या देखे गए परिणाम का नहीं है।

मामले के इनपुट देखें
{
    "old_origin": "https://login.old.example",
    "old_rp_id": "old.example",
    "new_origin": "https://login.new.example",
    "new_rp_id": "new.example",
    "same_service_account": true,
    "expected": "authenticated_new_registration"
}

अपेक्षित निर्णय

काल्पनिक उदाहरण: खाता वही है, लेकिन old.example से अलग RP ID वाला new.example होता है। पुराने क्रेडेंशियल को चुपचाप नहीं बाँध सकते; नया पंजीकरण नियोजित प्रमाणित मार्ग से होना चाहिए।

W3C — Web Authentication Level 2

क्या डेटाबेस संपादन पासकी का RP ID बदल सकता है?

नहीं। RP ID क्रेडेंशियल के सत्यापित दायरे का हिस्सा है। नए दायरे में वैध पंजीकरण और प्रमाणित खाता मिलान तैयार करें।

प्राथमिक स्रोत: W3C — Web Authentication Level 2. संबंधित विधि: व्यावहारिक मार्गदर्शिका पढ़ें.

TLS नवीनीकरण: वास्तव में दिया प्रमाणपत्र जाँचें

बदलाव पूरा कहने से पहले नवीनीकरण को TLS अंत बिंदुओं और क्लाइंट तक जाँचें।

  • नाम, CDN, लोड बैलेंसर, प्रॉक्सी और प्रमाणपत्र देने वाले आंतरिक कनेक्शन लिखें। दिया प्रमाणपत्र, चेन, समाप्ति और जिम्मेदार व्यक्ति दर्ज करें। जारी होना सभी नोड पर स्थापना साबित नहीं करता। निजी कुंजी सुरक्षित रखें और सूची में न डालें।
  • उपलब्ध हो तो प्रदाता परीक्षण वातावरण में स्वचालन जाँचें। सत्यापन चुनौती, SAN नाम, सुरक्षित संग्रह और घटक पुनः लोड देखें। कुंजी नीति के अनुसार उपयोगी प्रमाणपत्र हो तो हर स्टार्ट पर जारी करने से बचें।
  • समर्थित क्लाइंट और जरूरी मार्गों पर नाम, तारीख और विश्वास चेन जाँचें। TLS सत्यापन चालू रखें। केवल शेड्यूलर नहीं, दिए प्रमाणपत्र की समाप्ति देखें। वापसी में मान्य प्रमाणपत्र और सुरक्षित कुंजी जरूरी है; अन्यथा बिंदु सुधारें या अलग करें।

दोहराने योग्य स्वीकृति मामला

काल्पनिक उदाहरण: डेटा किसी ग्राहक या देखे गए परिणाम का नहीं है।

मामले के इनपुट देखें
{
    "issuance_succeeded": true,
    "proxy_count": 2,
    "proxies_serving_expected_certificate": 1,
    "other_proxy_certificate_expired": true,
    "tls_verification_enabled": true,
    "expected": "change_incomplete_fix_and_verify_client_paths"
}

अपेक्षित निर्णय

काल्पनिक उदाहरण: नवीनीकरण सफल है पर दो प्रॉक्सी में एक समाप्त प्रमाणपत्र देता है। बदलाव अधूरा है; प्रॉक्सी सुधारें और TLS सत्यापन बंद किए बिना क्लाइंट मार्ग जाँचें।

Let’s Encrypt — Integration Guide

प्राथमिक स्रोत: Let’s Encrypt — Integration Guide. संबंधित विधि: व्यावहारिक मार्गदर्शिका पढ़ें.

CISA KEV सूची देखें

इस संस्करण में विस्तृत संदर्भ टिप्पणियाँ अंग्रेज़ी में उपलब्ध हैं।

One identifier can span several technical layers

An entry may concern a library, server or component embedded in an appliance. Search the exact name, known dependencies and the distributed product’s advisory. Catalogue aliases are not a complete list of affected versions.

  • Connect the CVE, component supplier and final-product supplier.
  • Check version, configuration and execution path in the authorised environment.
  • Do not infer remediation from an empty search result.

सूची और विधि देखें →

CISA KEV · 2026.11.06 · Documentary review : 2026-11-07

एक्सटेंशन: अनुमतियाँ और पहुँच

इस संस्करण में विस्तृत संदर्भ टिप्पणियाँ अंग्रेज़ी में उपलब्ध हैं।

Robust authentication does not describe extension access

Phishing resistance does not remove the need to examine what runs in the browser after a session opens. A manifest provides clues about cookies, scripting, debugging and identity without establishing collection.

  • Test approved extensions in a profile dedicated to sensitive operations.
  • For identity, inspect OAuth scopes and recipients; this permission does not enumerate identity-provider rights.
  • Distinguish session revocation, token revocation, extension disablement and native-component removal.

Read the permission directory and manifest examples →

Google Chrome · Stay secure · Documentation consulted 2026-10-23; browser behaviour remains version-dependent