EMQX HTTP कनेक्शन प्राधिकरण सत्यापन मोड खोलता है
संदर्भ
सरकारी वेबसाइट HTTP प्रमाणीकरण प्लगइन HTTP प्रोटोकॉलHTTP प्रमाणीकरण प्लगइन कॉन्फ़िगर करें
/Etc/emqx/plugins/emqx_auth_http.conf फ़ाइल संपादित करने के लिए vi या vim का उपयोग करें। कनेक्शन प्रमाणीकरण, व्यवस्थापक प्रमाणीकरण कॉन्फ़िगर करें, और क्रमशः प्रमाणीकरण को प्रकाशित और सदस्यता लें। कॉन्फ़िगरेशन को चार आइटम्स, HTTP इंटरफ़ेस एड्रेस, रिक्वेस्ट मेथड, कंटेंट टाइप और रिक्वेस्ट पैरामीटर में विभाजित किया गया है। इंटरफ़ेस एड्रेस एक HTTP एड्रेस को दर्शाता है। हम आमतौर पर अनुरोध विधि के लिए GET या POST का उपयोग करते हैं, और POST की सिफारिश की जाती है। सामग्री प्रकार आमतौर पर x-www-form-urlencoded का उपयोग करता है। अनुरोध पैरामीटर सबसे महत्वपूर्ण है। यहां हमें प्राधिकरण को जज करने के लिए आवश्यक सभी सामग्रियों को शामिल करना होगा। सभी मापदंडों का विस्तृत विवरण संदर्भ सामग्री में देखा जा सकता है। नीचे हमारे उदाहरण में, हमारे एपीआई का सेवा पता एक एकीकृत प्रविष्टि है। वास्तविक कॉल इंटरफ़ेस पैरामीटर में कार्रवाई द्वारा निर्दिष्ट किया गया है। बेशक, हम इसे url से भी अलग कर सकते हैं, और आप इसे अपने उपयोग के अनुसार समायोजित कर सकते हैं। इस आलेख में सर्वर कोड का वर्णन नहीं किया जाएगा, क्योंकि यह व्यावसायिक तर्क के साथ घनिष्ठ रूप से जुड़ा हुआ है। तार्किक निर्णय के बाद हमें EMQX पर परिणाम वापस करना है। यदि हम प्रमाणीकरण पारित करना चाहते हैं, तो हम HTTP 200 स्थिति कोड को सामान्य रूप से वापस कर देंगे, यदि यह विफल रहता है। यह HTTP 403 स्थिति कोड लौटाता है।
auth.http.auth_req = http://127.0.0.1:80/
auth.http.auth_req.method = post
auth.http.auth_req.content_type = x-www-form-urlencoded
auth.http.auth_req.params = client_id=%c,username=%u,password=%P,action=emqx_auth:auth_req
auth.http.super_req = http://127.0.0.1:80/
auth.http.super_req.method = post
auth.http.super_req.content_type = x-www-form-urlencoded
auth.http.super_req.params = client_id=%c,username=%u,action=emqx_auth:super_req
auth.http.acl_req = http://127.0.0.1:80/
auth.http.acl_req.method = post
auth.http.acl_req.content_type = x-www-form-urlencoded
auth.http.acl_req.params = access=%A,username=%u,client_id=%c,ip=%a,topic=%t,action=emqx_auth:acl_req
HTTP प्रमाणीकरण प्लगइन लोड करें
emqx_ctl plugins load emqx_auth_http
मान्यता परिणाम
उपरोक्त संचालन के बाद, हमें कनेक्ट करने के लिए MQTT क्लाइंट का उपयोग करने की आवश्यकता है। हम सामान्य क्लाइंट और प्रबंधन क्लाइंट का उपयोग करने का प्रयास करते हैं ताकि सर्वर से कनेक्ट हो सके कि परिणाम अपेक्षित है। फिर विषय प्रकाशित करें और देखें कि क्या प्राधिकरण नियंत्रण हमारी आवश्यकताओं को पूरा करता है। यदि कोई अपवाद पाया जाता है, तो हम सर्वर कोड को तब तक डिबग कर सकते हैं जब तक सब कुछ सामान्य न हो जाए।