Aracılığıyla paylaş


Hızlı Başlangıç: Azure portalıyla Event Grid Ad Alanı'nda MQTT iletilerini yayımlama ve abone olma

Bu hızlı başlangıçta, Azure portalını kullanarak MQTT aracısı etkin bir Event Grid ad alanı oluşturacak, istemciler, istemci grupları ve konu alanları gibi alt kaynaklar oluşturacak, istemcilere konu alanlarını yayımlama ve abone olma erişimi ve ardından istemciler arasında ileti yayımlayıp alacaksınız.

Önkoşullar

Örnek istemci sertifikası ve parmak izi oluşturma

Henüz bir sertifikanız yoksa, CLI adımını kullanarak örnek bir sertifika oluşturabilirsiniz. Windows için el ile yüklemeyi göz önünde bulundurun.

Adım başarıyla yüklendikten sonra, kullanıcı profili klasörünüzde bir komut istemi açmanız gerekir (Win+R türü %USERPROFILE%).

  1. Kök ve ara sertifikalar oluşturmak için aşağıdaki komutu çalıştırın. Sonraki adımda kullanılması gereken parolayı unutmayın.

    step ca init --deployment-type standalone --name MqttAppSamplesCA --dns localhost --address 127.0.0.1:443 --provisioner MqttAppSamplesCAProvisioner
    
  2. İlk istemci için bir sertifika oluşturmak için oluşturulan CA dosyalarını kullanın. komutundaki sertifika ve gizli dizi dosyaları için doğru yolu kullandığınızdan emin olun.

    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. Parmak izini görüntülemek için Adım komutunu çalıştırın.

    step certificate fingerprint client1-authn-ID.pem
    
  4. Şimdi ikinci istemci için bir sertifika oluşturun.

    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. İkinci istemciyle kullanılacak parmak izini görüntülemek için Adım komutunu çalıştırın.

    step certificate fingerprint client2-authn-ID.pem
    

Ad alanı oluşturma

  1. Azure portalda oturum açın.

  2. Arama çubuğuna Event Grid Ad Alanları yazın ve açılan listeden Event Grid Ad Alanları'nı seçin.

    Azure portalında Event Grid ad alanı arama işleminin ekran görüntüsü.

  3. Event Grid Ad Alanları sayfasında araç çubuğunda + Oluştur'u seçin.

  4. Ad alanı oluştur sayfasında şu adımları izleyin:

    1. Azure aboneliği seçin.

    2. Mevcut bir kaynak grubunu seçin veya Yeni oluştur'u seçin ve kaynak grubu için bir ad girin.

    3. Ad alanı için benzersiz bir ad sağlayın. Ad alanı adı bir DNS girdisini temsil ettiğinden bölge başına benzersiz olmalıdır. Görüntüde gösterilen adı kullanmayın. Bunun yerine kendi adınızı oluşturun; 3-50 karakter arasında olmalı ve yalnızca a-z, A-Z, 0-9 ve -değerlerini içermelidir.

    4. Event Grid ad alanı için bir konum seçin. Şu anda Event Grid ad alanı yalnızca belirli bölgelerde kullanılabilir.

      Event Grid ad alanı oluşturma akışı temel bilgileri sekmesini gösteren ekran görüntüsü.

  5. Sayfanın alt kısmındaki Gözden geçir ve oluştur'u seçin.

  6. Ad alanı oluştur sayfasının Gözden geçir + oluştur sekmesinde Oluştur'u seçin.

    Not

    Hızlı Başlangıç'ı basit tutmak için yalnızca Temel Bilgiler sayfasını kullanarak bir ad alanı oluşturacaksınız. Sihirbazın diğer sayfalarında ağ, güvenlik ve diğer ayarları yapılandırma hakkında ayrıntılı adımlar için bkz . Ad Alanı Oluşturma.

  7. Dağıtım başarılı olduktan sonra Kaynağa git'i seçerek ad alanınızın Event Grid Ad Alanına Genel Bakış sayfasına gidin.

  8. Genel Bakış sayfasında, MQTT aracısının Devre Dışı durumunda olduğunu görürsünüz. MQTT aracısını etkinleştirmek için Devre Dışı bağlantısını seçin, sizi Yapılandırma sayfasına yönlendirir.

  9. Yapılandırma sayfasında, MQTT aracısını etkinleştir seçeneğini belirleyin ve ardından ayarları uygulamak için Uygula'yı seçin.

    MQTT'yi etkinleştirmek için Event Grid ad alanı yapılandırma sayfasını gösteren ekran görüntüsü.

