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 IoT Hub létrehozása című témakörben leírt lépéseket.
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ó.
A fájlértesítési beállítások alapértelmezett TTL-értéke: A fájlfeltöltési értesítés élettartamáról szóló értesítés lejárata előtt. Alapértelmezés szerint egy napra van állítva, de a csúszka használatával más értékekre is testre szabható.
Fájlértesítés 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, 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 IoT Hub létrehozása című témakörben leírt lépéseket.
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ó: Tárfió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 a bejelentkezési 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. Az alábbi paranccsal jelenítheti meg az elérhető 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és 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 IoT Hub létrehozása című témakörben leírt lépéseket.
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.
A fájlértesítési beállítások alapértelmezett TTL-értéke: A fájlfeltöltési értesítés élettartamáról szóló értesítés lejárata előtt. Alapértelmezés szerint egy napra van állítva.
Fájlértesítés 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.