Bir cihazı Message Queuing Telemetry Transport (MQTT) ağ geçidi kullanarak IoT Platform'a bağlamak istiyorsanız öncelikle bir MQTT ağ geçidi oluşturmanız gerekir. Bu konuda MQTT ağ geçidinin nasıl oluşturulacağı açıklanmaktadır.
Önkoşullar
Özel Kurumsal Sürüm örneği satın alınmış olmalıdır. Örnek satın alma hakkında bilgi için bkz. Kurumsal örnek satın alma.
Arka plan bilgileri
Ağ geçidinin kullanımı hakkında bilgi için bkz. Cihazı IoT Platform'a bağlamak için MQTT ağ geçidi kullanma.
Ağ geçidi oluşturma
Şuraya gidin: IoT Platform konsolu.
Overview sekmesinde yönetmek istediğiniz Özel Kurumsal Sürüm örneğini tıklayın.
Sol gezinme bölmesinde seçeneğini belirleyin. Açılan sayfada Add Gateway seçeneğini tıklayın.
-
Basic Information adımında parametreleri yapılandırın ve Next seçeneğini tıklayın. Parametreler aşağıdaki tabloda açıklanmıştır.
Parameter
Description
Gateway Name
Ağ geçidinin adıdır. Ad, örnek içinde benzersiz olmalıdır. Ad 4 ila 30 karakter uzunluğunda olmalı ve harf, rakam ile alt çizgi (_) içerebilir.
Protocol
MQTT seçeneğini belirleyin.
Custom Port Number
Geçerli değerler: 1024 ila 65535. Varsayılan değer: 1883.
Enable Data Parsing
Ağ geçidi cihazları için veri ayrıştırma özelliğinin etkinleştirilip etkinleştirilmeyeceğini belirtin.
IoT Platform, ağ geçidi cihazlarının verilerini doğrudan iletir. İş gereksinimlerinize göre veri ayrıştırma özelliğini etkinleştirebilirsiniz. Veri ayrıştırma betiğinde
transformPayload()yöntemini uygulayarak cihaz tarafından gönderilen ham verileri standart JSON formatına veya Thing Specification Language (TSL) modelleri için Alink protokolünde tanımlanan veri formatına dönüştürebilirsiniz. Veri ayrıştırma özelliği hakkında daha fazla bilgi için bkz. Mesaj ayrıştırma nedir.Authentication Type
One-party Verification
Bu seçeneği belirlerseniz cihazın doğrulama bilgilerini IoT Platform'a aktarmanız gerekir. Doğrulama bilgileri cihazın kullanıcı adını, parolasını ve seri numarasını (SN) içerir. IoT Platform, cihaza bu bilgilere dayanarak doğrulama uygular.
Third-party Certification
Bu seçeneği belirlerseniz kullanmak istediğiniz üçüncü taraf doğrulama hizmetini belirtmeniz gerekir. Alibaba Cloud Function Compute veya HTTPS tabanlı bir cihaz doğrulama hizmeti seçebilirsiniz. Alibaba Cloud Function Compute hakkında daha fazla bilgi için bkz. Function Compute nedir?
Alibaba Cloud Function Compute: Bu seçeneği belirlerseniz Device-verified FC Service, Device-verified FC Function ve Authorize parametrelerini yapılandırmanız gerekir. Cihaz doğrulaması için mevcut bir Function Compute işlevini seçebilir veya yeni bir işlev oluşturabilirsiniz. Oluşturduğunuz işlevin giriş ve çıkış parametrelerinin geçerli olması gerekir. Özel bir işlev adı belirtebilirsiniz. Cihaz doğrulama işlevinin giriş ve çıkış parametreleriyle ilgili gereksinimler hakkında bilgi için bkz. Cihaz doğrulaması için Function Compute işlevi parametreleri.
Create Service seçeneğini tıklayarak Function Compute konsoluna gidin ve bir hizmet oluşturun. Function Compute hizmetleri hakkında bilgi için bkz. Hizmetleri yönetme.
Create Function seçeneğini tıklayarak Function Compute konsoluna gidin ve bir işlev oluşturun. Function Compute işlevleri hakkında bilgi için bkz. İşlevleri yönetme.
AliyunIOTAccessingFCRolerolü yoksa Create RAM Role seçeneğini tıklayarak RAM konsoluna gidin ve rolü oluşturun. RAM rolü oluşturma ve role izin verme hakkında bilgi için bkz. RAM rolü oluşturma.
External HTTPS: Bu seçeneği belirlerseniz HTTPS URL for Device Verification parametresini yapılandırmanız gerekir. Custom Device Verification Parameters isteğe bağlıdır.
Cihaz doğrulama URL'si
https://ile başlamalıdır. IoT Platform, özel cihaz doğrulama hizmetlerini çağırmak için HTTPS istekleri gönderir. HTTP isteklerinin giriş ve çıkış parametrelerinin geçerli olması gerekir. Parametre gereksinimleri hakkında bilgi için bkz. Cihaz doğrulaması için HTTPS isteklerinin parametreleri.Anahtar-değer çifti biçiminde en fazla 10 özel cihaz doğrulama parametresi yapılandırabilirsiniz.
Parameter Key: En fazla 64 karakter uzunluğunda olabilen parametre adıdır.
Parameter Value: En fazla 64 karakter uzunluğunda olabilen parametre değeridir. Parameter Value alanını
${Variable name}biçiminde bir değişkene ayarlayabilirsiniz. Aşağıdaki değişkenler desteklenir:${username}: Cihazın MQTT bağlantısı kurmak için gönderdiği kullanıcı adıdır.${password}: Cihazın MQTT bağlantısı kurmak için gönderdiği paroladır.${clientId}: Cihazın MQTT bağlantısı kurmak için gönderdiği istemci kimliğidir.${cert.}: Cihaz sertifikasıdır.yerinecn,serialveyaissueryazılabilir.${userProperties.}: CONNECT paketindeki özelUserPropertyverisidir.özel bir alandır.
Enable X.509 certificate-based Device Verification
X.509 sertifikası tabanlı cihaz doğrulamayı etkinleştirme
Enable OCSP parametresinin geçerli değerleri:
Disabled
OCSP Verification for Server Certificate
OCSP Verification for Client Certificate
Client and Server-side OCSP Verification
NotOnline Certificate Status Protocol (OCSP), bir sertifika yetkilisinin (CA) bir sertifikanın iptal durumunu kontrol etmek için kullandığı bir İnternet protokolüdür.
Bir istemci sunucuya mesaj gönderdiğinde sunucu, istemci sertifikası üzerinde OCSP doğrulaması gerçekleştirir. İstemci sertifikası iptal edilmişse sunucu bağlantıyı kapatır.
Önbelleğe alınan OCSP bilgilerinin varsayılan yaşam süresi (TTL) 5 dakika ile 1 saat arasındadır. Önbelleğe alınan OCSP bilgilerinin süresi dolduğunda OCSP bilgileri yeniden alınamadan sunucu tarafındaki OCSP stapling işlemi etkili olmaz.
X.509 sertifikası tabanlı cihaz doğrulamayı devre dışı bırakma
Enable OCSP parametresinin geçerli değerleri:
Disabled
OCSP Verification for Server Certificate
NotOnline Certificate Status Protocol (OCSP), bir sertifika yetkilisinin (CA) bir sertifikanın iptal durumunu kontrol etmek için kullandığı bir İnternet protokolüdür.
Bir istemci sunucuya mesaj gönderdiğinde sunucu, istemci sertifikası üzerinde OCSP doğrulaması gerçekleştirir. İstemci sertifikası iptal edilmişse sunucu bağlantıyı kapatır.
Önbelleğe alınan OCSP bilgilerinin varsayılan yaşam süresi (TTL) 5 dakika ile 1 saat arasındadır. Önbelleğe alınan OCSP bilgilerinin süresi dolduğunda OCSP bilgileri yeniden alınamadan sunucu tarafındaki OCSP stapling işlemi etkili olmaz.
Tablo 1 Cihaz doğrulaması için Function Compute işlevi parametreleri
Type
Parameter
Data type
Required
Description
Request parameters
userName
String
Yes
Cihazın MQTT üzerinden IoT Platform'a bağlanması için gereken kullanıcı adıdır.
Kullanıcı adı 4 ila 32 karakter uzunluğunda olmalı ve harf, rakam, tire (-), alt çizgi (_), at işareti (@), nokta (.) ile iki nokta üst üste (:) içerebilir. Kullanıcı adı ürün içinde benzersiz olmalıdır.
password
String
Yes
Cihazın MQTT üzerinden IoT Platform'a bağlanması için gereken paroladır.
Parola 1 ila 32 karakter uzunluğunda olmalı ve harf, rakam, tire (-), alt çizgi (_), at işareti (@), nokta (.) ile iki nokta üst üste (:) içerebilir.
clientId
String
Yes
Cihazın MQTT üzerinden IoT Platform'a bağlanması için gereken istemci kimliğidir.
certificateCommonName
String
No
X.509 sertifika belirtimindeki commonName alanıdır. Cihazın kimliğini doğrulamak için X.509 sertifikası kullanıyorsanız bu parametreyi yapılandırmanız gerekir.
Response parameters
result
String
Yes
Doğrulama sonucudur. true değeri doğrulamanın başarılı olduğunu, false değeri ise doğrulamanın başarısız olduğunu gösterir.
message
String
No
Doğrulama başarısız olursa döndürülen hata iletisidir.
deviceName
String
No
Doğrulama başarılı olursa kullanıcı adına karşılık gelen DeviceName değeridir.
Bir cihazı ilk kez IoT Platform'a bağladığınızda IoT Platform, deviceName parametresinin dönüş değerine dayanarak bir cihaz oluşturur.
Cihaz doğrulaması için Function Compute işlevinin örnek yanıtı:
{ "result":"true", "deviceName":"device_TH", "message":"" }Tablo 2 Cihaz doğrulaması için HTTPS isteklerinin parametreleri
Type
Parameter
Data type
Required
Description
Example
Request method
Method
String
Yes
Değeri POST olarak ayarlayın.
POST Content-Type: application/json body:{ "username": "UN001", "password": "PW001", "certificateCommonName": "CN001" }Header
Content-Type
String
Yes
HTTPS üstbilgilerinde tanımlanan veri kodlama biçimidir. Yalnızca
application/jsongeçerlidir.Başka bir kodlama biçimi belirtilirse hata oluşur.
Request body
username
String
Yes
Cihazın MQTT üzerinden IoT Platform'a bağlanması için gereken kullanıcı adıdır.
Kullanıcı adı 4 ila 32 karakter uzunluğunda olmalı ve harf, rakam, tire (-), alt çizgi (_), at işareti (@), nokta (.) ile iki nokta üst üste (:) içerebilir. Bir cihazın kullanıcı adı bir ürün içinde benzersiz olmalıdır.
password
String
Yes
Cihazın MQTT üzerinden IoT Platform'a bağlanması için gereken paroladır.
Parola 1 ila 32 karakter uzunluğunda olmalı ve harf, rakam, tire (-), alt çizgi (_), at işareti (@), nokta (.) ile iki nokta üst üste (:) içerebilir.
certificateCommonName
String
No
X.509 sertifika belirtimindeki commonName alanıdır. Cihazın kimliğini doğrulamak için X.509 sertifikası kullanıyorsanız bu parametreyi yapılandırmanız gerekir.
Response body
deviceName
String
Yes
Doğrulama başarılı olursa kullanıcı adına karşılık gelen DeviceName değeridir.
Bir cihazı ilk kez IoT Platform'a bağladığınızda IoT Platform, deviceName parametresinin dönüş değerine dayanarak bir cihaz oluşturur.
body:{ "deviceName": "device_TH" } -
Certificate Configuration adımını tamamlayın ve OK seçeneğini tıklayın.
Sertifikaları yapılandırma
NotBu adımda yapılandırılan sertifikalar PEM formatındadır.
-
Server Certificate ve Private Key of Server Certificate parametrelerini yapılandırmanız gerekir.
MQTT ağ geçidi kullanılarak IoT Platform'a bağlanan bir cihaz yalnızca Transport Layer Security (TLS) protokolünü destekler. İş güvenliğini sağlamak için cihazın bağlandığı orijinal sunucunun CA sertifikasını ve özel anahtarını belirtmeniz gerekir.
Örneğin, sertifika zinciriniz aşağıdaki sırayla düzenlenmiş sertifikaları içeriyorsa: sunucu kök sertifikası, sunucu ara sertifikaları ve sunucu sertifikası. Sunucu ara sertifikaları, Ara Sertifika A ve Ara Sertifika B gibi birden çok ara sertifika katmanı içerebilir. Bu durumda bu adımdaki parametreleri aşağıdaki talimatlara göre yapılandırmanız gerekir:
Server Certificate: Sertifika zincirindeki sertifikaları ters sırada belirtin. Önce sunucu sertifikasını, ardından sunucu ara sertifikalarını (Ara Sertifika B ve Ara Sertifika A) belirtin.
Private Key of Server Certificate: Sunucu sertifikasının özel anahtarını belirtin.
-
X.509 sertifikası tabanlı cihaz doğrulamayı etkinleştirdiyseniz Device Root Certificate parametresini yapılandırmanız gerekir.
Örneğin, sertifika zinciriniz aşağıdaki sırayla düzenlenmiş sertifikaları içeriyorsa: cihaz kök sertifikası, cihaz ara sertifikaları ve cihaz sertifikası. Cihaz ara sertifikaları, Ara Sertifika A ve Ara Sertifika B gibi birden çok ara sertifika katmanı içerebilir. Bu durumda bu adımdaki parametreleri aşağıdaki talimatlara göre yapılandırmanız gerekir:
Device Root Certificate: Sertifika zincirindeki sertifikaları ters sırada belirtin. Önce cihaz ara sertifikalarını (Ara Sertifika B ve Ara Sertifika A), ardından cihaz kök sertifikasını belirtin.
Önceki adımda Enable OCSP parametresini OCSP Verification for Server Certificate veya Client and Server-side OCSP Verification olarak ayarladıysanız bu adımda Trusted Certificate parametresini sunucu kök sertifikasına ayarlamanız gerekir.
-
-
Gateway sayfasında oluşturduğunuz ağ geçidine ait adı, ID, ağ geçidi URL'si, durumu ve ilişkili ürün gibi bilgileri görüntüleyin.
ÖnemliAğ geçidi URL'sini kaydetmeniz gerekir. Bir cihazı MQTT üzerinden IoT Platform'a bağlarken MQTT uç noktasını ağ geçidi URL'siyle değiştirmeniz gerekir. Ağ geçidi URL'sini MQTT uç noktası olarak belirtebilir veya MQTT uç noktasının ağ geçidi URL'sine çözülmesi için bir CNAME kaydı yapılandırabilirsiniz.

