कैप्टिव पोर्टल के लिए WeChat OAuth ऑथेंटिकेशन को कैसे कॉन्फ़िगर करें
यह तकनीकी गाइड बताती है कि कैप्टिव पोर्टल के लिए WeChat OAuth ऑथेंटिकेशन को कैसे कॉन्फ़िगर किया जाए। इसमें चीनी विज़िटर्स से फ़र्स्ट-पार्टी डेटा को सुरक्षित रूप से कैप्चर करने के लिए आवश्यक प्लेटफ़ॉर्म रजिस्ट्रेशन, OAuth 2.0 फ़्लो, स्कोप चयन और नेटवर्क प्रवर्तन तंत्र (network enforcement mechanisms) का विवरण दिया गया है।
इस गाइड को सुनें
पॉडकास्ट ट्रांसक्रिप्ट देखें
- कार्यकारी सारांश
- तकनीकी आर्किटेक्चर
- प्लेटफ़ॉर्म रजिस्ट्रेशन आवश्यकताएँ
- WeChat Official Accounts Platform
- WeChat Open Platform
- स्कोप चयन और डेटा संग्रह
- snsapi_base
- snsapi_userinfo
- नेटवर्क प्रवर्तन एकीकरण
- RADIUS Change of Authorisation (CoA)
- MAC एड्रेस बाईपास
- अनुपालन और सुरक्षा संबंधी विचार
- GDPR और PIPL संरेखण
- CSRF सुरक्षा
- Redirect URI सत्यापन

कार्यकारी सारांश
जब चीनी विज़िटर आपके WiFi से कनेक्ट होते हैं, तो केवल ईमेल या Facebook वाला लॉगिन पेज दिखाने से तुरंत बाधा उत्पन्न होती है। WeChat के पास 1.38 बिलियन मासिक सक्रिय उपयोगकर्ता हैं, और इसे एक पहचान प्रदाता (identity provider) के रूप में कॉन्फ़िगर करने से यह बाधा समाप्त हो जाती है। यह गाइड बताती है कि कैप्टिव पोर्टल के लिए WeChat OAuth 2.0 ऑथेंटिकेशन को कैसे लागू किया जाए, जिसमें आवश्यक प्लेटफ़ॉर्म रजिस्ट्रेशन, OAuth फ़्लो और सफल लॉगिन को नेटवर्क एक्सेस में बदलने के लिए आवश्यक नेटवर्क प्रवर्तन तंत्र (network enforcement mechanisms) का विवरण दिया गया है। हम एंटरप्राइज़ हार्डवेयर पर तकनीकी कार्यान्वयन और GDPR और PIPL के तहत अनुपालन आवश्यकताओं को कवर करते हैं।
तकनीकी आर्किटेक्चर
एक कैप्टिव पोर्टल किसी अनऑथेंटिकेटेड डिवाइस से आने वाले HTTP ट्रैफ़िक को रोकता है और उसे पोर्टल सर्वर पर होस्ट किए गए लॉगिन पेज पर रीडायरेक्ट करता है। जब आप WeChat OAuth को एकीकृत (integrate) करते हैं, तो आप इस फ़्लो में एक थर्ड-पार्टी पहचान प्रदाता (identity provider) को शामिल करते हैं।

