Azure IoT Central'a bağlanma
Bu makalede cihazların bir Azure IoT Central uygulamasına nasıl bağlanacağı açıklanır. Bir cihazın IoT Central verileri alışverişi için önce şunları yapmanız gerekir:
- Kimlik doğrulaması yapın. IoT Central uygulamayla kimlik doğrulaması, paylaşılan erişim imzası (SAS) belirteci veya bir X. 509.440 sertifikası kullanır. X. 509.440 sertifikaları üretim ortamlarında önerilir.
- Kaydolun. Cihazların IoT Central uygulamasına kayıtlı olması gerekir. Kayıtlı cihazları uygulamasındaki cihazlar sayfasında görüntüleyebilirsiniz.
- Bir cihaz şablonuyla ilişkilendirin. IoT Central bir uygulamada, cihaz şablonları işleçlerin bağlı cihazları görüntülemek ve yönetmek için kullandığı kullanıcı arabirimini tanımlar.
IoT Central aşağıdaki iki cihaz kayıt senaryosunu destekler:
- Otomatik kayıt. Cihaz ilk kez bağlandığında otomatik olarak kaydedilir. Bu senaryo, OEM 'Lerin, önce kaydolmadan bağlanabilecek cihazları toplu olarak üretmesini sağlar. OEM, uygun cihaz kimlik bilgilerini oluşturur ve fabrikadaki cihazları yapılandırır. İsteğe bağlı olarak, cihazı veri göndermeye başlamadan önce onaylaması için bir operatör gerekli kılabilirsiniz. Bu senaryo, uygulamanızda bir X. 509.952 veya SAS grubu kaydı yapılandırmanızı gerektirir.
- El ile kayıt. İşleçler cihazlar sayfasında tek tek cihazları kaydeder veya bir CSV dosyasını toplu kayıt cihazlarına içeri aktarır. Bu senaryoda, X. 509.952 veya SAS Grup kaydı veya x. 509.440 veya SAS bireysel kaydını kullanabilirsiniz.
IoT Central bağlanan cihazlar ıot Tak ve kullan kurallarına uymalıdır. Bu kurallardan biri, bir cihazın bağlandığı sırada uyguladığı cihaz modelinin model kimliğini göndermelidir. Model KIMLIĞI, IoT Central uygulamasının cihazı doğru cihaz şablonuyla ilişkilendirilmesini sağlar.
IoT Central, bağlantı işlemini yönetmek için Azure IoT Hub cihaz sağlama hizmeti 'ni (DPS) kullanır. Bir cihaz, uygulamanıza bağlanması gereken bilgileri almak için önce bir DPS uç noktasına bağlanır. Dahili olarak, IoT Central uygulamanız cihaz bağlantısını işlemek için bir IoT Hub 'ı kullanır. DPS kullanılması şunları sunar:
- Cihazları ölçeklendirmeye ekleme ve bağlamayı desteklemek için IoT Central.
- Cihazları IoT Central kullanıcı arabirimi aracılığıyla kaydetmeden cihaz kimlik bilgilerini oluşturup cihazları çevrimdışı olarak yapılandırabilirsiniz.
- IoT Central cihazları kaydetmek için kendi cihaz kimliklerinizi kullanmanız gerekir. Kendi cihaz kimliklerinizin kullanılması, mevcut arka ofis sistemleriyle tümleştirmeyi basitleştirir.
- Cihazları IoT Central bağlamak için tek ve tutarlı bir yol.
Bu makalede aşağıdaki cihaz bağlantısı adımları açıklanmaktadır:
- X. 509.440 grubu kaydı
- SAS grubu kaydı
- Bireysel kayıt
- Cihaz kaydı
- Cihazı cihaz şablonuyla ilişkilendirme
X. 509.440 grubu kaydı
Bir üretim ortamında, X. 509.440 sertifikalarının kullanılması, IoT Central için önerilen cihaz kimlik doğrulama mekanizmasıdır. Daha fazla bilgi için bkz. X. 509.440 CA sertifikalarını kullanarak cihaz kimlik doğrulaması.
Bir cihazı bir X. 509.440 sertifikası ile uygulamanıza bağlamak için:
- Sertifikalar (X. 509.440) kanıtlama türünü kullanan bir kayıt grubu oluşturun.
- Kayıt grubunda bir ara veya kök X. 509.440 sertifikası ekleyin ve doğrulayın.
- Kayıt grubundaki kök veya ara sertifikadan bir yaprak sertifikası oluşturun. Cihaza bağlanırken yaprak sertifikayı cihazdan gönderin.
Daha fazla bilgi edinmek için bkz . X. 509.440 sertifikalarıyla cihazları bağlama
Yalnızca test amaçlı
Yalnızca test için, kök, ara ve cihaz sertifikaları oluşturmak üzere aşağıdaki yardımcı programları kullanabilirsiniz:
- Azure IoT cihaz sağlama cihaz SDK 'sı Için Araçlar: X. 509.440 sertifikalarını ve anahtarlarını oluşturmak ve doğrulamak için kullanabileceğiniz Node.js araçları koleksiyonu.
- Örnek ve öğreticiler için test CA sertifikalarını yönetme: bir PowerShell ve Bash betikleri koleksiyonu:
- Bir sertifika zinciri oluşturun.
- IoT Central uygulamanıza yüklemek için sertifikaları. cer dosyası olarak kaydedin.
- Doğrulama sertifikasını oluşturmak için IoT Central uygulamasındaki doğrulama kodunu kullanın.
- Cihaz kimliklerinizi araç için bir parametre olarak kullanarak cihazlarınız için yaprak sertifikaları oluşturun.
SAS grubu kaydı
Bir cihazı cihaz SAS anahtarı ile uygulamanıza bağlamak için:
Paylaşılan erişim imzası (SAS) kanıtlama türünü kullanan bir kayıt grubu oluşturun.
Grubu birincil veya ikincil anahtar kayıt grubundan kopyalayın.
Azure CLı kullanarak Grup anahtarından bir cihaz anahtarı oluşturun:
az iot central device compute-device-key --primary-key <enrollment group primary key> --device-id <device ID>Cihaz IoT Central uygulamanıza bağlanırken oluşturulan Cihaz anahtarını kullanın.
Not
Kayıt gruplarınızın mevcut SAS anahtarlarını kullanmak için, otomatik oluşturma anahtar DEĞIŞTIRME ve SAS anahtarlarına tür ' ı devre dışı bırakın.
Bireysel kayıt
Her biri kendi kimlik doğrulama kimlik bilgilerine sahip olan cihazları bağlayan müşteriler, bireysel kayıtları kullanır. Tek bir kayıt, bağlanmasına izin verilen tek bir cihaz için bir giriştir. Bireysel kayıtlar, bir X. 509.440 yaprak sertifikası veya SAS belirteçleri (fiziksel veya sanal Güvenilir Platform modülünden) kanıtlama mekanizmaları olarak kullanabilir. Bir cihaz KIMLIĞI harfler, rakamlar ve - karakteri içerebilir. Daha fazla bilgi için bkz. DPS bireysel kayıt.
Not
Bir cihaz için tek bir kayıt oluşturduğunuzda, IoT Central uygulamanızdaki varsayılan grup kayıt seçeneklerine göre önceliklidir.
Bireysel kayıtlar oluşturma
IoT Central, bireysel kayıtlar için aşağıdaki kanıtlama mekanizmalarını destekler:
Simetrik anahtar kanıtlama: Simetrik anahtar kanıtlama, bir cihazın DPS örneğine kimlik doğrulaması için basit bir yaklaşımdır. Simetrik anahtarlar kullanan tek bir kayıt oluşturmak için, cihaz için cihaz bağlantısı sayfasını açın, bağlantı yöntemi olarak bireysel kaydı ve mekanizma olarak paylaşılan erişim imzasını (SAS) seçin. Base64 kodlamalı birincil ve ikincil anahtarlar girin ve değişikliklerinizi kaydedin. Cihazınızı bağlamak için kimlik kapsamını, cihaz kimliğini ve birincil ya da ikincil anahtarı kullanın.
İpucu
Sınama için, OpenSSL kullanarak Base64 kodlamalı anahtarlar oluşturabilirsiniz:
openssl rand -base64 64X. 509.440 sertifikaları: X. 509.440 sertifikalarıyla tek bir kayıt oluşturmak için, cihaz bağlantısı sayfasını açın, bağlantı yöntemi olarak bireysel kayıt ' ı ve Sertifikalar (X. 509.440) öğesini seçin. Tek bir kayıt girişiyle kullanılan cihaz sertifikalarının, veren ve Subject CN 'nin cihaz KIMLIĞINE ayarlandığı bir gereksinimi vardır.
İpucu
Sınama için, otomatik olarak imzalanan bir sertifika oluşturmak üzere Node.jsIçin Azure IoT cihaz sağlama cihaz SDK 'Sı araçlarını kullanabilirsiniz:
node create_test_cert.js device "mytestdevice"Güvenilir Platform Modülü (TPM) kanıtlama: TPM , bir tür donanım güvenlik modülüdür. TPM kullanmak, bir cihazı bağlamak için en güvenli yöntemlerle biridir. Bu makalede ayrı, bellenim veya tümleşik TPM kullandığınız varsayılır. Yazılım öykünmesi, prototip oluşturma veya test etme için idealdir, ancak ayrık, bellenim veya tümleşik TPMs ile aynı güvenlik düzeyini sağlamalardır. Üretimde yazılım TPM 'Leri kullanmayın. TPM kullanan tek bir kayıt oluşturmak için, cihaz bağlantısı sayfasını açın, bağlantı yöntemi olarak bireysel kayıt ' ı ve, mekanizma olarak TPM 'yi seçin. TPM onay anahtarını girin ve cihaz bağlantı bilgilerini kaydedin.
Cihaz kaydı
Bir cihazın IoT Central uygulamasına bağlanabilmesi için önce uygulamanın kayıtlı olması gerekir:
- Cihazlar, ilk bağlandıklarında otomatik olarak kendilerini kaydedebilir. Bu seçeneği kullanmak için, X. 509.440 grup kaydı veya SAS grubu kaydıkullanmanız gerekir.
- Bir işleç, uygulamadaki bir cihaz listesini toplu olarak kaydetmek için bir CSV dosyasını içeri aktarabilir.
- Bir operatör, tek bir cihazı uygulamadaki cihazlar sayfasına el ile kaydedebilir.
IoT Central, OEM 'Lerin kendilerini otomatik olarak kaydedebileceği cihazları toplu olarak üretmesini sağlar. OEM, uygun cihaz kimlik bilgilerini oluşturur ve fabrikadaki cihazları yapılandırır. Bir müşteri bir cihazı ilk kez açtığında, DPS 'e bağlanır ve ardından cihazı otomatik olarak doğru IoT Central uygulamasına bağlar. İsteğe bağlı olarak, cihaza veri göndermeye başlamadan önce bir işlecin bir operatör tarafından onaylanması gerekir.
İpucu
Yönetim > cihaz bağlantısı sayfasında, otomatik onaylama seçeneği bir işlecin, verileri göndermeye başlayabilmesi için cihazı el ile onaylaması gerekip gerekmediğini denetler.
X.509 sertifikalarını kullanan cihazları otomatik olarak kaydetme
X.509kayıt grubunuz için eklenen kök veya ara sertifikayı kullanarak cihazlarınız için yaprak sertifikaları oluşturma. Yaprak sertifikalarda cihaz
CNAMEkimliklerini olarak kullanın. Cihaz kimliği harf, sayı ve karakter-içerebilir.OEM olarak, her cihazı cihaz kimliğine, oluşturulan bir X.509 yaprak sertifikasına ve uygulama kimliği kapsam değerine sahip olarak yanıp söner. Cihaz kodu, uygulayan cihaz modelinin model kimliğini de göndermektedir.
Bir cihaza geçiş yapmak için ilk olarak DPS'ye bağlanarak cihaz IoT Central bilgilerini alabilir.
Cihaz, uygulamanıza bağlanmak ve uygulamanıza kaydolmak için DPS'IoT Central kullanır.
Uygulama IoT Central, kayıtlı cihazı bir cihaz şablonuyla ilişkilendirmek için cihaz tarafından gönderilen model kimliğini kullanır.
SAS belirteçleri kullanan cihazları otomatik olarak kaydetme
SAS-IoT-Devices kayıt grubundan grup birincil anahtarını kopyalayın:
Cihaz
az iot central device compute-device-keySAS anahtarlarını oluşturmak için komutunu kullanın. Önceki adımdan grup birincil anahtarını kullanın. Cihaz kimliği harf, sayı ve karakter-içerebilir:az iot central device compute-device-key --primary-key <enrollment group primary key> --device-id <device ID>OEM olarak, her cihazı cihaz kimliği, oluşturulan cihaz SAS anahtarı ve uygulama kimliği kapsam değeriyle flash olarak gösterir. Cihaz kodu, uygulayan cihaz modelinin model kimliğini de göndermektedir.
Bir cihaza geçiş yapmak için önce DPS'ye bağlanarak cihaz kayıt IoT Central alınır.
Cihaz, uygulamanıza bağlanmak ve uygulamanıza kaydolmak için DPS'IoT Central kullanır.
Uygulama IoT Central, kayıtlı cihazı bir cihaz şablonuyla ilişkilendirmek için cihaz tarafından gönderilen model kimliğini kullanır.
Cihazları önceden toplu kaydetme
Uygulamanıza çok sayıda cihaz kaydetmek IoT Central, cihaz kimliklerini ve cihaz adlarını içeri aktaran bir CSV dosyası kullanın.
Cihazlarınız kimlik doğrulaması için SAS belirteçleri kullanıyorsa, uygulamanıza bir CSV IoT Central aktarın. Dışarı aktarıldı CSV dosyası, cihaz kimliklerini ve SAS anahtarlarını içerir.
Cihazlarınız kimlik doğrulaması için X.509 sertifikalarını kullanıyorsa, X.509 kayıt grubunuza yüklediğiniz kök veya ara sertifikayı kullanarak cihazlarınız için X.509 yaprak sertifikaları üretin. Yaprak sertifikalarda değer olarak içe CNAME aktarılmış cihaz kimliklerini kullanın.
Cihazlar, uygulamanız için Kimlik Kapsamı değerini kullanmalı ve bağlana bir model kimliği göndermektedir.
İpucu
Kimlik Kapsamı değerini Yönetim ve Cihaz bağlantısı > bulabilirsiniz.
Tek bir cihazı önceden kaydetme
Bu yaklaşım, cihaz veya test cihazlarıyla deneme IoT Central yararlıdır. Tek bir cihazı kaydetmek için Cihazlar sayfasında + Yeni'yi seçin. Cihazı uygulamanıza bağlamak için cihaz bağlantısı SAS anahtarlarını IoT Central kullanabilirsiniz. Kayıtlı bir cihazın bağlantı bilgilerinden cihaz SAS anahtarını kopyalayın:

