Sdílet prostřednictvím


Rychlý start: Publikování a přihlášení k odběru zpráv MQTT v oboru názvů Event Grid pomocí webu Azure Portal

V tomto rychlém startu pomocí webu Azure Portal vytvoříte obor názvů Služby Event Grid s povoleným zprostředkovatelem MQTT, vytvoříte dílčí prostředky, jako jsou klienti, skupiny klientů a prostory témat, udělíte klientům přístup k publikování a přihlášení k odběru prostorů témat a pak publikujete a přijímáte zprávy mezi klienty.

Požadavky

  • Pokud nemáte předplatné Azure, vytvořte si bezplatný účet Azure.
  • Před zahájením tohoto kurzu si přečtěte přehled služby Event Grid, pokud s Azure Event Gridem teprve začínáte.
  • Ujistěte se, že je v bráně firewall otevřený port 8883. Ukázka v tomto kurzu používá protokol MQTT, který komunikuje přes port 8883. Tento port může být blokovaný v některých podnikových a vzdělávacích síťových prostředích.
  • K vygenerování kryptografického otisku a ověření připojení klienta potřebujete klientský certifikát X.509.

Generování ukázkového klientského certifikátu a kryptografického otisku

Pokud ještě certifikát nemáte, můžete vytvořit ukázkový certifikát pomocí rozhraní příkazového řádku kroku. Zvažte ruční instalaci pro Windows.

Po úspěšné instalaci kroku byste měli otevřít příkazový řádek ve složce profilu uživatele (Win+R typ %USERPROFILE%).

  1. Pokud chcete vytvořit kořenové a zprostředkující certifikáty, spusťte následující příkaz. Nezapomeňte heslo, které je potřeba použít v dalším kroku.

    step ca init --deployment-type standalone --name MqttAppSamplesCA --dns localhost --address 127.0.0.1:443 --provisioner MqttAppSamplesCAProvisioner
    
  2. Pomocí souborů certifikační autority vygenerovaných vytvořte certifikát pro prvního klienta. Ujistěte se, že v příkazu použijete správnou cestu pro soubory certifikátů a tajných kódů.

    step certificate create client1-authn-ID client1-authn-ID.pem client1-authn-ID.key --ca .step/certs/intermediate_ca.crt --ca-key .step/secrets/intermediate_ca_key --no-password --insecure --not-after 2400h
    
  3. Pokud chcete zobrazit kryptografický otisk, spusťte příkaz Krok.

    step certificate fingerprint client1-authn-ID.pem
    
  4. Teď vytvořte certifikát pro druhého klienta.

    step certificate create client2-authn-ID client2-authn-ID.pem client2-authn-ID.key --ca .step/certs/intermediate_ca.crt --ca-key .step/secrets/intermediate_ca_key --no-password --insecure --not-after 2400h
    
  5. Pokud chcete zobrazit kryptografický otisk, který se má použít s druhým klientem, spusťte příkaz Krok.

    step certificate fingerprint client2-authn-ID.pem
    

Vytvoření oboru názvů

  1. Přihlaste se na portál Azure.

  2. Na panelu hledání zadejte obory názvů Event Gridu a v rozevíracím seznamu vyberte Obory názvů event Gridu.

    Snímek obrazovky vyhledávání oboru názvů Event Gridu na webu Azure Portal

  3. Na stránce Obory názvů event Gridu vyberte na panelu nástrojů možnost + Vytvořit .

  4. Na stránce Vytvořit obor názvů postupujte takto:

    1. Vyberte své předplatné Azure.

    2. Vyberte existující skupinu prostředků nebo vyberte Vytvořit novou a zadejte název skupiny prostředků.

    3. Zadejte jedinečný název oboru názvů. Název oboru názvů musí být jedinečný pro každou oblast, protože představuje položku DNS. Nepoužívejte název zobrazený na obrázku. Místo toho vytvořte vlastní název – musí mít délku 3–50 znaků a obsahovat pouze hodnoty a-z, A-Z, 0-9 a -.

    4. Vyberte umístění pro obor názvů Event Gridu. V současné době je obor názvů Služby Event Grid k dispozici pouze ve vybraných oblastech.

      Snímek obrazovky znázorňující kartu Základy vytváření toků v oboru názvů Event Gridu

  5. Vyberte Zkontrolovat a vytvořit v dolní části stránky.

  6. Na kartě Zkontrolovat a vytvořit na stránce Vytvořit obor názvů vyberte Vytvořit.

    Poznámka:

    Pokud chcete rychlý start zachovat jednoduchý, budete k vytvoření oboru názvů používat jenom stránku Základy. Podrobný postup konfigurace sítě, zabezpečení a dalších nastavení na jiných stránkách průvodce najdete v tématu Vytvoření oboru názvů.

  7. Po úspěšném nasazení vyberte Přejít k prostředku a přejděte na stránku Přehled oboru názvů služby Event Grid pro váš obor názvů.

  8. Na stránce Přehled vidíte, že zprostředkovatel MQTT je ve stavu Zakázáno . Pokud chcete povolit zprostředkovatele MQTT, vyberte zakázaný odkaz, přesměruje vás na stránku Konfigurace.

  9. Na stránce Konfigurace vyberte možnost Povolit zprostředkovatele MQTT a pak vyberte Použít , aby se nastavení použilo.

    Snímek obrazovky zobrazující stránku konfigurace oboru názvů Event Gridu pro povolení MQTT