यह क्रम इस प्रकार काम करता है:
- विज़िटर SSID से कनेक्ट होता है।
- एक्सेस पॉइंट या वायरलेस कंट्रोलर ऑथेंटिकेटेड सेशन की कमी का पता लगाता है और HTTP ट्रैफ़िक को कैप्टिव पोर्टल URL पर रीडायरेक्ट करता है।
- विज़िटर WeChat लॉगिन चुनता है।
- पोर्टल सर्वर ब्राउज़र को WeChat के ऑथराइजेशन एंडपॉइंट (
open.weixin.qq.com) पर रीडायरेक्ट करता है, जिसमेंAppID,redirect_uri,response_type=code, औरscopeपास किया जाता है। - WeChat ऑथेंटिकेशन को संभालता है। यदि विज़िटर
snsapi_baseस्कोप के साथ WeChat इन-ऐप ब्राउज़र का उपयोग करता है, तो यह बिना किसी सूचना के (silently) हो जाता है। - WeChat एक अस्थायी ऑथराइजेशन कोड के साथ पोर्टल के
redirect_uriपर वापस रीडायरेक्ट करता है। - पोर्टल सर्वर
api.weixin.qq.com/sns/oauth2/access_tokenको कॉल करके इस कोड को एक्सेस टोकन से बदलता है। - WeChat एक
access_token,refresh_tokenऔर उपयोगकर्ता काopenidलौटाता है।
प्लेटफ़ॉर्म रजिस्ट्रेशन आवश्यकताएँ
WeChat लॉगिन को लागू करने के लिए सही डेवलपर प्लेटफ़ॉर्म पर रजिस्ट्रेशन की आवश्यकता होती है। WeChat दो अलग-अलग प्लेटफ़ॉर्म संचालित करता है, और गलत प्लेटफ़ॉर्म चुनने से एकीकरण (integration) विफल हो जाता है।
WeChat Official Accounts Platform
WeChat इन-ऐप ब्राउज़र के अंदर विज़िटर्स को सेवा देने वाले कैप्टिव पोर्टल के लिए, आपको Official Accounts Platform (mp.weixin.qq.com) पर एक Service Account की आवश्यकता होती है। एक Subscription Account में आवश्यक OAuth वेब पेज ऑथराइजेशन अनुमतियों की कमी होती है। एक Service Account snsapi_base और snsapi_userinfo दोनों स्कोप का समर्थन करता है।
WeChat Open Platform
WeChat के बाहर एक मानक मोबाइल ब्राउज़र (जैसे Android पर Chrome या iOS पर Safari) से एक्सेस किए जाने वाले कैप्टिव पोर्टल के लिए, आपको Open Platform (open.weixin.qq.com) पर रजिस्टर्ड एक Website Application की आवश्यकता होती है। यह snsapi_login स्कोप का उपयोग करता है और एक QR कोड प्रस्तुत करता है जिसे उपयोगकर्ता अपने WeChat ऐप से स्कैन करता है।
सभी एक्सेस विधियों को कवर करने के लिए अधिकांश एंटरप्राइज़ डिप्लॉयमेंट में दोनों रजिस्ट्रेशन की आवश्यकता होती है।
स्कोप चयन और डेटा संग्रह
स्कोप पैरामीटर यह निर्धारित करता है कि WeChat आपके पोर्टल सर्वर पर क्या डेटा लौटाता है। यह निर्णय उपयोगकर्ता की असुविधा (friction) और डेटा गोपनीयता अनुपालन दोनों को प्रभावित करता है।