Bir cihazı cihaz şablonuyla ilişkilendirme
IoT Central cihaz bağlandığında cihazı bir cihaz şablonuyla otomatik olarak ilişkilendirebilirsiniz. Cihaz bağlandığında bir model kimliği gönderir. IoT Central model kimliğini kullanarak ilgili cihaz modeline yönelik cihaz şablonunu tanımlayabilirsiniz. Bulma işlemi aşağıdaki gibi çalışır:
- Cihaz şablonu IoT Central zaten yayımlanmışsa, cihaz cihaz şablonuyla ilişkilendirilmektedir.
- Cihaz şablonu henüz IoT Central uygulamasında yayım IoT Central genel model deposunda cihaz modelini aramaz. Modeli IoT Central, temel bir cihaz şablonu oluşturmak için kullanır.
- Bu IoT Central modeli genel model deposunda bulamazsa, cihaz Ilişkilendirilmemiş olarak işaretlenir. Operatör, cihaz için bir cihaz şablonu oluşturabilir ve ardından ilişkilendirilmemiş cihazı yeni cihaz şablonuna geçirebilirsiniz veya cihazın gönderdiği verilere göre bir cihaz şablonunu otomatik olarak oluşturabilir.
Aşağıdaki ekran görüntüsünde, bir cihaz şablonunun model kimliğini IoT Central. Cihaz şablonunda bir bileşen seçin ve ardından Kimliği düzenle'yi seçin:
Termostat modelini genel model deposunda görüntü bulabilirsiniz. Model kimliği tanımı şu şekildedir:
"@id": "dtmi:com:example:Thermostat;1"
Cihazı bir cihaz şablonuyla ilişkilendirmek için aşağıdaki DPS yükünü kullanın:
{
"modelId":"dtmi:com:example:TemperatureController;2"
}
DPS yükü hakkında daha fazla bilgi için Öğretici: İstemci uygulaması oluşturma ve uygulama uygulamanıza bağlama öğreticisinde kullanılan Azure IoT Central bakın.
Cihaz durumu değerleri
Gerçek bir cihaz uygulamanıza bağlandığında IoT Central durumu aşağıdaki gibi değişir:
Cihaz durumu ilk olarak Kayıtlı'dır. Bu durum, cihazın IoT Central ve cihaz kimliğine sahip olduğu anlamına gelir. Cihaz şu zaman kaydedilir:
- Cihazlar sayfasına yeni bir gerçek cihaz eklenir.
- Cihazlar sayfasında İçeri Aktar kullanılarak bir cihaz kümesi eklenir.
Geçerli kimlik bilgileriyle uygulamanıza bağlanan cihaz sağlama adımını IoT Central cihaz durumu Sağlandı olarak değişir. Bu adımda, cihaz dps kullanarak uygulamanıza göre kullanılan IoT Hub bağlantı dizesini otomatik IoT Central alır. Cihaz artık IoT Central göndermeye başlayabilir.
Operatör bir cihazı engelleyebilir. Cihaz engellenmiş olduğunda uygulamanıza veri IoT Central. Engellenen cihazlar Engellendi durumuna sahip. Operatörün veri göndermeye devam etmek için cihazı sıfırlaması gerekir. Operatör bir cihazın engelini kaldırıyorsa, durum kayıtlı veya Sağlandı olan önceki değerine döner.
Cihaz durumu Onay Bekleniyor ise, Otomatik onayla seçeneğinin devre dışı olduğu anlamına gelir. Operatör, veri göndermeye başlamadan önce cihazı açıkça onaylaması gerekir. Cihazlar sayfasında cihazlar el ile kayıtlı değildir, ancak geçerli kimlik bilgileriyle bağlantılı cihazlar Onay Bekleniyor durumuna sahip olur. Operatörler, Bu cihazları Cihazlar sayfasından Onayla düğmesini kullanarak onaylar.
Cihaz durumu İlişkilendirilmemiş ise, cihaza bağlanan IoT Central ilişkili bir cihaz şablonuna sahip değil demektir. Bu durum genellikle aşağıdaki senaryolarda gerçekleşir:
- Cihaz şablonu belirtmeden Cihazlar sayfasında İçeri Aktar kullanılarak bir cihaz kümesi eklenir.
- Cihaz şablonu belirtmeden Cihazlar sayfasında bir cihaz el ile kaydedilmiştir. Cihaz daha sonra geçerli kimlik bilgileriyle bağlanır.
Operatör, Geçir düğmesini kullanarak Cihazlar sayfasından bir cihazı bir cihaz şablonuyla ilişkilendiriltir.
Cihaz bağlantı durumu
Bir cihaz veya uç cihaz MQTT protokolünü kullanarak bağlandığında, cihaz için bağlı ve bağlantısı kesilmiş olaylar oluşturulur. Bu olaylar cihaz tarafından gönderilmez, bunlar cihaz tarafından dahili olarak IoT Central.
Aşağıdaki diyagramda, bir cihaz bağlandığında bağlantının zaman penceresinin sonunda nasıl kayded olduğu gösterilir. Birden çok bağlantı ve bağlantı kesilmesi IoT Central zaman penceresinin sonuna en yakın olanı kaydetmesi gerekir. Örneğin, bir cihaz zaman penceresi içinde bağlantısını keser ve yeniden bağlanırsa IoT Central olayı kaydedebilirsiniz. Şu anda zaman penceresi yaklaşık bir dakikadır.
Cihaz bağlantı durumunu izleme hakkında daha fazla bilgi edinmek için aşağıdaki videoyu izleyin:
bağlantı ve bağlantı kesme olaylarını verilerden dışarı aktarmalara IoT Central. Daha fazla bilgi için bkz. React bağlantısı IoT Hub ve >bağlantısı kesilmiş olaylar için sınırlamalar.
SDK desteği
Azure Cihaz SDK'ları, cihaz kodunuzu uygulamanın en kolay yolunu sunar. Aşağıdaki cihaz SDK'leri kullanılabilir:
- C için Azure IoT SDK'sı
- Python için Azure IoT SDK'sı
- Node.js için Azure IoT SDK'sı
- Java için Azure IoT SDK'sı
- .NET için Azure IoT SDK'sı
SDK özellikleri ve IoT Hub bağlantısı
IoT Hub tüm cihaz iletişimi, aşağıdaki IoT Hub seçeneklerini kullanır:
Aşağıdaki tabloda, cihaz özelliklerinin Azure IoT Central özellikleriyle nasıl eş IoT Hub özetlenmiştir:
| Azure IoT Central | Azure IoT Hub |
|---|---|
| Telemetri | Cihazdan buluta mesajlaşma |
| Çevrimdışı komutlar | Buluttan cihaza mesajlaşma |
| Özellik | Cihaz ikizi bildirilen özellikler |
| Özellik (yazılabilir) | İstenen ve bildirilen cihaz ikizi özellikleri |
| Komut | Doğrudan yöntemler |
Protokoller
Cihaz SDK'leri, bir IoT hub'a bağlanmak için aşağıdaki ağ protokollerini destekler:
- MQTT
- AMQP
- HTTPS
Bu fark protokolleri hakkında bilgi ve birini seçme hakkında rehberlik için bkz. İletişim protokolü seçme.
Cihazınız desteklenen protokollerden herhangi birini kullanamaysa, protokol dönüştürmesi Azure IoT Edge için bu protokolleri kullanın. IoT Edge, işlemeyi Azure IoT Central uygulamasından boşaltmak için uçta zeka senaryolarını destekler.
Güvenlik
Cihazlarla verileriniz arasında alışverişi yapılan tüm Azure IoT Central şifrelenir. IoT Hub, cihaza yönelik tüm uç noktalara bağlanan bir cihazdan gelen her isteğin IoT Hub doğrular. Kimlik bilgilerinin kablo üzerinden alışverişten kaçınmak için cihaz kimlik doğrulaması için imzalı belirteçleri kullanır. Daha fazla bilgi için bkz. IoT Hub.
Sonraki adımlar
Önerilen sonraki adımlardan bazıları:
- Cihaz geliştirmeye yönelik en iyi yöntemleri gözden geçirme.
- Öğretici: İstemci uygulaması oluşturma ve uygulama uygulamanıza bağlama öğreticisinde SAS belirteçlerini kullanmayı gösteren bazı Azure IoT Central gözden geçirme
- Node.js Application için Node.js cihaz SDK'sını kullanarak X.509 sertifikalarını kullanarak cihazları IoT Central öğrenin
- Azure CLI kullanarak cihaz bağlantısını izleme hakkında bilgi edinin
- Cihaz ve Azure IoT Edge hakkında bilgi Azure IoT Central