İstemciler oluşturma

  1. Soldaki menüdeN MQTT aracısı bölümünde İstemciler'i seçin.

  2. İstemciler sayfasında araç çubuğunda + İstemci'yi seçin.

    Ekle düğmesinin seçili olduğu İstemciler sayfasının ekran görüntüsü.

  3. İstemci oluştur sayfasında, istemci için bir ad girin. İstemci adları bir ad alanında benzersiz olmalıdır.

  4. İstemci kimlik doğrulaması adı varsayılan olarak istemci adı olarak ayarlanır. Bu öğretici için olarak değiştirin client1-authn-ID. Bu adı CONNECT paketine eklemeniz Username gerekir.

  5. Bu öğreticide parmak izi tabanlı kimlik doğrulaması kullanacaksınız. İlk istemci sertifikasının parmak izini Birincil Parmak İzi'ne ekleyin.

    İstemci 1 yapılandırmasının ekran görüntüsü.

  6. Başka bir istemci oluşturmak için araç çubuğunda Oluştur'u seçin.

  7. adlı client2ikinci bir istemci oluşturmak için yukarıdaki adımları yineleyin. Kimlik doğrulama adını olarak client2-authn-ID değiştirin ve birincil parmak izine ikinci istemci sertifikasının parmak izini ekleyin.

    İstemci 2 yapılandırmasının ekran görüntüsü.

    Not

    • Hızlı Başlangıç'ı basit tutmak için kimlik doğrulaması için Parmak izi eşleşmesi kullanacaksınız. İstemci kimlik doğrulaması için X.509 CA sertifika zincirini kullanma hakkında ayrıntılı adımlar için bkz . Sertifika zincirini kullanarak istemci kimlik doğrulaması.
    • Ayrıca, bu alıştırma için ad alanında yer alan tüm istemcileri içeren varsayılan $all istemci grubunu kullanırız. İstemci özniteliklerini kullanarak özel istemci grupları oluşturma hakkında daha fazla bilgi edinmek için bkz. istemci grupları.

Konu alanları oluşturma

  1. Soldaki menüdeN MQTT aracısı bölümünde Konu alanları'nı seçin.

  2. Konu alanları sayfasında araç çubuğunda + Konu alanı'nı seçin.

    Oluştur düğmesinin seçili olduğu Konu alanları sayfasının ekran görüntüsü.

  3. Konu alanı oluştur sayfasında konu alanı için bir ad belirtin.

    Adıyla konu alanı oluştur'un ekran görüntüsü.

  4. Konu şablonu için girin contosotopics/topic1 ve ardından Oluştur'u seçerek konu alanını oluşturun.

    Konu alanı yapılandırmasının ekran görüntüsü.

İzin bağlamalarını kullanarak erişim denetimini yapılandırma

  1. Soldaki menüdeN MQTT aracısı bölümünde İzin bağlamaları'nı seçin.

  2. İzin bağlamaları sayfasında araç çubuğunda + İzin bağlaması'nı seçin.

    Oluştur düğmesinin seçili olduğu İzin bağlamaları sayfasını gösteren ekran görüntüsü.

  3. İzin bağlamasını aşağıdaki gibi yapılandırın:

    1. İzin bağlaması için bir ad sağlayın. Örneğin, contosopublisherbinding.

    2. İstemci grubu adı için $all'ı seçin.

    3. Konu alanı adı için önceki adımda oluşturduğunuz konu alanını seçin.

    4. Konu alanında istemci grubuna Publisher izni verin.

      İlk izin bağlamasının oluşturulmasını gösteren ekran görüntüsü.

  4. İzin bağlamasını oluşturmak için Oluştur'u seçin.

  5. Araç çubuğunda + İzin bağlaması'nı seçerek bir izin bağlaması daha (contososubscriberbinding) oluşturun.

  6. Bir ad sağlayın ve gösterildiği gibi $all istemci grubu abonesine ContosoTopicSpace erişimi verin.

    İkinci izin bağlamasının oluşturulmasını gösteren ekran görüntüsü.

  7. İzin bağlamasını oluşturmak için Oluştur'u seçin.