Vytváření klientů

  1. V nabídce vlevo vyberte Klienti v části Zprostředkovatele MQTT.

  2. Na stránce Klienti vyberte na panelu nástrojů + Klient.

    Snímek obrazovky se stránkou Klienti s vybraným tlačítkem Přidat

  3. Na stránce Vytvořit klienta zadejte název klienta. Názvy klientů musí být v oboru názvů jedinečné.

  4. Ve výchozím nastavení se název ověřování klienta nastaví na název klienta. Pro účely tohoto kurzu ho změňte na client1-authn-ID. Tento název musíte zahrnout jako Username v paketu CONNECT.

  5. V tomto kurzu použijete ověřování založené na kryptografickém otisku. Do primárního kryptografického otisku zahrňte kryptografický otisk prvního klientského certifikátu.

    Snímek obrazovky s konfigurací klienta 1

  6. Vyberte Vytvořit na panelu nástrojů a vytvořte dalšího klienta.

  7. Opakováním výše uvedených kroků vytvořte druhého klienta s názvem client2. Změňte název ověřování na client2-authn-ID kryptografický otisk druhého klientského certifikátu a vložte ho do primárního kryptografického otisku.

    Snímek obrazovky s konfigurací klienta 2

    Poznámka:

    • Pro zjednodušení rychlého startu použijete pro ověřování shodu kryptografického otisku. Podrobný postup použití řetězu certifikátů certifikační autority X.509 pro ověřování klientů najdete v tématu Ověřování klientů pomocí řetězu certifikátů.
    • Také používáme výchozí $all skupinu klientů, která zahrnuje všechny klienty v oboru názvů pro toto cvičení. Další informace o vytvářenívlastníchch

Vytváření prostorů témat

  1. V nabídce vlevo vyberte v části zprostředkovatele MQTT mezery tématu.

  2. Na stránce Mezery témat vyberte na panelu nástrojů mezeru + Téma.

    Snímek obrazovky se stránkou Mezery témat s vybraným tlačítkem Vytvořit

  3. Zadejte název prostoru tématu na stránce Vytvořit místo tématu.

    Snímek obrazovky s místem pro vytvoření tématu s názvem

  4. Zadejte contosotopics/topic1 šablonu tématu a pak výběrem možnosti Vytvořit vytvořte prostor tématu.

    Snímek obrazovky s konfigurací prostoru tématu

Konfigurace řízení přístupu pomocí vazeb oprávnění

  1. V nabídce vlevo vyberte vazby oprávnění v části zprostředkovatele MQTT.

  2. Na stránce Vazby oprávnění vyberte na panelu nástrojů vazbu + Vazba oprávnění.

    Snímek obrazovky znázorňující stránku Vazby oprávnění s vybraným tlačítkem Vytvořit

  3. Vazbu oprávnění nakonfigurujte následujícím způsobem:

    1. Zadejte název vazby oprávnění. Například contosopublisherbinding.

    2. Jako název skupiny klientů vyberte $all.

    3. V části Název prostoru tématu vyberte prostor tématu, který jste vytvořili v předchozím kroku.

    4. Udělte vydavateli oprávnění ke skupině klientů v prostoru tématu.

      Snímek obrazovky znázorňující vytvoření první vazby oprávnění

  4. Výběrem možnosti Vytvořit vytvořte vazbu oprávnění.

  5. Vytvořte jednu další vazbu oprávnění (contososubscriberbinding) výběrem + vazba oprávnění na panelu nástrojů.

  6. Zadejte název a přidělte $all odběrateli skupiny klientů přístup k prostoru ContosoTopicSpace, jak je znázorněno.

    Snímek obrazovky znázorňující vytvoření druhé vazby oprávnění

  7. Výběrem možnosti Vytvořit vytvořte vazbu oprávnění.

