Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az IoT Hub fájlfeltöltéseinek konfigurálásával a csatlakoztatott eszközök fájlokat tölthetnek fel egy Azure Storage-fiókba. Ez a cikk bemutatja, hogyan konfigurálhatja a fájlfeltöltéseket az IoT Hubon az Azure Portal, az Azure CLI és az Azure PowerShell használatával.
Az IoT Hub fájlfeltöltési funkciójának használatához először egy Azure-tárfiókot és blobtárolót kell társítania az IoT Hubhoz. Az IoT Hub automatikusan létrehozza a blobtároló írási engedélyekkel rendelkező SAS-URI-jait a fájlok feltöltésekor használni kívánt eszközök számára. A tárfiók és a blobtároló mellett beállíthatja az SAS URI élettartamát és az IoT Hub által az Azure Storage-ban használt hitelesítés típusát. Az IoT Hub által a háttérszolgáltatásoknak kézbesíthető opcionális fájlfeltöltési értesítések beállításait is konfigurálhatja.
Előfeltételek
Aktív Azure-fiók. Ha nincs fiókja, néhány perc alatt létrehozhat egy ingyenes fiókot.
IoT Hub az Azure-előfizetésben. Ha még nem rendelkezik központokkal, kövesse az Azure IoT Hubok létrehozása és kezeléseIoT Hub létrehozása szakasz lépéseit.
Az IoT Hub konfigurálása az Azure Portalon
Az Azure Portalon lépjen az IoT Hubra, és válassza a Fájlfeltöltés lehetőséget a fájlfeltöltési tulajdonságok megjelenítéséhez. Ezután válassza az Azure Storage-tárolót a Tároló beállításai csoportban.
Válasszon ki egy Azure Storage-fiókot és blobtárolót az aktuális előfizetésben az IoT Hubhoz való társításához. Szükség esetén létrehozhat egy Azure Storage-fiókot a Tárfiókok panelen, és létrehozhat egy blobtárolót a Tárolók panelen.
Miután kiválasztott egy Azure Storage-fiókot és blobtárolót, konfigurálja a fájlfeltöltés többi tulajdonságát.
Értesítések fogadása a feltöltött fájlokról: Engedélyezze vagy tiltsa le a fájlfeltöltési értesítéseket a váltógombbal.
SAS TTL: Ez a beállítás az IoT Hub által az eszközre visszaadott SAS URI-k élettartamát jelenti. Alapértelmezés szerint egy órára van állítva, de a csúszka használatával más értékekre is testre szabható.
Alapértelmezett TTL: A fájlfeltöltési értesítés élettartamáról szóló értesítés, mielőtt lejárt volna. Alapértelmezés szerint egy napra van állítva, de a csúszka használatával más értékekre is testre szabható.
Maximális kézbesítési szám: Az IoT Hub hányszor kísérel meg fájlfeltöltési értesítést kézbesíteni. Alapértelmezés szerint 10 értékre van állítva, de a csúszkával más értékekre is testre szabható.
Hitelesítési típus: Az Azure IoT Hub alapértelmezés szerint kulcsalapú hitelesítést használ az Azure Storage-hoz való csatlakozáshoz és engedélyezéshez. A felhasználó által hozzárendelt vagy rendszer által hozzárendelt felügyelt identitásokat is konfigurálhatja az Azure IoT Hub azure Storage-beli hitelesítéséhez. A kezelt identitások az Azure-szolgáltatásokat a Microsoft Entra ID-ban automatikusan kezelt identitással látják el biztonságos módon. A felügyelt identitások konfigurálásáról a felügyelt identitások IoT Hub-támogatásáról olvashat. Miután konfigurált egy vagy több felügyelt identitást az Azure Storage-fiókjában és az IoT Hubon, választhat egyet az Azure Storage-hitelesítéshez a rendszer által hozzárendelt vagy felhasználó által hozzárendelt gombokkal.
Feljegyzés
A hitelesítési típusbeállítás konfigurálja, hogy az IoT Hub hogyan hitelesít az Azure Storage-fiókkal. Az eszközök mindig az IoT Hubról kapott SAS URI használatával hitelesítik az Azure Storage-t.
Válassza a Save (Mentés) lehetőséget a beállítások mentéséhez. Győződjön meg arról, hogy ellenőrizze a megerősítést a sikeres befejezéshez. Egyes beállítások, például a hitelesítés típusa csak a beállítások mentése után lesznek érvényesítve.
Előfeltételek
Aktív Azure-fiók. Ha nincs fiókja, néhány perc alatt létrehozhat egy ingyenes fiókot.
IoT Hub az Azure-előfizetésben. Ha még nem rendelkezik központokkal, kövesse az Azure IoT Hubok létrehozása és kezeléseIoT Hub létrehozása szakasz lépéseit.
Egy Azure Storage-fiók blobtárolóval. Ha nem rendelkezik Azure Storage-fiókkal, az Azure CLI használatával létrehozhat egyet. További információ: Azure Storage-fiók létrehozása.
Használja a Bash-környezetet az Azure Cloud Shellben. További információ: Az Azure Cloud Shell használatának első lépései.
Ha a CLI referencia parancsokat helyben szeretnéd futtatni, telepítsd az Azure CLI-t. Ha Windows vagy macOS rendszeren fut, fontolja meg az Azure CLI-t egy Docker-konténerben futtatni. További információkért lásd: Az Azure CLI használata Docker-konténerben.
Ha egy helyileg telepített verziót használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. Az azonosítási folyamat befejezéséhez kövesse a terminálján megjelenő lépéseket. További bejelentkezési lehetőségekért lásd: Hitelesítés az Azure-ba az Azure CLI használatával.
Amikor megjelenik a felszólítás, az első használatkor telepítse az Azure CLI bővítményt. További információ a bővítményekről: Bővítmények használata és kezelése az Azure CLI-vel.
Futtasd a az version parancsot, hogy megtudd a telepített verziót és függő könyvtárakat. A legújabb verzióra való frissítéshez futtassa a az upgrade parancsot.
Jelentkezzen be és állítsa be az Azure-fiókját
Jelentkezzen be Azure-fiókjába, és válassza ki előfizetését. Ha Azure Cloud Shellt használ, akkor már be kell jelentkeznie; Azonban előfordulhat, hogy több előfizetés esetén is ki kell választania az Azure-előfizetést.
A parancssorban futtassa az az login parancsot:
az loginKövesse az utasításokat a kóddal történő hitelesítéshez, és jelentkezzen be az Azure-fiókjába webböngészőből.
Ha több Azure-előfizetéssel rendelkezik, az Azure-ba történő bejelentkezéssel hozzáfér a hitelesítő adatokhoz tartozó összes Azure-fiókhoz. A következő az account list paranccsal listázhatja a használni kívánt Azure-fiókokat:
az account listAz alábbi paranccsal válassza ki azt az előfizetést, amellyel futtatni szeretné a parancsokat az IoT Hub létrehozásához. Használhatja az előző parancs kimenetéből származó előfizetésnevet vagy -azonosítót:
az account set --subscription {your subscription name or id}
Tárfiók-hozzáférés konfigurálása
Az alábbi lépések feltételezik, hogy a tárfiókot a Resource Manager üzemi modellel hozta létre, nem pedig a klasszikus üzemi modellel.
Az eszközökről származó fájlfeltöltések konfigurálásához hozzáférési engedélyeket kell adnia az IoT Hubnak az Azure Storage-fiókhoz. A tárfióknak ugyanabban az előfizetésben kell lennie, mint az IoT Hubnak. Szüksége van egy blobtároló nevére is a tárfiókban.
A hozzáférési engedélyek megadásához kulcsalapú vagy identitásalapú hitelesítést is használhat. A Microsoft biztonságosabb megoldásként az identitásalapú hitelesítést javasolja.
Kulcsalapú hitelesítés
Kulcsalapú hitelesítéshez adja meg a tárfiók kapcsolati sztringét. A tárfiók kulcsainak lekéréséhez használja az az storage account show-connection-string parancsot.
Jegyezze fel a connectionString értékét. A kapcsolati sztring a következő kimenethez hasonlóan néz ki:
{
"connectionString": "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName={your_storage_account_name};AccountKey={your_storage_account_key}"
}
Identitásalapú hitelesítés
Az identitásalapú hitelesítéshez használhat rendszer által hozzárendelt felügyelt identitásokat vagy felhasználó által hozzárendelt felügyelt identitásokat. További információ: IoT Hub-támogatás felügyelt identitásokhoz.
Az az role assignment create paranccsal rendeljen hozzá egy szerepkört a felügyelt identitáshoz. További információ: Azure-szerepkör hozzárendelése blobadatokhoz való hozzáféréshez.
Az IoT Hub konfigurálása
Most már konfigurálhatja az IoT Hubot úgy, hogy lehetővé tegye a fájlok feltöltését az IoT Hubra a tárfiók adataival.
A konfigurációhoz a következő értékek szükségesek:
Tároló: Egy blobtároló egy Azure-tárfiókban az aktuális Azure-előfizetésben, amely az IoT Hubhoz társítható. Az előző szakaszban lekérte a szükséges tárfiókadatokat. Az IoT Hub automatikusan létrehozza a blobtároló írási engedélyekkel rendelkező SAS-URI-jait a fájlok feltöltésekor használni kívánt eszközök számára.
Értesítések fogadása a feltöltött fájlokról: Fájlfeltöltési értesítések engedélyezése vagy letiltása.
SAS TTL: Ez a beállítás az IoT Hub által az eszközre visszaadott SAS URI-k élettartamát jelenti. Alapértelmezés szerint egy órára van állítva.
Fájlértesítési beállítások alapértelmezett TTL: A fájlfeltöltési értesítés időtartama, ameddig érvényes, mielőtt lejárna. Alapértelmezés szerint egy napra van állítva.
Fájlértesítések maximális kézbesítési száma: Az IoT Hub hányszor kísérel meg fájlfeltöltési értesítést kézbesíteni. Alapértelmezés szerint 10 értékre van állítva.
Fájlértesítés zárolásának időtartama: A fájlértesítési üzenetsor zárolási időtartama. Alapértelmezés szerint 60 másodperc.
Hitelesítési típus: Az Azure Storage-hoz használandó IoT Hub hitelesítési típusa. Ez a beállítás határozza meg, hogy az IoT Hub hogyan hitelesíti és engedélyezi az Azure Storage-t. Az alapértelmezett érték a kulcsalapú hitelesítés; a rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitás hitelesítési beállításai azonban ajánlottak. A kezelt identitások az Azure-szolgáltatásokat a Microsoft Entra ID-ban automatikusan kezelt identitással látják el biztonságos módon.
Feljegyzés
A hitelesítési típusbeállítás konfigurálja, hogy az IoT Hub hogyan hitelesít az Azure Storage-fiókkal. Az eszközök mindig az IoT Hubról kapott SAS URI használatával hitelesítik az Azure Storage-t.
Az alábbi parancsok bemutatják, hogyan konfigurálhatja a fájlfeltöltési beállításokat az IoT Hubon. Ezek a parancsok külön jelennek meg az egyértelműség kedvéért, de általában egyetlen parancsot adna ki a forgatókönyvhöz szükséges összes paraméterrel. Ott foglalja bele az idézőjeleket, ahol azok megjelennek a parancssorban. Ne vegye bele a kapcsos zárójeleket. Az egyes paraméterekről az az iot hub frissítési parancsának Azure CLI-dokumentációjában olvashat bővebben.
Az alábbi parancs konfigurálja a tárfiókot és a blobtárolót.
az iot hub update --name {your iot hub name} \
--fileupload-storage-connectionstring "{your storage account connection string}" \
--fileupload-storage-container-name "{your container name}"
Az alábbi parancs az SAS URI-időt az alapértelmezett (egy óra) értékre állítja.
az iot hub update --name {your iot hub name} \
--fileupload-sas-ttl 1
Az alábbi parancs engedélyezi a fájlértesítéseket, és beállítja a fájlértesítési tulajdonságokat az alapértelmezett értékekre. (A fájlfeltöltési értesítés élettartamának beállítása egy óra, a zárolás időtartama pedig 60 másodperc.)
az iot hub update --name {your iot hub name} \
--fileupload-notifications true \
--fileupload-notification-max-delivery-count 10 \
--fileupload-notification-ttl 1 \
--fileupload-notification-lock-duration 60
A következő parancs a kulcsalapú hitelesítést konfigurálja:
az iot hub update --name {your iot hub name} \
--fileupload-storage-auth-type keyBased
Az alábbi parancs az IoT Hub rendszer által hozzárendelt felügyelt identitásával konfigurálja a hitelesítést. A parancs futtatása előtt engedélyeznie kell a rendszer által hozzárendelt felügyelt identitást az IoT Hubhoz, és meg kell adnia neki a megfelelő szerepköralapú hozzáférés-vezérlési szerepkört az Azure Storage-fiókjában. További információ a felügyelt identitások IoT Hub-támogatásáról.
az iot hub update --name {your iot hub name} \
--fileupload-storage-auth-type identityBased \
--fileupload-storage-identity [system]
Az alábbi parancsok lekérik az IoT Hubon konfigurált, felhasználó által hozzárendelt felügyelt identitásokat, és az egyikkel konfigurálják a hitelesítést. Ahhoz, hogy a hitelesítéshez felhasználó által hozzárendelt felügyelt identitást használjon, konfigurálnia kell azt az IoT Hubon, és meg kell adnia egy megfelelő szerepköralapú hozzáférés-vezérlési szerepkört az Azure Storage-fiókjában. További részletekért és lépésekért tekintse meg a felügyelt identitások IoT Hub-támogatását.
Ha felhasználó által hozzárendelt felügyelt identitásokat szeretne lekérdezni az IoT Hubon, használja az az iot hub identity show parancsot .
az iot hub identity show --name {your iot hub name} --query userAssignedIdentities
A parancs visszaadja az IoT Hubon konfigurált, felhasználó által hozzárendelt felügyelt identitások gyűjteményét. Az alábbi kimenet egy olyan gyűjteményt jelenít meg, amely egyetlen felhasználó által hozzárendelt felügyelt identitást tartalmaz.
{
"/subscriptions/{your subscription ID}/resourcegroups/{your resource group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{your user-assigned managed identity name}":
{
"clientId": "<client ID GUID>",
"principalId": "<principal ID GUID>"
}
}
Az alábbi parancs a hitelesítést úgy konfigurálja, hogy a felhasználó által hozzárendelt identitást használja.
az iot hub update --name {your iot hub name} \
--fileupload-storage-auth-type identityBased \
--fileupload-storage-identity "/subscriptions/{your subscription ID}/resourcegroups/{your resource group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{your user-assigned managed identity name}"
Az IoT Hub beállításait az alábbi paranccsal tekintheti át:
az iot hub show --name {your iot hub name}
Ha csak a fájlfeltöltési beállításokat szeretné áttekinteni, használja a következő parancsot:
az iot hub show --name {your iot hub name}
--query '[properties.storageEndpoints, properties.enableFileUploadNotifications, properties.messagingEndpoints.fileNotifications]'
A legtöbb esetben a nevesített paraméterek használata az Azure CLI-parancsokban a legegyszerűbb; a paraméterrel azonban fájlfeltöltési --set beállításokat is konfigurálhat. Az alábbi parancsok segítenek megérteni, hogyan.
az iot hub update --name {your iot hub name} \
--set properties.storageEndpoints.'$default'.connectionString="{your storage account connection string}"
az iot hub update --name {your iot hub name} \
--set properties.storageEndpoints.'$default'.containerName="{your storage container name}"
az iot hub update --name {your iot hub name} \
--set properties.storageEndpoints.'$default'.sasTtlAsIso8601=PT1H0M0S
az iot hub update --name {your iot hub name} \
--set properties.enableFileUploadNotifications=true
az iot hub update --name {your iot hub name} \
--set properties.messagingEndpoints.fileNotifications.maxDeliveryCount=10
az iot hub update --name {your iot hub name} \
--set properties.messagingEndpoints.fileNotifications.ttlAsIso8601=PT1H0M0S
Előfeltételek
Aktív Azure-fiók. Ha nincs fiókja, néhány perc alatt létrehozhat egy ingyenes fiókot.
Egy Azure IoT Hub. Ha nincs IoT Hubja, a New-AzIoTHub parancsmaggal létrehozhat egyet, vagy követheti az Azure IoT Hubok létrehozása és kezelése IoT Hubok létrehozása szakasz lépéseit.
Egy Azure-tárfiók. Ha nem rendelkezik Azure Storage-fiókkal, az Azure Storage PowerShell-parancsmagjaival létrehozhat egyet, vagy a portálon tárfiókot hozhat létre.
Ha szeretné, telepítse a PowerShellt helyileg.
- Telepítse az Azure Az PowerShell-modult. (A modul alapértelmezés szerint az Azure Cloud Shell PowerShell-környezetben van telepítve.)
- Connect-AzAccount paranccsal jelentkezzen be a PowerShellbe. Az azonosítási folyamat befejezéséhez kövesse a terminálján megjelenő lépéseket. További bejelentkezési lehetőségekért lásd: Bejelentkezés az Azure PowerShell-lel.
Jelentkezzen be és állítsa be az Azure-fiókját
Jelentkezzen be Azure-fiókjába, és válassza ki előfizetését. Ha Azure Cloud Shellt használ, akkor már be kell jelentkeznie; Azonban előfordulhat, hogy több előfizetés esetén is ki kell választania az Azure-előfizetést.
A PowerShell-parancssorban futtassa a Connect-AzAccount parancsmagot:
Connect-AzAccountHa több Azure-előfizetéssel rendelkezik, az Azure-ba való bejelentkezés hozzáférést biztosít a hitelesítő adataihoz társított összes Azure-előfizetéshez. A Get-AzSubscription paranccsal listázhatja a használni kívánt Azure-előfizetéseket:
Get-AzSubscriptionAz alábbi paranccsal válassza ki azt az előfizetést, amellyel futtatni szeretné a parancsokat az IoT Hub kezeléséhez. Használhatja az előző parancs kimenetéből származó előfizetésnevet vagy -azonosítót:
Select-AzSubscription ` -Name "{your subscription name}"Feljegyzés
A Select-AzSubscription parancs a Select-AzContext aliasa, amely lehetővé teszi a Get-AzSubscription parancs által visszaadott előfizetési nevet (név) vagy előfizetés-azonosítót (id) a Select-AzContext parancshoz szükséges összetettebb környezetnév helyett.
A tárfiók adatainak lekérése
Az alábbi lépések feltételezik, hogy a tárfiókot a Resource Manager üzemi modellel hozta létre, nem pedig a klasszikus üzemi modellel.
Az eszközökről származó fájlfeltöltések konfigurálásához szüksége van egy Azure Storage-fiók kapcsolati sztringére. A tárfióknak ugyanabban az előfizetésben kell lennie, mint az IoT Hubnak. Szüksége van egy blobtároló nevére is a tárfiókban. A Get-AzStorageAccountKey paranccsal kérje le a tárfiókkulcsokat:
Get-AzStorageAccountKey `
-Name {your storage account name} `
-ResourceGroupName {your storage account resource group}
Jegyezze fel a key1 tárfiók kulcsértékét. Az alábbi lépésekben szüksége lesz rá.
Használhat egy meglévő blobtárolót a fájlfeltöltésekhez, vagy létrehozhat egy újat:
A tárfiók meglévő blobtárolóinak listázásához használja a New-AzStorageContext és a Get-AzStorageContainer parancsokat:
$ctx = New-AzStorageContext ` -StorageAccountName {your storage account name} ` -StorageAccountKey {your storage account key} Get-AzStorageContainer -Context $ctxBlobtároló létrehozásához használja a New-AzStorageContext és a New-AzStorageContainer parancsokat:
$ctx = New-AzStorageContext ` -StorageAccountName {your storage account name} ` -StorageAccountKey {your storage account key} New-AzStorageContainer ` -Name {your new container name} ` -Permission Off ` -Context $ctx
Az IoT Hub konfigurálása
Most már konfigurálhatja az IoT Hubot úgy, hogy fájlokat töltsön fel az IoT Hubra a tárfiók adataival.
A konfigurációhoz a következő értékek szükségesek:
Tároló: Egy blobtároló egy Azure-tárfiókban az aktuális Azure-előfizetésben, amely az IoT Hubhoz társítható. Az előző szakaszban lekérte a szükséges tárfiókadatokat. Az IoT Hub automatikusan létrehozza a blobtároló írási engedélyekkel rendelkező SAS-URI-jait a fájlok feltöltésekor használni kívánt eszközök számára.
Értesítések fogadása a feltöltött fájlokról: Fájlfeltöltési értesítések engedélyezése vagy letiltása.
SAS TTL: Ez a beállítás az IoT Hub által az eszközre visszaadott SAS URI-k élettartamát jelenti. Alapértelmezés szerint egy órára van állítva.
Fájlértesítési beállítások alapértelmezett TTL: A fájlfeltöltési értesítés időtartama, ameddig érvényes, mielőtt lejárna. Alapértelmezés szerint egy napra van állítva.
Fájlértesítések maximális kézbesítési száma: Az IoT Hub hányszor kísérel meg fájlfeltöltési értesítést kézbesíteni. Alapértelmezés szerint 10 értékre van állítva.
Az IoT Hub fájlfeltöltési beállításainak konfigurálásához használja a Set-AzIotHub parancsot:
Set-AzIotHub `
-ResourceGroupName "{your iot hub resource group}" `
-Name "{your iot hub name}" `
-FileUploadNotificationTtl "01:00:00" `
-FileUploadSasUriTtl "01:00:00" `
-EnableFileUploadNotifications $true `
-FileUploadStorageConnectionString "DefaultEndpointsProtocol=https;AccountName={your storage account name};AccountKey={your storage account key};EndpointSuffix=core.windows.net" `
-FileUploadContainerName "{your blob container name}" `
-FileUploadNotificationMaxDeliveryCount 10
Feljegyzés
Az IoT Hub alapértelmezés szerint a kapcsolati sztringben lévő fiókkulcs használatával hitelesíti az Azure Storage-ot. A rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitásokat használó hitelesítés is elérhető. A kezelt identitások az Azure-szolgáltatásokat a Microsoft Entra ID-ban automatikusan kezelt identitással látják el biztonságos módon. További információ: IoT Hub-támogatás felügyelt identitásokhoz. Jelenleg nincsenek paraméterek a Set-AzIotHub parancson a hitelesítési típus beállításához.