MQTTX uygulamasını kullanarak istemcileri EG Ad Alanına bağlama

  1. MQTT iletilerini yayımlamak/abone olmak için sık kullandığınız araçlardan herhangi birini kullanabilirsiniz. Tanıtım amacıyla, 'den https://mqttx.app/indirilebilen MQTTX uygulaması kullanılarak yayımlama/abone olma gösterilir.

  2. Sol taraftaki gezinti çubuğundan öğesini seçin + .

  3. ile istemci1'i yapılandırma

    • Olarak client1 adlandır (bu değer herhangi bir şey olabilir)

    • İstemci kimliği olarak client1-session1 (CONNECT paketindeki İstemci Kimliği, istemci bağlantısının oturum kimliğini tanımlamak için kullanılır)

    • Kullanıcı adı olarak client1-authn-ID. Bu değer, Azure portalında istemciyi oluştururken belirttiğiniz İstemci Kimlik Doğrulama Adı değeriyle eşleşmelidir.

      Önemli

      Kullanıcı adı, istemci meta verilerindeki istemci kimlik doğrulaması adıyla eşleşmelidir.

  4. Ad alanının Genel Bakış sayfasından konak adını MQTT ana bilgisayar adı olarak güncelleştirin.

    MQTT ana bilgisayar adına sahip Event Grid ad alanına genel bakış sayfasını gösteren ekran görüntüsü.

  5. Bağlantı noktasını 8883 olarak güncelleştirin.

  6. SSL/TLS'yi AÇI olarak değiştirin.

  7. Hizmet sertifikası doğrulamasını sağlamak için SSL Güvenli'yi AÇI olarak değiştirin.

  8. Sertifika olarak CA veya Otomatik olarak imzalanan sertifikalar'ı seçin.

  9. İstemci sertifika dosyasının yolunu belirtin.

  10. İstemci anahtarı dosyasının yolunu belirtin.

  11. Ayarların geri kalanı önceden tanımlanmış varsayılan değerlerle bırakılabilir.

    MQTTX uygulamasında istemci 1 yapılandırma bölümü 1'i gösteren ekran görüntüsü.

  12. İstemciyi MQTT aracısına bağlamak için Bağlan'ı seçin.

  13. yukarıdaki adımları tekrarlayarak ikinci istemci istemci2'yi gösterildiği gibi ilgili kimlik doğrulama bilgileriyle bağlayın.

    MQTTX uygulamasında istemci 2 yapılandırma bölümü 1'i gösteren ekran görüntüsü.

    MQTTX uygulamasında istemci 2 yapılandırma bölümünü gösteren ekran görüntüsü.

MQTTX uygulamasını kullanarak yayımlama/abone olma

  1. İstemcileri bağladıktan sonra, client2 için + Yeni Abonelik düğmesini seçin.

  2. Konu olarak ekleyin contosotopics/topic1 ve Onayla'yı seçin. Diğer alanları mevcut varsayılan değerlerle bırakabilirsiniz.

    MQTTX uygulamasında abonelik konusu yapılandırmasını gösteren ekran görüntüsü.

  3. Sol rayda client1'i seçin.

  4. İstemci1 için, ileti oluşturma kutusunun üzerine yayımlanması gereken konu olarak yazın contosotopics/topic1 .

  5. İleti oluşturma. Gösterildiği gibi herhangi bir biçimi veya JSON'i kullanabilirsiniz.

  6. Gönder düğmesini seçin.

    MQTTX uygulamasında konu başlığında ileti yayımlamayı gösteren ekran görüntüsü.

  7. İleti, istemci 1'de yayımlanmış olarak görünmelidir.

    MQTTX uygulamasında konu hakkında yayımlanan iletiyi gösteren ekran görüntüsü.

  8. İstemci2'ye geçin. İstemci2'nin iletiyi aldığını onaylayın.

    MQTTX uygulamasında abone olan istemci tarafından alınan iletiyi gösteren ekran görüntüsü.