EMQX는 HTTP 연결 인증 확인 모드를 엽니 다.
참고
공식 웹 사이트 HTTP 인증 플러그인 HTTP 프로토콜HTTP 인증 플러그인 구성
vi 또는 vim을 사용하여 /etc/emqx/plugins/emqx_auth_http.conf 파일을 편집하십시오. 연결 인증, 관리자 인증, 게시 및 가입 인증을 각각 구성합니다. 구성은 HTTP 인터페이스 주소, 요청 방법, 콘텐츠 유형 및 요청 매개 변수의 네 가지 항목으로 나뉩니다. 인터페이스 주소는 HTTP 주소를 나타냅니다. 일반적으로 요청 방법으로 GET 또는 POST를 사용하며 POST를 권장합니다. 콘텐츠 유형은 일반적으로 x-www-form-urlencoded를 사용합니다. 요청 매개 변수가 가장 중요합니다. 여기에 승인 여부를 판단하는 데 필요한 모든 내용을 포함해야합니다. 모든 매개 변수에 대한 자세한 설명은 참조 자료에서 볼 수 있습니다. 아래 예에서 API의 서비스 주소는 통합 된 항목입니다. 실제 호출 인터페이스는 매개 변수의 액션에 의해 지정됩니다. 물론 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 클라이언트를 사용하여 연결해야하며, 일반 클라이언트와 관리 클라이언트를 사용하여 서버에 연결하여 예상 한 결과인지 확인합니다. 그런 다음 주제를 게시하고 구독하여 권한 제어가 요구 사항을 충족하는지 확인하십시오. 예외가 발견되면 모든 것이 정상이 될 때까지 서버 코드를 디버깅 할 수 있습니다.