브로커 프록시 또는 웹 서버가 필요합니다 ...
우선, 특정 주제 ( , ...)를 사용하여 2FA를 수행하려면 브로커에 연결된 인증 서비스가 절대적으로 필요합니다 /auth/RFID
. 그러면 클라이언트가 정보를 게시 할 수 있습니다 (아래 참조).
여기서 볼 수있는 첫 번째 문제는이 주제를 구독 한 사람은 누구나 해당 주제의 정보를 읽을 수 있지만 주제를 잠글 수 있다는 것입니다 !
그런 다음 모든 장치에 정보를 게시하도록 지시 (강제) 할 수 있습니다 /proxy/mytopic
. 인증 서비스는 mqtt의 clientId 기능을 사용하여이 주제에서 전송 된 메시지가 이전에 2FA를 사용한 인증 된 장치에서 온 것인지 확인한 후 장치 대신 /proxyout/mytopic
페이로드의 장치 ID 를 사용 하여 자체 메시지를 게시 할 수 있습니다 .
MQTT가 대량 게시에 관한 것이기 때문에 문제는 인증 된 경우 메시지 를 받을 수있는 장치를 검사 하는 것입니다. 인증 서비스에는 인증 된 장치 목록이 있어야하고 수신 가능한지 확인해야합니다. 다시 한 번, 페이로드 암호화 및 암호 해독 장치 쪽 ...
내 솔루션이 MQTT 기능보다 과잉이라고 생각합니다. 따라서 소켓이나 웹 서버를 사용해야합니다 ...