snsapi_base
यह स्कोप केवल OpenID लौटाता है, जो आपके Official Account के भीतर उपयोगकर्ता के लिए एक विशिष्ट पहचानकर्ता (unique identifier) है। इसके लिए किसी उपयोगकर्ता सहमति प्रॉम्प्ट की आवश्यकता नहीं होती है, जिससे ऑथेंटिकेशन उपयोगकर्ता के लिए अदृश्य हो जाता है। यह उन लौटने वाले विज़िटर्स के लिए सर्वोत्तम है जिनका प्रोफ़ाइल आपके पास पहले से है, या उन स्थानों के लिए जो नए डेटा संग्रह के बजाय शून्य असुविधा (zero friction) को प्राथमिकता देते हैं।
snsapi_userinfo
यह स्कोप OpenID के साथ-साथ उपयोगकर्ता का WeChat उपनाम (nickname), प्रोफ़ाइल चित्र, लिंग, भाषा सेटिंग और शहर लौटाता है। इसके लिए एक स्पष्ट सहमति स्क्रीन की आवश्यकता होती है, जिससे असुविधा (friction) होती है। इसका उपयोग पहली बार आने वाले विज़िटर के रजिस्ट्रेशन के लिए करें जहाँ प्रोफ़ाइल बनाना आवश्यक हो, और इसे GDPR-अनुपालक सहमति परत (consent layer) के साथ जोड़ें।
नेटवर्क प्रवर्तन एकीकरण
OAuth टोकन प्राप्त करना पहचान साबित करता है, लेकिन यह नेटवर्क नहीं खोलता है। आपको मानक प्रोटोकॉल का उपयोग करके एक सफल ऑथेंटिकेशन को नेटवर्क एक्सेस में बदलना होगा।
RADIUS Change of Authorisation (CoA)
IEEE 802.1X और RFC 3576 में परिभाषित, RADIUS CoA पोर्टल सर्वर को सफल OAuth के बाद नेटवर्क कंट्रोलर को एक अनुरोध भेजने की अनुमति देता है। इसके बाद कंट्रोलर डिवाइस को अनऑथेंटिकेटेड VLAN से गेस्ट VLAN में स्थानांतरित कर देता है। यह Cisco Meraki, HPE Aruba, Ruckus और Juniper Mist सहित एंटरप्राइज़ हार्डवेयर के लिए मानक है।
MAC एड्रेस बाईपास
वैकल्पिक रूप से, पोर्टल सर्वर डिवाइस के MAC एड्रेस को एक ऑथराइज्ड क्लाइंट के रूप में रजिस्टर्ड करता है, और कंट्रोलर इसकी अनुमति देता है। हालांकि इसे लागू करना सरल है, लेकिन यह कम सुरक्षित है क्योंकि MAC एड्रेस को स्पूफ़ (spoof) किया जा सकता है।
Purple का क्लाउड ओवरले इस अनुवाद को स्वचालित करता है, और WeChat OAuth पूरा होने पर अंतर्निहित हार्डवेयर (जिसमें Ubiquiti UniFi, Cambium, Extreme और Fortinet शामिल हैं) को उचित सिग्नल भेजता है।
अनुपालन और सुरक्षा संबंधी विचार
GDPR और PIPL संरेखण
यदि आप यूरोपीय विज़िटर्स को सेवा देते हैं, तो WeChat OAuth के माध्यम से एकत्र किए गए डेटा पर GDPR लागू होता है। यदि आप चीनी विज़िटर्स को सेवा देते हैं, तो चीन का व्यक्तिगत सूचना संरक्षण कानून (PIPL) लागू होता है। दोनों ढांचों (frameworks) के लिए प्रोसेसिंग के लिए एक वैध आधार, स्पष्ट उद्देश्य सीमा और डेटा न्यूनीकरण (data minimisation) की आवश्यकता होती है। snsapi_base स्कोप snsapi_userinfo की तुलना में डेटा न्यूनीकरण सिद्धांतों के साथ अधिक आसानी से संरेखित होता है।
CSRF सुरक्षा
OAuth अनुरोध में state पैरामीटर क्रॉस-साइट रिक्वेस्ट फोर्जरी (CSRF) को रोकता है। आपको एक क्रिप्टोग्राफ़िक रूप से रैंडम स्टेट वैल्यू जनरेट करनी होगी, इसे उपयोगकर्ता के सेशन में स्टोर करना होगा, और WeChat द्वारा वापस रीडायरेक्ट किए जाने पर इसे सत्यापित (validate) करना होगा।
Redirect URI सत्यापन
WeChat प्लेटफ़ॉर्म पर रजिस्टर्ड ऑथराइज्ड डोमेन के विरुद्ध redirect_uri को सत्यापित करता है। यदि आपका पोर्टल सर्वर HTTPS के बजाय किसी भिन्न सबडोमेन, पाथ या HTTP का उपयोग करता है, तो OAuth फ़्लो त्रुटि (error) 40029 के साथ विफल हो जाता है।
अपने नेटवर्क को सुरक्षित रखने के बारे में अधिक जानकारी के लिए, हमारी एंटरप्राइज़ WiFi सुरक्षा: 2026 के लिए एक संपूर्ण गाइड देखें।
मुख्य परिभाषाएं
snsapi_base
एक WeChat OAuth स्कोप जो सहमति प्रॉम्प्ट प्रदर्शित किए बिना केवल उपयोगकर्ता का OpenID लौटाता है।
इसका उपयोग तब किया जाता है जब IT टीमों को लॉगिन असुविधा पैदा किए बिना लौटने वाले विज़िटर्स को चुपचाप (silently) ऑथेंटिकेट करने की आवश्यकता होती है।
snsapi_userinfo
एक WeChat OAuth स्कोप जो जनसांख्यिकीय डेटा (उपनाम, लिंग, शहर) के साथ OpenID लौटाता है और इसके लिए स्पष्ट उपयोगकर्ता सहमति की आवश्यकता होती है।
इसका उपयोग पहली बार रजिस्ट्रेशन के दौरान किया जाता है जब मार्केटिंग टीमों को विज़िटर प्रोफ़ाइल बनाने की आवश्यकता होती है।
OpenID
एक विशिष्ट WeChat Official Account के भीतर एक विशिष्ट उपयोगकर्ता के लिए एक विशिष्ट पहचानकर्ता (unique identifier)।
विज़िटर के व्यवहार और लौटने वाली विज़िट को ट्रैक करने के लिए पोर्टल डेटाबेस में प्राइमरी की (primary key) के रूप में उपयोग किया जाता है।
RADIUS CoA
Change of Authorisation. RFC 3576 में परिभाषित एक तंत्र जो सर्वर को एक सक्रिय सेशन की ऑथराइजेशन स्थिति को संशोधित करने की अनुमति देता है।
सफल WeChat ऑथेंटिकेशन के बाद वायरलेस कंट्रोलर को नेटवर्क एक्सेस देने के लिए पोर्टल सर्वर द्वारा उपयोग किया जाता है।
PIPL
Personal Information Protection Law. चीन का व्यापक डेटा गोपनीयता विनियमन (regulation)।
WeChat लॉगिन का उपयोग करने वाले चीनी विज़िटर्स के लिए सहमति फ़्लो डिज़ाइन करते समय GDPR के साथ इस पर विचार किया जाना चाहिए।
AppID and AppSecret
आपके एप्लिकेशन की पहचान करने और उसे ऑथेंटिकेट करने के लिए WeChat द्वारा प्रदान किए गए क्रेडेंशियल।
AppSecret पोर्टल सर्वर पर सुरक्षित रहना चाहिए और इसे कभी भी क्लाइंट-साइड कोड में उजागर नहीं किया जाना चाहिए।
State Parameter
OAuth अनुरोध में पास किया गया और वापसी पर सत्यापित किया गया एक क्रिप्टोग्राफ़िक रूप से रैंडम स्ट्रिंग।
कैप्टिव पोर्टल पर क्रॉस-साइट रिक्वेस्ट फोर्जरी (CSRF) हमलों को रोकने के लिए आवश्यक।
MAC Address Bypass
802.1X ऑथेंटिकेशन की आवश्यकता के बजाय डिवाइस के हार्डवेयर एड्रेस को ऑथराइज्ड करके नेटवर्क एक्सेस देने की एक विधि।
सरल नेटवर्क सेटअप के लिए RADIUS CoA का एक विकल्प, हालांकि कम सुरक्षित है।
हल किए गए उदाहरण
लंदन में एक लक्ज़री रिटेल ब्रांड चीनी खरीदारों के लिए WeChat लॉगिन की पेशकश करना चाहता है। वे अपने ग्राहक आधार को समझने के लिए जनसांख्यिकीय (demographic) डेटा एकत्र करना चाहते हैं, लेकिन वे GDPR अनुपालन और पोर्टल पर उच्च ड्रॉप-ऑफ दरों को लेकर चिंतित हैं।
रिटेलर को WeChat Official Accounts Platform पर एक Service Account रजिस्टर करना चाहिए। जनसांख्यिकीय डेटा (उपनाम, लिंग, शहर) एकत्र करने के लिए उन्हें पहली बार कनेक्शन के लिए snsapi_userinfo स्कोप का उपयोग करने के लिए पोर्टल को कॉन्फ़िगर करना होगा। GDPR अनुपालन सुनिश्चित करने के लिए, पोर्टल पेज पर WeChat रीडायरेक्ट से पहले एक स्पष्ट, सचेत-विकल्प ऑप्ट-इन (opt-in) प्रदर्शित होना चाहिए, जिसमें यह स्पष्ट रूप से समझाया गया हो कि कौन सा डेटा एकत्र किया जा रहा है और क्यों। लौटने वाले खरीदारों के लिए, पोर्टल को MAC एड्रेस का पता लगाना चाहिए और बिना किसी असुविधा के पुनः ऑथेंटिकेशन (silent re-authentication) के लिए snsapi_base का उपयोग करना चाहिए, जिससे असुविधा कम से कम हो।
एक स्टेडियम HPE Aruba कंट्रोलर्स का उपयोग करके एक नया WiFi नेटवर्क तैनात करता है। उन्होंने WeChat OAuth कॉन्फ़िगर किया है, और पोर्टल को सफलतापूर्वक एक्सेस टोकन प्राप्त हो जाता है, लेकिन विज़िटर का डिवाइस कैप्टिव पोर्टल पेज पर ही रहता है और इंटरनेट का उपयोग नहीं कर पाता है।
एकीकरण (integration) में नेटवर्क प्रवर्तन तंत्र (network enforcement mechanism) की कमी है। पोर्टल सर्वर ने WeChat के साथ उपयोगकर्ता की पहचान सत्यापित कर ली है, लेकिन उसने HPE Aruba कंट्रोलर को एक्सेस देने का निर्देश नहीं दिया है। पोर्टल सर्वर को कंट्रोलर को एक RADIUS Change of Authorisation (CoA) संदेश भेजने के लिए कॉन्फ़िगर किया जाना चाहिए, जो इसे उपयोगकर्ता के MAC एड्रेस को प्री-ऑथेंटिकेशन भूमिका से ऑथेंटिकेटेड गेस्ट भूमिका में स्थानांतरित करने का निर्देश दे।
अभ्यास प्रश्न
Q1. आप एक रिटेल चेन में कैप्टिव पोर्टल तैनात कर रहे हैं। परीक्षण से पता चलता है कि iOS पर Safari में पोर्टल खोलने वाले उपयोगकर्ताओं को WeChat लॉगिन चुनते समय एक त्रुटि (error) मिलती है, लेकिन WeChat संदेश लिंक के भीतर से पोर्टल खोलने वाले उपयोगकर्ता सफलतापूर्वक ऑथेंटिकेट हो जाते हैं। इसका संभावित कारण क्या है?
संकेत: WeChat इन-ऐप ब्राउज़र और मानक मोबाइल ब्राउज़र के बीच अंतर पर विचार करें।
मॉडल उत्तर देखें
कार्यान्वयन संभवतः पूरी तरह से Official Accounts Platform पर रजिस्टर्ड एक Service Account पर निर्भर है, जो केवल WeChat इन-ऐप ब्राउज़र के भीतर OAuth का समर्थन करता है। iOS पर Safari का समर्थन करने के लिए, आपको WeChat Open Platform पर एक Website Application भी रजिस्टर करना होगा और Safari उपयोगकर्ताओं को QR कोड फ़्लो पर रूट करने के लिए उपयोगकर्ता एजेंट डिटेक्शन (user agent detection) लागू करना होगा।
Q2. आपके पोर्टल सर्वर लॉग एक्सेस टोकन एक्सचेंज के दौरान WeChat API से बार-बार 40029 'invalid code' त्रुटियां दिखा रहे हैं। आपको सबसे पहले कौन सा कॉन्फ़िगरेशन जांचना चाहिए?
संकेत: इस बारे में सोचें कि WeChat ऑथेंटिकेशन अनुरोध के स्रोत को कैसे सत्यापित करता है।
मॉडल उत्तर देखें
आपको redirect_uri कॉन्फ़िगरेशन को सत्यापित करना चाहिए। WeChat डेवलपर कंसोल में रजिस्टर्ड ऑथराइज्ड डोमेन के विरुद्ध रीडायरेक्ट URI को कड़ाई से सत्यापित करता है। यदि पोर्टल एक अलग सबडोमेन का उपयोग कर रहा है, या यदि यह HTTPS को छोड़ देता है, तो WeChat कोड एक्सचेंज को अस्वीकार कर देगा।
Q3. एक स्थान संचालक (venue operator) विज़िटर डेटा एकत्र करना चाहता है लेकिन लॉगिन प्रक्रिया के दौरान शून्य असुविधा (zero friction) पर जोर देता है। वे अनुरोध करते हैं कि आप सहमति प्रॉम्प्ट दिखाए बिना विज़िटर का उपनाम और शहर एकत्र करने के लिए WeChat लॉगिन कॉन्फ़िगर करें। आप क्या प्रतिक्रिया देंगे?
संकेत: विभिन्न OAuth स्कोप की क्षमताओं की समीक्षा करें।
मॉडल उत्तर देखें
आपको संचालक को सूचित करना होगा कि यह तकनीकी रूप से असंभव है। उपनाम और शहर जैसे जनसांख्यिकीय डेटा एकत्र करने के लिए snsapi_userinfo स्कोप की आवश्यकता होती है, जो अनिवार्य रूप से WeChat सहमति प्रॉम्प्ट को ट्रिगर करता है। शून्य असुविधा प्राप्त करने के लिए, आपको snsapi_base का उपयोग करना होगा, जो चुपचाप काम करता है लेकिन केवल OpenID लौटाता है।
इस श्रृंखला में आगे पढ़ें
Starlink पर कैप्टिव पोर्टल कैसे सेटअप करें: दूरस्थ और समुद्री स्थानों के लिए एक गाइड
यह गाइड विवरण देती है कि मूल Starlink हार्डवेयर को कैसे बायपास करें और एंटरप्राइज़ राउटिंग उपकरणों का उपयोग करके क्लाउड-प्रबंधित कैप्टिव पोर्टल को कैसे एकीकृत करें। आप सीखेंगे कि CGNAT सीमा को कैसे पार करें, VLAN सेगमेंटेशन लागू करें, सैटेलाइट बैंडविड्थ बाधाओं को प्रबंधित करें और नियामक अनुपालन सुनिश्चित करें।
होटल गेस्ट WiFi प्रबंधन: PMS, पोर्टल और ब्रांड मानकों को एकीकृत करना
यह तकनीकी मार्गदर्शिका विवरण देती है कि एंटरप्राइज़-ग्रेड होटल WiFi नेटवर्क को कैसे आर्किटेक्ट किया जाए, जिसमें VLAN सेगमेंटेशन, स्वचालित सत्र प्रबंधन के लिए PMS एकीकरण, और GDPR-अनुपालन डेटा कैप्चर के लिए कैप्टिव पोर्टल अनुकूलन पर ध्यान केंद्रित किया गया है।
कैप्टिव पोर्टल सर्वोत्तम प्रथाएं: उच्च रूपांतरण और अनुपालन के लिए डिज़ाइन करना
यह तकनीकी गाइड IT प्रबंधकों, नेटवर्क आर्किटेक्ट्स और स्थान संचालन निदेशकों को कैप्टिव पोर्टल तैनात करने के लिए एक संपूर्ण खाका देती है जो उच्च उपयोगकर्ता रूपांतरण के साथ नेटवर्क सुरक्षा को संतुलित करता है। यह VLAN सेगमेंटेशन और RADIUS प्रमाणीकरण से लेकर GDPR-अनुपालक सहमति डिज़ाइन और प्रमाणीकरण विधि चयन तक के संपूर्ण आर्किटेक्चर को कवर करता है। 2024 में 80,000+ स्थानों और 440 मिलियन लॉगिन में Purple के परिचालन अनुभव से ली गई, प्रत्येक सिफारिश वास्तविक परिनियोजन डेटा पर आधारित है।