Připojení klientů k oboru názvů EG pomocí aplikace MQTTX

  1. Pro publikování a přihlášení k odběru zpráv MQTT můžete použít libovolný z vašich oblíbených nástrojů. Pro demonstrační účely se pomocí aplikace MQTTX, ze které lze stáhnout https://mqttx.app/, se zobrazí publikování nebo přihlášení k odběru .

  2. Vyberte + na navigačním panelu vlevo.

  3. Konfigurace klienta 1 pomocí

    • Název jako client1 (tato hodnota může být cokoli)

    • ID klienta jako client1-session1 (ID klienta v paketu CONNECT se používá k identifikaci ID relace pro připojení klienta).

    • Uživatelské jméno jako client1-authn-ID. Tato hodnota se musí shodovat s hodnotou názvu ověřování klienta, který jste zadali při vytváření klienta na webu Azure Portal.

      Důležité

      Uživatelské jméno musí odpovídat názvu ověřování klienta v metadatech klienta.

  4. Aktualizujte název hostitele na název hostitele MQTT ze stránky Přehled oboru názvů.

    Snímek obrazovky zobrazující stránku přehledu oboru názvů Event Gridu s názvem hostitele MQTT

  5. Aktualizujte port na 8883.

  6. Přepněte SSL/TLS na ZAPNUTO.

  7. Pokud chcete zajistit ověření certifikátu služby, přepněte ssl Secure na ZAPNUTO.

  8. Vyberte certifikát jako certifikační autoritu nebo certifikáty podepsané svým držitelem.

  9. Zadejte cestu k souboru certifikátu klienta.

  10. Zadejte cestu k souboru klíče klienta.

  11. Zbytek nastavení je možné nechat s předdefinovanými výchozími hodnotami.

    Snímek obrazovky zobrazující konfiguraci klienta 1 část 1 v aplikaci MQTTX

  12. Vyberte Připojit a připojte klienta ke zprostředkovateli MQTT.

  13. Opakujte výše uvedené kroky a připojte druhého klienta klienta2 s odpovídajícími ověřovacími informacemi, jak je znázorněno.

    Snímek obrazovky znázorňující konfiguraci klienta 2, část 1 v aplikaci MQTTX

    Snímek obrazovky znázorňující konfiguraci klienta 2– část 2 v aplikaci MQTTX

Publikování a přihlášení k odběru pomocí aplikace MQTTX

  1. Po připojení klientů vyberte u klienta 2 tlačítko + Nové předplatné .

  2. Přidejte contosotopics/topic1 jako téma a vyberte Potvrdit. Ostatní pole můžete ponechat s existujícími výchozími hodnotami.

    Snímek obrazovky znázorňující konfiguraci tématu předplatného v aplikaci MQTTX

  3. Vyberte klienta 1 v levém railu.

  4. U klienta 1 napište nad polem pro psaní zpráv jako téma, contosotopics/topic1 ve které chcete publikovat.

  5. Vytvořte zprávu. Můžete použít libovolný formát nebo JSON, jak je znázorněno.

  6. Vyberte tlačítko Odeslat.

    Snímek obrazovky zobrazující publikování zpráv v tématu v aplikaci MQTTX

  7. Zpráva by se měla zobrazit jako publikovaná v klientovi 1.

    Snímek obrazovky zobrazující zprávu publikovanou v tématu v aplikaci MQTTX

  8. Přepněte na klienta 2. Potvrďte, že klient2 obdržel zprávu.

    Snímek obrazovky zobrazující zprávu přijatou klientem přihlášení k odběru v aplikaci MQTTX