Bir aracı proxy'sine veya bir web sunucusuna ihtiyacınız var ...
Her şeyden önce, belirli konuları ( , ...) kullanarak 2FA gerçekleştirmek için brokerınıza bağlı bir yerde kesinlikle bir kimlik doğrulama hizmetine ihtiyacınız var /auth/RFID
. Daha sonra istemcinin bilgi yayınlamasına izin verir (aşağıya bakın).
Burada görebildiğim ilk sorun, bu konuya abone olan herkesin bu konunun bilgilerini okuyabilmesi, ancak konuları kilitleyebilmenizdir !
Daha sonra tüm cihazlarınıza bilgi yayınlamasını söyleyebilir (zorlayabilirsiniz) /proxy/mytopic
. Mqtt'ın clientId özelliği ile, Auth hizmeti bu konudan gönderilen iletilerin daha önce 2FA kullanan kimliği doğrulanmış bir cihazdan olup olmadığını kontrol edebilir ve ardından cihaz adına kendi mesajını yükte cihazın kimliği ile yayınlayabilir /proxyout/mytopic
.
Şimdi sorun , kimlik doğrulaması yapıldıysa iletileri alabilen aygıtları kontrol etmektir , çünkü MQTT tamamen toplu yayın ile ilgilidir. Yetkilendirme hizmetinin, kimliği doğrulanmış aygıtların bir listesine sahip olması ve alım için uygun olup olmadıklarını kontrol etmesi gerekir. Yine, yük tarafı şifreleme ve şifre çözme cihaz tarafı ...
Çözümümün MQTT yeteneklerine göre çok fazla olduğunu düşünüyorum. Bu nedenle bir soket veya bir web sunucusu kullanmalısınız ...