RabbitMQ HTTP Authentication Backend Kullanımı

Merhaba Arkadaşlar ,

 

Bu blog yazımda rabbitMQ ve mqtt pluginini kullandığımız bir ortamda sisteme bağlanabilecek mqttClientIdlerinin önceden belirlenmiş bir liste ile kontrol altında tutulması için http-auth backendini nasıl kullanacağımızı anlatmaya çalışacağım.

Öncelikle rabbitMQ üzerinde mqtt ve http-auth backend plugilerini enable etmemiz gerekiyor.

Bunun için windows ortamında RabbitMQ server’ın kurulu olduğu dizinde bir command prompt çalıştırıyoruz. Benim bilgisayarımda

dizininde kurulu.

Öncelikle MQTT Pluginini aktive ediyoruz.

Enable MQTT Plugin

sonrasında httpauth-backend pluginini enable ediyoruz.

 

RabbitMQ HTTPAuth

Sonrasında ise rabbitMQ config dizinine geçiyoruz.

burada advanced.config dosyasına aşağıdaki config satırlarını ekliyoruz.

buradaki user,vhost,resource,topic pathleri bizim authentication yapacağımız external API’yi işaret ediyor. Burada bir .net core API’yi ayağa kaldırıyoruz.

Örnek API’leri bulabileceğimiz githubReposu

 

ben buradaki netcore API’yi kullandım.

 

Burada dikkat edeceğimiz konu CheckUser fonksiyonunun aldığı UserAuthRequest nesnesini MQTT’de de kullanabilmek için modifiye etmek.

 

Nesnemize bir yeni alan eklediğimiz zaman son hali aşağıdaki gibi oluyor.

 

Auth Request

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

− two = three