Rövid útmutató: X.509-tanúsítványt szimuláló eszköz kiépítése
Ebben a rövid útmutatóban egy szimulált eszközt hoz létre a Windows-gépen. A szimulált eszköz úgy van konfigurálva, hogy X.509-tanúsítványigazolást használjon a hitelesítéshez. Miután konfigurálta az eszközt, kiépítenie kell azt az IoT Hubon az Azure IoT Hub Device Provisioning Service használatával.
Ha nem ismeri a kiépítés folyamatát, tekintse át a kiépítés áttekintését . Emellett a folytatás előtt végezze el az IoT Hub eszközkiépítési szolgáltatás beállítása az Azure Portallal című cikk lépéseit.
Ez a rövid útmutató egy Windows-alapú munkaállomás megoldását mutatja be. Az eljárásokat azonban Linuxon is végrehajthatja. Linux-példa : Oktatóanyag: A geokésés kiosztása.
Előfeltételek
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Hajtsa végre az IoT Hub Device Provisioning Service azure portallal való beállításának lépéseit.
Az alábbi előfeltételek a Windows fejlesztői környezethez tartoznak. Linux vagy macOS esetén lásd a fejlesztési környezet előkészítése című szakaszt az SDK dokumentációjában.
Telepítse a Visual Studio 2022-t az "Asztali fejlesztés C++ használatával" számítási feladat engedélyezésével. A Visual Studio 2015, a Visual Studio 2017 és a Visual Studio 19 is támogatott. Linux vagy macOS esetén lásd a fejlesztési környezet előkészítése című szakaszt az SDK dokumentációjában.
Telepítse a legújabb CMake buildrendszert. Ellenőrizze, hogy a CMake végrehajtható fájlját hozzáadja-e az elérési úthoz.
Fontos
A telepítés megkezdése előtt győződjön meg arról, hogy a Visual Studio előfeltételei (a Visual Studio és az asztali fejlesztés C++-tal) telepítve vannak a
CMake
számítógépen. Ha az előfeltételek telepítve vannak, és ellenőrizte a letöltött fájlt, telepítse a CMake buildelési rendszert. Vegye figyelembe azt is, hogy a CMake buildrendszer régebbi verziói nem tudják létrehozni a cikkben használt megoldásfájlt. Ügyeljen arra, hogy a CMake legújabb verzióját használja.
Az alábbi előfeltételek a Windows fejlesztői környezethez tartoznak. Linux vagy macOS esetén lásd a fejlesztési környezet előkészítése című szakaszt az SDK dokumentációjában.
Telepítse a .NET SDK 6.0-s vagy újabb verzióját Windows-alapú gépére. A verzió ellenőrzéséhez használja az alábbi parancsot.
dotnet --info
Az alábbi előfeltételek a Windows fejlesztői környezethez tartoznak. Linux vagy macOS esetén lásd a fejlesztési környezet előkészítése című szakaszt az SDK dokumentációjában.
- Telepítse Node.js 4.0-s vagy újabb verzióját a gépére.
Az alábbi előfeltételek a Windows fejlesztői környezethez tartoznak.
- Python 3.6 vagy újabb a számítógépen.
Az alábbi előfeltételek a Windows fejlesztői környezethez tartoznak. Linux vagy macOS esetén lásd a fejlesztési környezet előkészítése című szakaszt az SDK dokumentációjában.
Telepítse a Java Standard kiadás Development Kit 8 vagy újabb verzióját a gépére.
Töltse le és telepítse a Mavent.
Telepítse a Git legújabb verzióját. Győződjön meg arról, hogy a Git hozzá van adva a parancsablakhoz elérhető környezeti változókhoz. Tekintse meg a Software Freedom Conservancy Git-ügyféleszközeit a telepíteni kívánt eszközök legújabb verziójához
git
, amely tartalmazza a Git Basht, a helyi Git-adattárral való interakcióhoz használható parancssori alkalmazást.Győződjön meg arról, hogy az OpenSSL telepítve van a gépen. Windows rendszeren a Git telepítése tartalmazza az OpenSSL telepítését. Az OpenSSL-t a Git Bash-parancssorból érheti el. Az OpenSSL telepítésének ellenőrzéséhez nyisson meg egy Git Bash-parancssort, és írja be a következőt
openssl version
:Feljegyzés
Ha nem ismeri az OpenSSL-t, és már telepítve van a Windows rendszerű gépére, javasoljuk, hogy használja az OpenSSL-t a Git Bash-parancssorból. Másik lehetőségként letöltheti a forráskódot, és létrehozhatja az OpenSSL-t. További információt az OpenSSL Letöltések oldalán talál. Vagy letöltheti az előre elkészített OpenSSL-t egy harmadik féltől. További információért tekintse meg az OpenSSL wikit. A Microsoft nem vállal garanciát a harmadik felektől letöltött csomagok érvényességére. Ha az OpenSSL létrehozása vagy letöltése mellett dönt, győződjön meg arról, hogy az OpenSSL bináris elérhető az elérési úton, és hogy a
OPENSSL_CNF
környezeti változó az opensl.cnf fájl elérési útjára van állítva.Nyisson meg egy Windows-parancssort és egy Git Bash-parancssort is.
A rövid útmutató lépései feltételezik, hogy Windows rendszerű gépet és a Git részeként telepített OpenSSL-telepítést használ. A Git Bash parancssorával openSSL-parancsokat és a Windows parancssort ad ki minden máshoz. Ha Linuxot használ, a Bash-rendszerhéj összes parancsát kiadhatja.
A fejlesztőkörnyezet előkészítése
Ebben a szakaszban az Azure IoT C SDK létrehozásához használt fejlesztői környezetet készíti elő. A mintakód megpróbálja kiépíteni az eszközt az eszköz rendszerindítási sorozata során.
Nyisson meg egy webböngészőt, és nyissa meg az Azure IoT C SDK kiadási lapját.
Válassza a Lap tetején található Címkék lapot.
Másolja ki az Azure IoT C SDK legújabb kiadásának címkéjét.
A Windows parancssorában futtassa az alábbi parancsokat az Azure IoT Device SDK for C GitHub-adattár legújabb kiadásának klónozásához. Cserélje le
<release-tag>
az előző lépésben másolt címkére, például:lts_01_2023
.git clone -b <release-tag> https://github.com/Azure/azure-iot-sdk-c.git cd azure-iot-sdk-c git submodule update --init
A művelet végrehajtása több percet is igénybe vehet.
Ha a művelet befejeződött, futtassa a következő parancsokat a
azure-iot-sdk-c
könyvtárból:mkdir cmake cd cmake
A kódminta X.509-tanúsítványt használ az X.509-hitelesítéssel történő igazoláshoz. Futtassa a következő parancsot az SDK azon verziójának létrehozásához, amely a fejlesztői platformra vonatkozik, amely tartalmazza az eszközkiépítési ügyfelet. A rendszer létrehoz egy Visual Studio-megoldást a szimulált eszközhöz a
cmake
címtárban.Az alábbi parancsban használt
-Dhsm_custom_lib
elérési út megadásakor ügyeljen arra, hogy a korábban létrehozott könyvtár táránakcmake
abszolút elérési útját használja. A megjelenített elérési út feltételezi, hogy a C meghajtó gyökérkönyvtárában klónozta a C SDK-t. Ha másik könyvtárat használt, ennek megfelelően módosítsa az elérési utat.
Tipp.
Ha cmake
nem találja a C++ fordítót, a fenti parancs futtatásakor buildelési hibák léphetnek fel. Ha ez történik, futtassa a parancsot a Visual Studio parancssorában.
Ha a build sikeres, az utolsó néhány kimeneti sor az alábbi kimenethez hasonlóan néz ki:
-- Building for: Visual Studio 17 2022 -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.22000. -- The C compiler identification is MSVC 19.32.31329.0 -- The CXX compiler identification is MSVC 19.32.31329.0 ... -- Configuring done -- Generating done -- Build files have been written to: C:/azure-iot-sdk-c/cmake
A Windows parancssorában klónozza az Azure IoT SDK for C# GitHub-adattárat a következő paranccsal:
git clone https://github.com/Azure/azure-iot-sdk-csharp.git
A Windows parancssorában klónozza az Azure IoT SDK-t Node.js GitHub-adattárhoz az alábbi paranccsal:
git clone https://github.com/Azure/azure-iot-sdk-node.git
A Windows parancssorában klónozza az Azure IoT Device SDK for Python GitHub-adattárat a következő paranccsal:
git clone -b v2 https://github.com/Azure/azure-iot-sdk-python.git --recursive
Feljegyzés
Az oktatóanyagban használt minták az azure-iot-sdk-python-adattár v2 ágában találhatók. A Python SDK V3-a elérhető bétaverzióban.
A Windows parancssorában klónozza az Azure IoT Samples for Java GitHub-adattárat az alábbi paranccsal:
git clone https://github.com/Azure/azure-iot-sdk-java.git --recursive
Nyissa meg a gyökérkönyvtárat
azure-iot-sdk-java
, és hozza létre a projektet az összes szükséges csomag letöltéséhez.cd azure-iot-sdk-java mvn install -DskipTests=true
Önaláírt X.509-eszköztanúsítvány létrehozása
Ebben a szakaszban az OpenSSL használatával hozhat létre egy önaláírt X.509-tanúsítványt és egy titkos kulcsot. A rendszer feltölti ezt a tanúsítványt a kiépítési szolgáltatáspéldányba, és ellenőrzi a szolgáltatás.
Figyelemfelhívás
Ebben a rövid útmutatóban az OpenSSL-vel létrehozott tanúsítványokat csak fejlesztési teszteléshez használhatja. Ne használja ezeket a tanúsítványokat éles környezetben. Ezek a tanúsítványok 30 nap után lejárnak, és tartalmazhatnak szigorúan kódolt jelszavakat, például 1234-et. Az éles környezetben való használatra alkalmas tanúsítványok beszerzéséről az Azure IoT Hub dokumentációjában található X.509 CA-tanúsítvány beszerzése című témakörben olvashat.
Hajtsa végre az ebben a szakaszban található lépéseket a Git Bash-parancssorban.
A Git Bash-parancssorban lépjen egy könyvtárba, ahol létre szeretné hozni a tanúsítványokat.
Futtassa az alábbi parancsot:
winpty openssl req -outform PEM -x509 -sha256 -newkey rsa:4096 -keyout device-key.pem -out device-cert.pem -days 30 -extensions usr_cert -addext extendedKeyUsage=clientAuth -subj "//CN=my-x509-device"
Fontos
A tárgynévhez (
//CN=my-x509-device
) megadott további perjel csak a Gittel való sztring windowsos platformokon való feloldásához szükséges.Amikor a PEM-pass kifejezés megadására kérik: használja a pass kifejezést
1234
.Amikor a rendszer kéri a hitelesítést – Írja be a PEM-pass kifejezést:, használja újra a pass kifejezést
1234
.Most létre kell hozni egy nyilvános kulcsú tanúsítványfájlt (device-cert.pem) és titkos kulcsfájlt (device-key.pem) abban a könyvtárban, ahol a
openssl
parancsot futtatta.A tanúsítványfájl tulajdonosi köznapi neve (CN) a következőre
my-x509-device
van állítva: . X.509-alapú regisztrációk esetén a regisztrációs azonosító a köznapi névre van állítva. A regisztrációs azonosító az alfanumerikus karakterek kis- és nagybetűket nem megkülönböztető sztringje, valamint a speciális karakterek:'-'
,'.'
,'_'
,':'
. Az utolsó karakternek alfanumerikusnak vagy kötőjelnek ('-'
) kell lennie. A köznapi névnek meg kell felelnie ennek a formátumnak. A DPS legfeljebb 128 karakter hosszú regisztrációs azonosítókat támogat; az X.509-tanúsítványban azonban a tulajdonos közös nevének maximális hossza 64 karakter. A regisztrációs azonosító ezért X.509-tanúsítványok használatakor legfeljebb 64 karakter hosszúságú lehet.A tanúsítványfájl a Base 64 kódolású. A tanúsítványfájl tulajdonosi köznapi nevének (CN) és egyéb tulajdonságainak megtekintéséhez írja be a következő parancsot:
Certificate: Data: Version: 3 (0x2) Serial Number: 77:3e:1d:e4:7e:c8:40:14:08:c6:09:75:50:9c:1a:35:6e:19:52:e2 Signature Algorithm: sha256WithRSAEncryption Issuer: CN = my-x509-device Validity Not Before: May 5 21:41:42 2022 GMT Not After : Jun 4 21:41:42 2022 GMT Subject: CN = my-x509-device Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public-Key: (4096 bit) Modulus: 00:d2:94:37:d6:1b:f7:43:b4:21:c6:08:1a:d6:d7: e6:40:44:4e:4d:24:41:6c:3e:8c:b2:2c:b0:23:29: ... 23:6e:58:76:45:18:03:dc:2e:9d:3f:ac:a3:5c:1f: 9f:66:b0:05:d5:1c:fe:69:de:a9:09:13:28:c6:85: 0e:cd:53 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: 63:C0:B5:93:BF:29:F8:57:F8:F9:26:44:70:6F:9B:A4:C7:E3:75:18 X509v3 Authority Key Identifier: keyid:63:C0:B5:93:BF:29:F8:57:F8:F9:26:44:70:6F:9B:A4:C7:E3:75:18 X509v3 Extended Key Usage: TLS Web Client Authentication Signature Algorithm: sha256WithRSAEncryption 82:8a:98:f8:47:00:85:be:21:15:64:b9:22:b0:13:cc:9e:9a: ed:f5:93:b9:4b:57:0f:79:85:9d:89:47:69:95:65:5e:b3:b1: ... cc:b2:20:9a:b7:f2:5e:6b:81:a1:04:93:e9:2b:92:62:e0:1c: ac:d2:49:b9:36:d2:b0:21
A mintakódhoz nem titkosított titkos kulcs szükséges. Futtassa a következő parancsot egy titkosítatlan titkos kulcs létrehozásához:
Amikor a device-key.pem: kifejezés megadására kérik, használja ugyanazt a pass kifejezést, amelyet korábban is használt.
1234
Tartsa nyitva a Git Bash-parancssort. A rövid útmutató későbbi részében szüksége lesz rá.
A C#-mintakód x.509-tanúsítványok használatára van beállítva, amelyek jelszóval védett PKCS#12 formátumú fájlban (certificate.pfx
) vannak tárolva. A rövid útmutató későbbi részében még szüksége lesz az imént létrehozott PEM formátumú nyilvános kulcsú tanúsítványfájlra (device-cert.pem
) egy egyéni regisztrációs bejegyzés létrehozásához.
A minta által várt PKCS12 formátumú fájl létrehozásához írja be a következő parancsot:
Amikor a device-key.pem: kifejezés megadására kérik, használja ugyanazt a pass kifejezést, amelyet korábban is használt.
1234
Amikor a rendszer kéri az exportálási jelszó megadását : használja a jelszót
1234
.Amikor a rendszer kéri az Ellenőrzés – Adja meg az exportálási jelszót:, használja újra a jelszót
1234
.Most létre kell hozni egy PKCS12 formátumú tanúsítványfájlt (certificate.pfx) abban a könyvtárban, amelyben a
openssl
parancsot futtatta.Másolja a PKCS12 formátumú tanúsítványfájlt az X.509-eszközkiépítési minta projektkönyvtárába. A megadott elérési út a mintaadattár letöltési helyéhez viszonyítva van.
cp certificate.pfx ./azure-iot-sdk-csharp/provisioning/device/samples/"Getting Started"/X509Sample
A rövid útmutató további részeihez nincs szükség a Git Bash-parancssorra. Ha azonban problémákat tapasztal a későbbi lépések során, érdemes lehet nyitva tartania a tanúsítvány ellenőrzéséhez.
A mintakódhoz nem titkosított titkos kulcs szükséges. Futtassa a következő parancsot egy titkosítatlan titkos kulcs létrehozásához:
Amikor a device-key.pem: kifejezés megadására kérik, használja ugyanazt a pass kifejezést, amelyet korábban is használt.
1234
Másolja az eszköztanúsítványt és a titkosítatlan titkos kulcsot az X.509-eszközkiépítési minta projektkönyvtárába. A megadott elérési út az SDK letöltési helyéhez képest van megadva.
cp device-cert.pem ./azure-iot-sdk-node/provisioning/device/samples cp unencrypted-device-key.pem ./azure-iot-sdk-node/provisioning/device/samples
A rövid útmutató további részeihez nincs szükség a Git Bash-parancssorra. Ha azonban problémákat tapasztal a későbbi lépések során, érdemes lehet nyitva tartania a tanúsítvány ellenőrzéséhez.
Másolja az eszköztanúsítványt és a titkos kulcsot az X.509-eszközkiépítési minta projektkönyvtárába. A megadott elérési út az SDK letöltési helyéhez képest van megadva.
cp device-cert.pem ./azure-iot-sdk-python/samples/async-hub-scenarios cp device-key.pem ./azure-iot-sdk-python/samples/async-hub-scenarios
A rövid útmutató további részeihez nincs szükség a Git Bash-parancssorra. Ha azonban problémákat tapasztal a későbbi lépések során, érdemes lehet nyitva tartania a tanúsítvány ellenőrzéséhez.
A Java-mintakódhoz nem titkosított titkos kulcs szükséges. Futtassa a következő parancsot egy titkosítatlan titkos kulcs létrehozásához:
Amikor a device-key.pem: kifejezés megadására kérik, használja ugyanazt a pass kifejezést, amelyet korábban is használt.
1234
Tartsa nyitva a Git Bash-parancssort. A rövid útmutató későbbi részében szüksége lesz rá.
Eszközregisztráció létrehozása
Az Azure IoT Device Provisioning Service kétféle típusú regisztrációt támogat:
- Regisztrációs csoportok: Több kapcsolódó eszköz regisztrálásához.
- Egyéni regisztrációk: Egyetlen eszköz regisztrálására szolgál.
Ez a cikk bemutatja, hogy egy IoT Hubon kiépíteni kívánt eszköz egyéni regisztrációja.
Jelentkezzen be az Azure Portalra , és keresse meg a Device Provisioning Service-példányt.
A navigációs menü Gépház szakaszában válassza a Regisztrációk kezelése lehetőséget.
Válassza az Egyéni regisztrációk lapot, majd az Egyéni regisztráció hozzáadása lehetőséget.
A Regisztráció hozzáadása lap Regisztráció + kiépítés lapján adja meg a következő információkat a regisztráció részleteinek konfigurálásához:
Mező Leírás Igazolás Az igazolási mechanizmusként válassza az X.509-ügyféltanúsítványokat. X.509-tanúsítványbeállítások Töltsön fel egy vagy két tanúsítványt, amelyekkel ellenőrizheti az eszközt a regisztrációhoz. Kiépítés állapota Jelölje be a Regisztráció engedélyezése jelölőnégyzetet, ha azt szeretné, hogy ez a regisztráció elérhető legyen az eszköz kiépítéséhez. Törölje a jelölőnégyzet jelölését, ha le szeretné tiltani a regisztrációt. Ezt a beállítást később módosíthatja. Szabályzat újraépítése Válasszon újraépítési szabályzatot, amely tükrözi, hogy a DPS hogyan kezelje az újraépítést kérő eszközöket. További információ: Újraépítési szabályzatok. Válassza a Tovább: IoT Hubs lehetőséget.
A Regisztráció hozzáadása lap IoT Hubs lapján adja meg az alábbi információkat annak megállapításához, hogy a regisztráció mely IoT Hubokon helyezhet üzembe eszközöket:
Mező Leírás Cél IoT Hubok Válasszon ki egy vagy több csatolt IoT Hubot, vagy adjon hozzá egy új hivatkozást egy IoT Hubhoz. Ha többet szeretne tudni az IoT Hubok DPS-példányhoz való csatolásáról, olvassa el az IoT Hubok csatolása és kezelése című témakört. Foglalási szabályzat Ha egynél több csatolt IoT Hubot jelölt ki, válassza ki, hogyan szeretné az eszközöket a különböző központokhoz rendelni. A foglalási szabályzatokkal kapcsolatos további információkért tekintse meg a kiosztási szabályzatok használatát ismertető témakört.
Ha csak egy csatolt IoT Hubot jelölt ki, javasoljuk, hogy használja az Egyenletesen súlyozott terjesztési szabályzatot.Válassza a Tovább elemet : Eszközbeállítások
A Regisztráció hozzáadása lap Eszközbeállítások lapján adja meg az alábbi információkat az újonnan kiépített eszközök konfigurálásának meghatározásához:
Mező Leírás Eszközazonosító Adjon meg egy eszközazonosítót, amely hozzá lesz rendelve a kiépített eszközhöz az IoT Hubban. Ha nem ad meg eszközazonosítót, a rendszer a regisztrációs azonosítót fogja használni. IoT Edge Ellenőrizze az IoT Edge engedélyezését a kiépített eszközökön, ha a kiépített eszköz az Azure IoT Edge-et fogja futtatni. Törölje a jelölőnégyzet jelölését, ha ez a regisztráció nem IoT Edge-kompatibilis eszközhöz készült. Eszközcímkék Ezzel a szövegmezővel megadhatja azokat a címkéket, amelyeket alkalmazni szeretne a kiépített eszköz ikereszközére. Kívánt tulajdonságok Ezzel a szövegmezővel megadhatja azokat a kívánt tulajdonságokat, amelyeket alkalmazni szeretne a kiépített eszköz ikereszközére. További információ: Eszközök ikerállapotának megismerése és használata az IoT hubon.
Válassza a Tovább: Ellenőrzés és létrehozás lehetőségre.
A Véleményezés + létrehozás lapon ellenőrizze az összes értéket, majd válassza a Létrehozás lehetőséget.
Az eszközkiépítési kód előkészítése és futtatása
Ebben a szakaszban frissíti a mintakódot, hogy elküldje az eszköz rendszerindítási sorrendjét a Device Provisioning Service-példánynak. Ez a rendszerindítási sorozat az eszközt felismeri és hozzárendeli a DPS-példányhoz csatolt IoT Hubhoz.
Ebben a szakaszban a Git Bash-parancssort és a Visual Studio IDE-t használja.
A kiépítési eszköz kódjának konfigurálása
Ebben a szakaszban frissíti a mintakódot a Device Provisioning Service-példány adataival.
Az Azure Portalon válassza az Eszközkiépítési szolgáltatás Áttekintés lapját.
Másolja ki az azonosító hatókörének értékét.
Indítsa el a Visual Studiót, és nyissa meg az
cmake
azure-iot-sdk-c git-adattár gyökerében létrehozott könyvtárban létrehozott új megoldásfájlt. A megoldásfájl neveazure_iot_sdks.sln
.A Visual Studióhoz készült Megoldáskezelő keresse meg Provision_Samples prov_dev_client_sample > > Forrásfájlokat, és nyissa meg a prov_dev_client_sample.c fájlt.
Keresse meg az
id_scope
állandót, és cserélje le az értéket a 2. lépésben másolt azonosító hatókör értékére.static const char* id_scope = "0ne00000A0A";
Keresse meg a
main()
függvény definícióját ugyanebben a fájlban. Győződjön meg arról, hogy ahsm_type
változó a következőreSECURE_DEVICE_TYPE_X509
van állítva: .SECURE_DEVICE_TYPE hsm_type; //hsm_type = SECURE_DEVICE_TYPE_TPM; hsm_type = SECURE_DEVICE_TYPE_X509; //hsm_type = SECURE_DEVICE_TYPE_SYMMETRIC_KEY;
Mentse a módosításokat.
Kattintson a jobb gombbal a prov_dev_client_sample projektre, és válassza a Beállítás indítási projektként lehetőséget.
Az egyéni HSM-csonkkód konfigurálása
A tényleges biztonságos hardveralapú tárolóval való interakció jellemzői a hardvertől függően változnak. Ennek eredményeképpen a szimulált eszköz által ebben a rövid útmutatóban használt tanúsítvány és titkos kulcs az egyéni hardveres biztonsági modul (HSM) csonkkódjában van kódolva.
Az egyéni HSM-csonkkód frissítése az eszköz identitásának szimulálásához az azonosítóval my-x509-device
:
A Visual Studióhoz készült Megoldáskezelő nyissa meg Provision_Samples custom_hsm_example > > Forrásfájlokat, és nyissa meg a custom_hsm_example.c fájlt.
Frissítse a sztringállandó sztringértékét
COMMON_NAME
az eszköztanúsítvány létrehozásakor használt köznapi névvel.my-x509-device
static const char* const COMMON_NAME = "my-x509-device";
Frissítse az állandó sztring sztringértékét
CERTIFICATE
a korábban létrehozott eszköztanúsítvány, a device-cert.pem használatával.A mintában szereplő tanúsítványszöveg szintaxisának az alábbi mintát kell követnie, és nincs szükség további szóközökre vagy a Visual Studio által végzett elemzésekre.
static const char* const CERTIFICATE = "-----BEGIN CERTIFICATE-----\n" "MIIFOjCCAyKgAwIBAgIJAPzMa6s7mj7+MA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV\n" ... "MDMwWhcNMjAxMTIyMjEzMDMwWjAqMSgwJgYDVQQDDB9BenVyZSBJb1QgSHViIENB\n" "-----END CERTIFICATE-----";
A sztringérték manuális frissítése hibát okozhat. A megfelelő szintaxis létrehozásához másolja és illessze be a következő parancsot a Git Bash-parancssorba, majd nyomja le az ENTER billentyűt. Ez a parancs létrehozza a sztringállandó
CERTIFICATE
érték szintaxisát, és beírja a kimenetbe.sed -e 's/^/"/;$ !s/$/""\\n"/;$ s/$/"/' device-cert.pem
Másolja és illessze be a kimeneti tanúsítvány szövegét az állandó értékhez.
Frissítse az állandó sztringértékét
PRIVATE_KEY
az eszköztanúsítvány titkosítatlan titkos kulcsával( unencrypted-device-key.pem).A titkos kulcs szövegének szintaxisának az alábbi mintát kell követnie további szóközök és a Visual Studio által végzett elemzés nélkül.
static const char* const PRIVATE_KEY = "-----BEGIN RSA PRIVATE KEY-----\n" "MIIJJwIBAAKCAgEAtjvKQjIhp0EE1PoADL1rfF/W6v4vlAzOSifKSQsaPeebqg8U\n" ... "X7fi9OZ26QpnkS5QjjPTYI/wwn0J9YAwNfKSlNeXTJDfJ+KpjXBcvaLxeBQbQhij\n" "-----END RSA PRIVATE KEY-----";
A sztringérték manuális frissítése hibát okozhat. A megfelelő szintaxis létrehozásához másolja és illessze be a következő parancsot a Git Bash-parancssorba, majd nyomja le az ENTER billentyűt. Ez a parancs létrehozza a sztringállandó
PRIVATE_KEY
érték szintaxisát, és beírja a kimenetbe.sed -e 's/^/"/;$ !s/$/""\\n"/;$ s/$/"/' unencrypted-device-key.pem
Másolja és illessze be a kimeneti titkos kulcs szövegét az állandó értékhez.
Mentse a módosításokat.
Kattintson a jobb gombbal a custom_hsm_-_example projektre, és válassza a Build lehetőséget.
Fontos
A custom_hsm_example projektet a következő szakaszban található megoldás létrehozása előtt kell elkészítenie.
Minta futtatása
A Visual Studio menüjében válassza a Debug>Start without debugging (Hibakeresés > Indítás hibakeresés nélkül) lehetőséget a megoldás futtatásához. Ha a rendszer a projekt újraépítését kéri, a futtatás előtt válassza az Igen lehetőséget a projekt újraépítéséhez.
Az alábbi kimenet egy példa a szimulált eszköz
my-x509-device
sikeres indítására és a kiépítési szolgáltatáshoz való csatlakozásra. Az eszköz egy IoT Hubhoz van rendelve, és regisztrálva van:Provisioning API Version: 1.8.0 Registering Device Provisioning Status: PROV_DEVICE_REG_STATUS_CONNECTED Provisioning Status: PROV_DEVICE_REG_STATUS_ASSIGNING Registration Information received from service: contoso-iot-hub-2.azure-devices.net, deviceId: my-x509-device Press enter key to exit:
Ebben a szakaszban a Windows parancssorát használja.
Az Azure Portalon válassza az Eszközkiépítési szolgáltatás Áttekintés lapját.
Másolja ki az azonosító hatókörének értékét.
A Windows parancssorában váltson az X509Sample könyvtárra. Ez a könyvtár az .\azure-iot-sdk-csharp\provisioning\device\samples\getting started\X509Sample könyvtárban található azon a könyvtáron kívül, ahol klónozta a mintákat a számítógépen.
Adja meg a következő parancsot az X.509-es eszközkiépítési minta létrehozásához és futtatásához (cserélje le az
<IDScope>
értéket az előző szakaszban másolt azonosító hatókörére). A tanúsítványfájl alapértelmezés szerint ./certificate.pfx , és kéri a .pfx jelszót.dotnet run -- -s <IDScope>
Ha paraméterként szeretné átadni a tanúsítványt és a jelszót, az alábbi formátumot használhatja.
Feljegyzés
Az alkalmazás futtatása során további paraméterek is átadhatók a TransportType (-t) és a GlobalDeviceEndpoint (-g) módosításához.
dotnet run -- -s 0ne00000A0A -c certificate.pfx -p 1234
Az eszköz a DPS-hez csatlakozik, és egy IoT Hubhoz van rendelve. Ezután az eszköz telemetriai üzenetet küld az IoT Hubnak.
Loading the certificate... Enter the PFX password for certificate.pfx: **** Found certificate: A33DB11B8883DEE5B1690ACFEAAB69E8E928080B CN=my-x509-device; PrivateKey: True Using certificate A33DB11B8883DEE5B1690ACFEAAB69E8E928080B CN=my-x509-device Initializing the device provisioning client... Initialized for registration Id my-x509-device. Registering with the device provisioning service... Registration status: Assigned. Device my-x509-device registered to MyExampleHub.azure-devices.net. Creating X509 authentication for IoT Hub... Testing the provisioned device with IoT Hub... Sending a telemetry message... Finished.
Ebben a szakaszban a Windows parancssorát használja.
Az Azure Portalon válassza az Eszközkiépítési szolgáltatás Áttekintés lapját.
Másolja ki az azonosító hatókörének értékét.
A Windows parancssorában nyissa meg a mintakönyvtárat, és telepítse a minta által igényelt csomagokat. A megjelenített elérési út az SDK klónozási helyéhez viszonyítva jelenik meg.
cd .\azure-iot-sdk-node\provisioning\device\samples npm install
A minta öt környezeti változót használ egy IoT-eszköz hitelesítéséhez és üzembe helyezéséhez a DPS használatával. Ezek a környezeti változók a következők:
Változó neve Leírás PROVISIONING_HOST
A DPS-példányhoz való csatlakozáshoz használandó végpont. Ebben a rövid útmutatóban használja a globális végpontot. global.azure-devices-provisioning.net
PROVISIONING_IDSCOPE
A DPS-példány azonosítójának hatóköre. PROVISIONING_REGISTRATION_ID
Az eszköz regisztrációs azonosítója. Meg kell egyeznie az eszköztanúsítvány tulajdonosának általános nevével. CERTIFICATE_FILE
Az eszköztanúsítvány-fájl elérési útja. KEY_FILE
Az eszköz titkos kulcsfájljának elérési útja. Környezeti változók hozzáadása a globális eszközvégponthoz és az azonosító hatóköréhez. Cserélje le
<id-scope>
a 2. lépésben másolt értékre.set PROVISIONING_HOST=global.azure-devices-provisioning.net set PROVISIONING_IDSCOPE=<id-scope>
Állítsa be az eszközregisztrációs azonosító környezeti változóját. Az IoT-eszköz regisztrációs azonosítójának meg kell egyeznie az eszköztanúsítvány tulajdonosának köznapi nevével. Ha követte az ebben a rövid útmutatóban leírt lépéseket egy önaláírt teszttanúsítvány létrehozásához,
my-x509-device
az az eszköz tulajdonosának neve és regisztrációs azonosítója is.set PROVISIONING_REGISTRATION_ID=my-x509-device
Állítsa be az eszköztanúsítvány és a (titkosítatlan) eszköz titkos kulcsfájljainak környezeti változóit.
set CERTIFICATE_FILE=.\device-cert.pem set KEY_FILE=.\unencrypted-device-key.pem
Futtassa a mintát, és ellenőrizze, hogy az eszköz üzembe helyezése sikeresen megtörtént-e.
node register_x509.js
A következő példához hasonló kimenetnek kell megjelennie:
registration succeeded assigned hub=contoso-hub-2.azure-devices.net deviceId=my-x509-device Client connected send status: MessageEnqueued
Ebben a szakaszban a Windows parancssorát használja.
Az Azure Portalon válassza az Eszközkiépítési szolgáltatás Áttekintés lapját.
Másolja ki az azonosító hatókörét és a globális eszközvégpont értékeit.
A Windows parancssorában nyissa meg a provision_x509.py minta könyvtárát. A megjelenített elérési út az SDK klónozási helyéhez viszonyítva jelenik meg.
cd ./azure-iot-sdk-python/samples/async-hub-scenarios
Ez a minta hat környezeti változót használ egy IoT-eszköz hitelesítésére és üzembe helyezésére a DPS használatával. Ezek a környezeti változók a következők:
Változó neve Leírás PROVISIONING_HOST
A DPS-példányhoz való csatlakozáshoz használt globális végpont. PROVISIONING_IDSCOPE
A DPS-példány azonosítójának hatóköre. DPS_X509_REGISTRATION_ID
Az eszköz regisztrációs azonosítója. Meg kell egyeznie az eszköztanúsítvány tulajdonosának nevével is. X509_CERT_FILE
Az eszköztanúsítvány-fájl elérési útja. X509_KEY_FILE
Az eszköztanúsítvány titkos kulcsfájljának elérési útja. PASS_PHRASE
A tanúsítvány és a titkos kulcsfájl ( 1234
) titkosításához használt pass kifejezés.Adja hozzá a környezeti változókat a globális eszközvégponthoz és az azonosító hatóköréhez.
set PROVISIONING_HOST=global.azure-devices-provisioning.net set PROVISIONING_IDSCOPE=<ID scope for your DPS resource>
Állítsa be a regisztrációs azonosító környezeti változóját. Az IoT-eszköz regisztrációs azonosítójának meg kell egyeznie az eszköztanúsítvány tulajdonosának nevével. Ha követte az ebben a rövid útmutatóban leírt lépéseket egy önaláírt teszttanúsítvány létrehozásához,
my-x509-device
az az eszköz tulajdonosának neve és regisztrációs azonosítója is.set DPS_X509_REGISTRATION_ID=my-x509-device
Állítsa be a tanúsítványfájl, a titkos kulcsfájl és a pass kifejezés környezeti változóit.
set X509_CERT_FILE=./device-cert.pem set X509_KEY_FILE=./device-key.pem set PASS_PHRASE=1234
Tekintse át a provision_x509.py kódját. Ha nem a Python 3.7-es vagy újabb verzióját használja, végezze el az itt említett kódmódosítást a módosítások cseréjéhez
asyncio.run(main())
és mentéséhez.Futtassa a mintát. A minta a DPS-hez csatlakozik, amely az eszközt egy IoT Hubra helyezi. Az eszköz üzembe helyezése után a minta tesztüzeneteket küld az IoT Hubnak.
$ python azure-iot-sdk-python/samples/async-hub-scenarios/provision_x509.py RegistrationStage(RequestAndResponseOperation): Op will transition into polling after interval 2. Setting timer. The complete registration result is my-x509-device TestHub12345.azure-devices.net initialAssignment null Will send telemetry from the provisioned device sending message #4 sending message #7 sending message #2 sending message #8 sending message #5 sending message #9 sending message #1 sending message #6 sending message #10 sending message #3 done sending message #4 done sending message #7 done sending message #2 done sending message #8 done sending message #5 done sending message #9 done sending message #1 done sending message #6 done sending message #10 done sending message #3
Ebben a szakaszban a Windows parancssort és a Git Bash-parancssort is használhatja.
Az Azure Portalon válassza az Eszközkiépítési szolgáltatás Áttekintés lapját.
Másolja ki az azonosító hatókörét és a globális eszközvégpont értékeit.
A Windows parancssorában lépjen a mintaprojekt mappájába. A megjelenített elérési út az SDK klónozási helyéhez viszonyítva
cd .\azure-iot-sdk-java\provisioning\provisioning-device-client-samples\provisioning-X509-sample
Adja meg a kiépítési szolgáltatást és az X.509-identitás adatait a mintakódban. Ezeket az információkat a rendszer a szimulált eszköz igazolása során, az eszközregisztráció előtt használja fel.
Nyissa meg a fájlt
.\src\main\java\samples\com\microsoft\azure\sdk\iot\ProvisioningX509Sample.java
a kedvenc szerkesztőjében.Frissítse a következő értékeket a korábban másolt azonosító hatókörével és a Provisioning Service globális végpontjával .
private static final String idScope = "[Your ID scope here]"; private static final String globalEndpoint = "[Your Provisioning Service Global Endpoint here]"; private static final ProvisioningDeviceClientTransportProtocol PROVISIONING_DEVICE_CLIENT_TRANSPORT_PROTOCOL = ProvisioningDeviceClientTransportProtocol.HTTPS;
Frissítse az állandó sztring értékét
leafPublicPem
a tanúsítvány (device-cert.pem) értékével.A tanúsítvány szövegszintaxisának az alábbi mintát kell követnie további szóközök és karakterek nélkül.
private static final String leafPublicPem = "-----BEGIN CERTIFICATE-----\n" + "MIIFOjCCAyKgAwIBAgIJAPzMa6s7mj7+MA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV\n" + ... "MDMwWhcNMjAxMTIyMjEzMDMwWjAqMSgwJgYDVQQDDB9BenVyZSBJb1QgSHViIENB\n" + "-----END CERTIFICATE-----";
A sztringérték manuális frissítése hibát okozhat. A megfelelő szintaxis létrehozásához másolja és illessze be a következő parancsot a Git Bash-parancssorba, majd nyomja le az ENTER billentyűt. Ez a parancs létrehozza a sztringállandó
leafPublicPem
érték szintaxisát, és beírja a kimenetbe.sed 's/^/"/;$ !s/$/\\n" +/;$ s/$/"/' device-cert.pem
Másolja és illessze be a kimeneti tanúsítvány szövegét az állandó értékhez.
Frissítse az állandó sztringértékét
leafPrivateKey
az eszköztanúsítvány titkosítatlan titkos kulcsával( unencrypted-device-key.pem).A titkos kulcs szövegének szintaxisának az alábbi mintát kell követnie további szóközök és karakterek nélkül.
private static final String leafPrivateKey = "-----BEGIN PRIVATE KEY-----\n" + "MIIJJwIBAAKCAgEAtjvKQjIhp0EE1PoADL1rfF/W6v4vlAzOSifKSQsaPeebqg8U\n" + ... "X7fi9OZ26QpnkS5QjjPTYI/wwn0J9YAwNfKSlNeXTJDfJ+KpjXBcvaLxeBQbQhij\n" + "-----END PRIVATE KEY-----";
A sztringérték manuális frissítése hibát okozhat. A megfelelő szintaxis létrehozásához másolja és illessze be a következő parancsot a Git Bash-parancssorba, majd nyomja le az ENTER billentyűt. Ez a parancs létrehozza a sztringállandó
leafPrivateKey
érték szintaxisát, és beírja a kimenetbe.sed 's/^/"/;$ !s/$/\\n" +/;$ s/$/"/' unencrypted-device-key.pem
Másolja és illessze be a kimeneti titkos kulcs szövegét az állandó értékhez.
Mentse a módosításokat.
Hozza létre a mintát, majd lépjen a
target
mappába.mvn clean install cd target
A build kimenete .jar fájlt a
target
mappában a következő fájlformátummal:provisioning-x509-sample-{version}-with-deps.jar
; például:provisioning-x509-sample-1.8.1-with-deps.jar
. Hajtsa végre a .jar fájlt. Előfordulhat, hogy a következő parancsban le kell cserélnie a verziót.java -jar ./provisioning-x509-sample-1.8.1-with-deps.jar
A minta a DPS-hez csatlakozik, amely az eszközt egy IoT Hubra helyezi. Az eszköz üzembe helyezése után a minta tesztüzeneteket küld az IoT Hubnak.
Starting... Beginning setup. WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance. 2022-05-11 09:42:05,025 DEBUG (main) [com.microsoft.azure.sdk.iot.provisioning.device.ProvisioningDeviceClient] - Initialized a ProvisioningDeviceClient instance using SDK version 2.0.0 2022-05-11 09:42:05,027 DEBUG (main) [com.microsoft.azure.sdk.iot.provisioning.device.ProvisioningDeviceClient] - Starting provisioning thread... Waiting for Provisioning Service to register 2022-05-11 09:42:05,030 INFO (global.azure-devices-provisioning.net-6255a8ba-CxnPendingConnectionId-azure-iot-sdk-ProvisioningTask) [com.microsoft.azure.sdk.iot.provisioning.device.internal.task.ProvisioningTask] - Opening the connection to device provisioning service... 2022-05-11 09:42:05,252 INFO (global.azure-devices-provisioning.net-6255a8ba-Cxn6255a8ba-azure-iot-sdk-ProvisioningTask) [com.microsoft.azure.sdk.iot.provisioning.device.internal.task.ProvisioningTask] - Connection to device provisioning service opened successfully, sending initial device registration message 2022-05-11 09:42:05,286 INFO (global.azure-devices-provisioning.net-6255a8ba-Cxn6255a8ba-azure-iot-sdk-RegisterTask) [com.microsoft.azure.sdk.iot.provisioning.device.internal.task.RegisterTask] - Authenticating with device provisioning service using x509 certificates 2022-05-11 09:42:06,083 INFO (global.azure-devices-provisioning.net-6255a8ba-Cxn6255a8ba-azure-iot-sdk-ProvisioningTask) [com.microsoft.azure.sdk.iot.provisioning.device.internal.task.ProvisioningTask] - Waiting for device provisioning service to provision this device... 2022-05-11 09:42:06,083 INFO (global.azure-devices-provisioning.net-6255a8ba-Cxn6255a8ba-azure-iot-sdk-ProvisioningTask) [com.microsoft.azure.sdk.iot.provisioning.device.internal.task.ProvisioningTask] - Current provisioning status: ASSIGNING Waiting for Provisioning Service to register 2022-05-11 09:42:15,685 INFO (global.azure-devices-provisioning.net-6255a8ba-Cxn6255a8ba-azure-iot-sdk-ProvisioningTask) [com.microsoft.azure.sdk.iot.provisioning.device.internal.task.ProvisioningTask] - Device provisioning service assigned the device successfully IotHUb Uri : MyExampleHub.azure-devices.net Device ID : java-device-01 2022-05-11 09:42:25,057 INFO (main) [com.microsoft.azure.sdk.iot.device.transport.ExponentialBackoffWithJitter] - NOTE: A new instance of ExponentialBackoffWithJitter has been created with the following properties. Retry Count: 2147483647, Min Backoff Interval: 100, Max Backoff Interval: 10000, Max Time Between Retries: 100, Fast Retry Enabled: true 2022-05-11 09:42:25,080 INFO (main) [com.microsoft.azure.sdk.iot.device.transport.ExponentialBackoffWithJitter] - NOTE: A new instance of ExponentialBackoffWithJitter has been created with the following properties. Retry Count: 2147483647, Min Backoff Interval: 100, Max Backoff Interval: 10000, Max Time Between Retries: 100, Fast Retry Enabled: true 2022-05-11 09:42:25,087 DEBUG (main) [com.microsoft.azure.sdk.iot.device.DeviceClient] - Initialized a DeviceClient instance using SDK version 2.0.3 2022-05-11 09:42:25,129 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.mqtt.MqttIotHubConnection] - Opening MQTT connection... 2022-05-11 09:42:25,150 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.mqtt.Mqtt] - Sending MQTT CONNECT packet... 2022-05-11 09:42:25,982 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.mqtt.Mqtt] - Sent MQTT CONNECT packet was acknowledged 2022-05-11 09:42:25,983 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.mqtt.Mqtt] - Sending MQTT SUBSCRIBE packet for topic devices/java-device-01/messages/devicebound/# 2022-05-11 09:42:26,068 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.mqtt.Mqtt] - Sent MQTT SUBSCRIBE packet for topic devices/java-device-01/messages/devicebound/# was acknowledged 2022-05-11 09:42:26,068 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.mqtt.MqttIotHubConnection] - MQTT connection opened successfully 2022-05-11 09:42:26,070 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - The connection to the IoT Hub has been established 2022-05-11 09:42:26,071 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - Updating transport status to new status CONNECTED with reason CONNECTION_OK 2022-05-11 09:42:26,071 DEBUG (main) [com.microsoft.azure.sdk.iot.device.DeviceIO] - Starting worker threads 2022-05-11 09:42:26,073 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - Invoking connection status callbacks with new status details 2022-05-11 09:42:26,074 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - Client connection opened successfully 2022-05-11 09:42:26,075 INFO (main) [com.microsoft.azure.sdk.iot.device.DeviceClient] - Device client opened successfully Sending message from device to IoT Hub... 2022-05-11 09:42:26,077 DEBUG (main) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - Message was queued to be sent later ( Message details: Correlation Id [54d9c6b5-3da9-49fe-9343-caa6864f9a02] Message Id [28069a3d-f6be-4274-a48b-1ee539524eeb] ) Press any key to exit... 2022-05-11 09:42:26,079 DEBUG (MyExampleHub.azure-devices.net-java-device-01-ee6c362d-Cxn7a1fb819-e46d-4658-9b03-ca50c88c0440-azure-iot-sdk-IotHubSendTask) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - Sending message ( Message details: Correlation Id [54d9c6b5-3da9-49fe-9343-caa6864f9a02] Message Id [28069a3d-f6be-4274-a48b-1ee539524eeb] ) 2022-05-11 09:42:26,422 DEBUG (MQTT Call: java-device-01) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - IotHub message was acknowledged. Checking if there is record of sending this message ( Message details: Correlation Id [54d9c6b5-3da9-49fe-9343-caa6864f9a02] Message Id [28069a3d-f6be-4274-a48b-1ee539524eeb] ) 2022-05-11 09:42:26,425 DEBUG (MyExampleHub.azure-devices.net-java-device-01-ee6c362d-Cxn7a1fb819-e46d-4658-9b03-ca50c88c0440-azure-iot-sdk-IotHubSendTask) [com.microsoft.azure.sdk.iot.device.transport.IotHubTransport] - Invoking the callback function for sent message, IoT Hub responded to message ( Message details: Correlation Id [54d9c6b5-3da9-49fe-9343-caa6864f9a02] Message Id [28069a3d-f6be-4274-a48b-1ee539524eeb] ) with status OK Message sent!
Eszközkiépítési regisztráció megerősítése
Annak megtekintéséhez, hogy az eszköz melyik IoT Hubra lett kiépítve, vizsgálja meg a korábban létrehozott egyéni regisztráció regisztrációs adatait:
Az Azure Portalon nyissa meg a Device Provisioning Service-t.
A Gépház menüben válassza a Regisztrációk kezelése lehetőséget.
Válassza ki az egyes regisztrációkat. A korábban létrehozott X.509 regisztrációs bejegyzésnek ( my-x509-device) szerepelnie kell a listában.
Válassza ki a regisztrációs bejegyzést. Az IoT Hub, amelyhez az eszköz hozzá lett rendelve, és az eszközazonosítója regisztrációs állapotban jelenik meg.
Az eszköz ellenőrzése az IoT Hubon:
Az Azure Portalon nyissa meg azt az IoT Hubot, amelyhez az eszköz hozzá lett rendelve.
Az Eszközfelügyelet menüben válassza az Eszközök lehetőséget.
Ha az eszköz kiépítése sikeresen megtörtént, az eszközazonosítónak (my-x509-device) meg kell jelennie a listában, és az Állapot beállítás engedélyezve van. Ha nem látja az eszközt, válassza a Frissítés lehetőséget.
Fontos
Ha módosította az Eszköz kezdeti ikerállapota alapértelmezett értékét az eszköz beléptetési bejegyzésében, az lekérheti és felhasználhatja a kívánt ikerállapotot a központból. További információ: Eszközök ikerállapotának megismerése és használata az IoT hubon
Az erőforrások eltávolítása
Ha folytatni szeretné az eszközügyfél-minta használatát és felderítését, ne törölje az ebben a rövid útmutatóban létrehozott erőforrásokat. Ha nem tervezi a folytatást, az alábbi lépésekkel törölheti a rövid útmutató által létrehozott összes erőforrást.
Eszközregisztráció törlése
Zárja be az eszközügyfél minta kimeneti ablakát a gépen.
Az Azure Portal bal oldali menüjében válassza a Minden erőforrás lehetőséget.
Válassza ki az Eszközkiépítési szolgáltatást.
A Gépház menüben válassza a Regisztrációk kezelése lehetőséget.
Válassza az Egyéni regisztrációk lapot.
Jelölje be az ebben a rövid útmutatóban regisztrált eszköz regisztrációs azonosítója melletti jelölőnégyzetet.
Az oldal tetején válassza a Törlés lehetőséget.
Eszközregisztráció törlése az IoT Hubról
Az Azure Portal bal oldali menüjében válassza a Minden erőforrás lehetőséget.
Válassza ki az IoT Hubot.
Az Explorers menüben válassza az IoT-eszközök lehetőséget.
Jelölje be az ebben a rövid útmutatóban regisztrált eszköz eszközazonosítója melletti jelölőnégyzetet.
Az oldal tetején válassza a Törlés lehetőséget.
Következő lépések
Ebben a rövid útmutatóban egyetlen eszközt adott ki az IoT Hubra egy egyéni regisztrációval. Ezután megtudhatja, hogyan építhet ki több eszközt több központban.