(İsteğe bağlı) Ağ geçidini değiştirme
Bir ağ geçidi oluşturduktan sonra Gateway sayfasında ilgili ağ geçidini bulun ve Actions sütunundaki Edit seçeneğini tıklayın. Ağ geçidinin adını, sertifika bilgilerini ve Function Compute işlevini değiştirebilirsiniz.

Sonuç
Bir ağ geçidi oluşturduktan sonra IoT Platform, ağ geçidiyle ilişkili bir ürün oluşturur. Ürün adı Gateway+${Gateway ID} formatındadır. Yeni ürünü görüntülemek için seçeneğini belirleyin. Yeni ürün Products sayfasında görüntülenir.
Ürünün Actions sütunundaki View seçeneğini tıklayın. product details sayfasında aşağıdaki şekilde gösterildiği gibi ürünün ayrıntılarını görüntüleyebilirsiniz.

Sonraki adımlar
-
Authentication Type parametresi Third-party Certification olarak ayarlanmış bir ağ geçidi oluşturup bu ağ geçidini kullanarak bir cihazı ilk kez IoT Platform'a bağladığınızda IoT Platform, deviceName parametresinin dönüş değerini otomatik olarak cihaz adı olarak kullanarak bir cihaz oluşturur.
MQTT.fx kullanarak bir cihazı simüle edebilir ve cihazı ağ geçidi üzerinden IoT Platform'a bağlayarak iletişimi etkinleştirebilirsiniz. Daha fazla bilgi için bkz. MQTT.fx kullanarak cihaz bağlama (cihaz doğrulaması için Function Compute).
Authentication Type parametresi One-party Verification olarak ayarlanmış bir ağ geçidi oluşturduktan sonra cihazları ilgili ağ geçidi ürününe eklemek için cihazların doğrulama bilgilerini aktarmanız gerekir. Daha fazla bilgi için bkz. Cihazları toplu ekleme.