Delen via


IoT Hub-ondersteuning voor beheerde identiteiten

Beheerde identiteiten leveren de Azure-services een automatisch beheerde identiteit in Microsoft Entra ID op een veilige manier. Dit elimineert de noodzaak voor ontwikkelaars om referenties te beheren door een identiteit op te geven. Er zijn twee typen beheerde identiteiten: door het systeem toegewezen en door de gebruiker toegewezen. IoT Hub ondersteunt beide.

In IoT Hub kunnen beheerde identiteiten worden gebruikt om IoT Hub te verbinden met andere Azure-services voor functies zoals berichtroutering, bestandsupload en bulksgewijs importeren/exporteren van apparaten. In dit artikel leert u hoe u door het systeem toegewezen en door de gebruiker toegewezen beheerde identiteiten in uw IoT-hub gebruikt voor verschillende functies.

Vereisten

Door het systeem toegewezen beheerde identiteit

U kunt door het systeem toegewezen beheerde identiteit in- of uitschakelen in Azure Portal

  1. Meld u aan bij de Azure-portal en ga naar uw IoT Hub.

  2. Selecteer Identiteit in de sectie Beveiligingsinstellingen van het navigatiemenu.

  3. Selecteer het tabblad Systeem toegewezen .

  4. Stel de door het systeem toegewezen beheerde identiteitsstatus in op Aan of Uit en selecteer Opslaan.

    Notitie

    U kunt door het systeem toegewezen beheerde identiteit niet uitschakelen terwijl deze wordt gebruikt. Zorg ervoor dat er geen aangepaste eindpunten gebruikmaken van door het systeem toegewezen beheerde identiteitverificatie voordat u de functie uitschakelt.

    Schermopname die laat zien waar door het systeem toegewezen beheerde identiteit voor een IoT-hub moet worden ingeschakeld.

Door de gebruiker toegewezen beheerde identiteit

In deze sectie leert u hoe u een door de gebruiker toegewezen beheerde identiteit toevoegt aan en verwijdert uit een IoT-hub met behulp van Azure Portal.

  1. Eerst moet u een door de gebruiker toegewezen beheerde identiteit maken als een zelfstandige resource. Hiervoor kunt u de instructies volgen in Door de gebruiker toegewezen beheerde identiteiten beheren.

  2. Ga naar uw IoT-hub en navigeer naar de identiteit in de IoT Hub-portal.

  3. Klik op het tabblad Door de gebruiker toegewezen op Een door de gebruiker toegewezen beheerde identiteit koppelen. Kies de door de gebruiker toegewezen beheerde identiteit die u wilt toevoegen aan uw hub en klik vervolgens op Selecteren.

  4. U kunt een door de gebruiker toegewezen identiteit verwijderen uit een IoT-hub. Kies de door de gebruiker toegewezen identiteit die u wilt verwijderen en klik op de knop Verwijderen . Houd er rekening mee dat u deze alleen verwijdert uit De IoT-hub. Met deze verwijdering wordt de door de gebruiker toegewezen identiteit niet als een resource verwijderd. Als u de door de gebruiker toegewezen identiteit als een resource wilt verwijderen, volgt u de instructies in Door de gebruiker toegewezen beheerde identiteiten beheren.

    Schermopname van het toevoegen van door de gebruiker toegewezen beheerde identiteit voor een IoT-hub.

Uitgaande connectiviteit van IoT Hub naar andere Azure-resources

Beheerde identiteiten kunnen worden gebruikt voor uitgaande connectiviteit van IoT Hub met andere Azure-services. U kunt kiezen welke beheerde identiteit moet worden gebruikt voor elke uitgaande IoT Hub-verbinding met eindpunten die eigendom zijn van de klant, waaronder opslagaccounts, Event Hubs en Service Bus-eindpunten.

Notitie

Alleen door het systeem toegewezen beheerde identiteit geeft IoT Hub toegang tot privéresources. Als u een door de gebruiker toegewezen beheerde identiteit wilt gebruiken, moet de openbare toegang voor deze privébronnen worden ingeschakeld om connectiviteit mogelijk te maken.

Berichtroutering configureren met beheerde identiteiten

In deze sectie gebruiken we de berichtroutering naar een aangepast Event Hubs-eindpunt als voorbeeld. Het voorbeeld is ook van toepassing op andere aangepaste routeringseindpunten.

  1. Ga naar uw Event Hub in Azure Portal om de beheerde identiteit de juiste toegang toe te wijzen.

  2. Klik op Toegangsbeheer (IAM) .

  3. Selecteer Roltoewijzing toevoegen.>

    Schermopname van de pagina Toegangsbeheer (IAM) met het menu Roltoewijzing toevoegen geopend.

  4. Selecteer op het tabblad Rol de optie Azure Event Hubs-gegevenszender.

    Notitie

    Voor een opslagaccount selecteert u Inzender voor Opslagblobgegevens (niet Inzender of Inzender voor opslagaccount) als de rol. Selecteer Azure Service Bus-gegevenszender voor een servicebus.

  5. Selecteer op het tabblad Leden, Beheerde identiteit en selecteer vervolgens Leden selecteren.

  6. Voor door de gebruiker toegewezen beheerde identiteiten selecteert u uw abonnement, selecteert u door de gebruiker toegewezen beheerde identiteit en selecteert u vervolgens uw door de gebruiker toegewezen beheerde identiteit.

  7. Selecteer uw abonnement voor door het systeem toegewezen beheerde identiteiten, selecteer alle door het systeem toegewezen beheerde identiteiten en selecteer vervolgens de resourcenaam van uw IoT Hub.

  8. Selecteer op het tabblad Beoordelen en toewijzen de optie Beoordelen en toewijzen om de rol toe te wijzen.

    Zie Azure-rollen toewijzen met behulp van Azure Portal voor meer informatie over roltoewijzingen.

  9. Als u de connectiviteit met uw aangepaste eindpunt wilt beperken via een VNet, moet u de uitzondering van de vertrouwde Microsoft first party inschakelen om uw IoT-hub toegang te geven tot het specifieke eindpunt. Als u bijvoorbeeld een aangepast eindpunt voor een Event Hub toevoegt, gaat u naar het tabblad Firewalls en virtuele netwerken in uw Event Hub en schakelt u Toegang vanuit geselecteerde netwerken in. Schakel onder de lijst Uitzonderingen het selectievakje vertrouwde Microsoft-services toegang tot Event Hubs toestaan in. Klik op de knop Opslaan. Dit geldt ook voor opslagaccounts en servicebus. Meer informatie over ioT Hub-ondersteuning voor virtuele netwerken.

    Notitie

    U moet bovenstaande stappen uitvoeren om de beheerde identiteit de juiste toegang toe te wijzen voordat u de Event Hub toevoegt als een aangepast eindpunt in IoT Hub. Wacht enkele minuten totdat de roltoewijzing is doorgegeven.

  10. Ga vervolgens naar uw IoT-hub. Navigeer in uw hub naar Berichtroutering en selecteer Vervolgens Toevoegen.

  11. Maak op het tabblad Eindpunt een eindpunt voor uw Event Hub door de volgende informatie op te geven:

    Parameter Weergegeven als
    Eindpunttype Selecteer Event Hubs.
    Eindpuntnaam Geef een unieke naam op voor een nieuw eindpunt of selecteer Bestaande selecteren om een bestaand Event Hubs-eindpunt te kiezen.
    Event Hubs-naamruimte Gebruik de vervolgkeuzelijst om een bestaande Event Hubs-naamruimte in uw abonnement te selecteren.
    Event Hub-exemplaar Gebruik de vervolgkeuzelijst om een bestaande Event Hub in uw naamruimte te selecteren.
    Verificatietype Selecteer Door de gebruiker toegewezen en gebruik vervolgens de vervolgkeuzelijst om de door de gebruiker toegewezen identiteit te selecteren die u in uw Event Hub hebt gemaakt.

    Schermopname van het Event Hub-eindpunt met door de gebruiker toegewezen verificatie.

  12. Selecteer Maken + volgende. U kunt doorgaan met de wizard om een route te maken die naar dit eindpunt verwijst, of u kunt de wizard sluiten.

U kunt het verificatietype van een bestaand aangepast eindpunt wijzigen. Gebruik de volgende stappen om een eindpunt te wijzigen:

  1. Selecteer in uw IoT-hub berichtroutering in het linkernavigatiedeelvenster en vervolgens Aangepaste eindpunten.

  2. Schakel het selectievakje in voor het aangepaste eindpunt dat u wilt wijzigen en selecteer vervolgens Verificatietype wijzigen.

  3. Kies het nieuwe verificatietype voor dit eindpunt en selecteer Opslaan.

Bestandsupload configureren met beheerde identiteiten

Met de functie voor het uploaden van bestanden van IoT Hub kunnen apparaten bestanden uploaden naar een opslagaccount dat eigendom is van de klant. Om het uploaden van bestanden naar functie toe te staan, moet IoT Hub verbinding hebben met het opslagaccount. Net als bij berichtroutering kunt u het voorkeursverificatietype en de beheerde identiteit kiezen voor uitgaande ioT Hub-connectiviteit met uw Azure Storage-account.

  1. Ga in Azure Portal naar uw opslagaccount.

  2. Klik op Toegangsbeheer (IAM) .

  3. Selecteer Roltoewijzing toevoegen.>

    Schermopname van de pagina Toegangsbeheer (IAM) met het menu Roltoewijzing toevoegen geopend.

  4. Selecteer op het tabblad Rol de optie Inzender voor opslagblobgegevens. (Selecteer nietInzender of inzender voor opslagaccounts.)

  5. Selecteer op het tabblad Leden, Beheerde identiteit en selecteer vervolgens Leden selecteren.

  6. Voor door de gebruiker toegewezen beheerde identiteiten selecteert u uw abonnement, selecteert u door de gebruiker toegewezen beheerde identiteit en selecteert u vervolgens uw door de gebruiker toegewezen beheerde identiteit.

  7. Selecteer uw abonnement voor door het systeem toegewezen beheerde identiteiten, selecteer alle door het systeem toegewezen beheerde identiteiten en selecteer vervolgens de resourcenaam van uw IoT Hub.

  8. Selecteer op het tabblad Beoordelen en toewijzen de optie Beoordelen en toewijzen om de rol toe te wijzen.

    Zie Azure-rollen toewijzen met behulp van Azure Portal voor meer informatie over roltoewijzingen.

    Als u de connectiviteit met uw opslagaccount via een VNet wilt beperken, moet u de uitzondering van de vertrouwde Microsoft first party inschakelen om uw IoT-hub toegang te geven tot het opslagaccount. Navigeer op de resourcepagina van uw opslagaccount naar het tabblad Firewalls en virtuele netwerken en schakel de optie Toegang vanuit geselecteerde netwerken toestaan in. Schakel onder de lijst Uitzonderingen het selectievakje vertrouwde Microsoft-services toegang tot dit opslagaccount in. Klik op de knop Opslaan. Meer informatie over ioT Hub-ondersteuning voor virtuele netwerken.

    Notitie

    U moet bovenstaande stappen uitvoeren om de beheerde identiteit de juiste toegang toe te wijzen voordat u het opslagaccount opslaat in IoT Hub voor het uploaden van bestanden met behulp van de beheerde identiteit. Wacht enkele minuten totdat de roltoewijzing is doorgegeven.

  9. Navigeer op de resourcepagina van uw IoT Hub naar het tabblad Bestand uploaden .

  10. Selecteer op de pagina die wordt weergegeven de container die u wilt gebruiken in uw blobopslag, configureer de instellingen voor bestandsmeldingen, SAS TTL, standaard-TTL en maximum aantal leveringen naar wens. Kies het gewenste verificatietype en klik op Opslaan. Als er tijdens deze stap een fout optreedt, stelt u tijdelijk uw opslagaccount in om toegang vanuit alle netwerken toe te staan. Probeer het vervolgens opnieuw. U kunt de firewall voor het opslagaccount configureren zodra de configuratie voor het uploaden van bestanden is voltooid.

    Schermopname van het uploaden van bestanden met msi.

    Notitie

    In het scenario voor het uploaden van bestanden moeten zowel hub als uw apparaat verbinding maken met uw opslagaccount. De bovenstaande stappen zijn bedoeld voor het verbinden van uw IoT-hub met uw opslagaccount met het gewenste verificatietype. U moet uw apparaat nog steeds verbinden met opslag met behulp van de SAS-URI. Vandaag wordt de SAS-URI gegenereerd met behulp van verbindingsreeks. We voegen binnenkort ondersteuning toe voor het genereren van SAS-URI met beheerde identiteit. Volg de stappen in het uploaden van bestanden.

Bulksgewijs importeren/exporteren van apparaten configureren met beheerde identiteiten

IoT Hub ondersteunt de functionaliteit voor het bulksgewijs importeren/exporteren van apparaatgegevens van of naar een door de klant geleverde opslagblob. Voor deze functionaliteit is connectiviteit van IoT Hub met het opslagaccount vereist.

  1. Ga in Azure Portal naar uw opslagaccount.

  2. Klik op Toegangsbeheer (IAM) .

  3. Selecteer Roltoewijzing toevoegen.>

    Schermopname van de pagina Toegangsbeheer (IAM) met het menu Roltoewijzing toevoegen geopend.

  4. Selecteer op het tabblad Rol de optie Inzender voor opslagblobgegevens. (Selecteer nietInzender of inzender voor opslagaccounts.)

  5. Selecteer op het tabblad Leden, Beheerde identiteit en selecteer vervolgens Leden selecteren.

  6. Voor door de gebruiker toegewezen beheerde identiteiten selecteert u uw abonnement, selecteert u door de gebruiker toegewezen beheerde identiteit en selecteert u vervolgens uw door de gebruiker toegewezen beheerde identiteit.

  7. Selecteer uw abonnement voor door het systeem toegewezen beheerde identiteiten, selecteer alle door het systeem toegewezen beheerde identiteiten en selecteer vervolgens de resourcenaam van uw IoT Hub.

  8. Selecteer op het tabblad Beoordelen en toewijzen de optie Beoordelen en toewijzen om de rol toe te wijzen.

    Zie Azure-rollen toewijzen met behulp van Azure Portal voor meer informatie over roltoewijzingen

REST API of SDK gebruiken voor import- en exporttaken

U kunt nu de Azure IoT REST API's gebruiken voor het maken van import- en exporttaken. U moet de volgende eigenschappen opgeven in de aanvraagbody:

  • storageAuthenticationType: stel de waarde in op identityBased.
  • inputBlobContainerUri: stel deze eigenschap alleen in de importtaak in.
  • outputBlobContainerUri: stel deze eigenschap in voor zowel de import- als exporttaken.
  • identiteit: Stel de waarde in op de beheerde identiteit die moet worden gebruikt.

Azure IoT Hub SDK's ondersteunen deze functionaliteit ook in registerbeheer van de serviceclient. In het volgende codefragment ziet u hoe u een importtaak of exporttaak initieert met behulp van de C#SDK.

C#-codefragment

    // Create an export job
 
    JobProperties jobProperties = JobProperties.CreateForExportJob(
        outputBlobContainerUri: blobContainerUri,
        excludeKeysInExport: false,
        storageAuthenticationType: StorageAuthenticationType.IdentityBased,
        identity: new ManagedIdentity
        {
            userAssignedIdentity = userDefinedManagedIdentityResourceId
        });
    // Create an import job
    
    JobProperties jobProperties = JobProperties.CreateForImportJob(
        inputBlobContainerUri: blobContainerUri,
        outputBlobContainerUri: blobContainerUri,
        storageAuthenticationType: StorageAuthenticationType.IdentityBased,
        identity: new ManagedIdentity
        {
            userAssignedIdentity = userDefinedManagedIdentityResourceId
        });

Python-codefragment

# see note below
iothub_job_manager = IoTHubJobManager("<IoT Hub connection information>")

# Create an import job
result = iothub_job_manager.create_import_export_job(JobProperties(
    type="import",
    input_blob_container_uri="<input container URI>",
    output_blob_container_uri="<output container URI>",
    storage_authentication_type="identityBased",
    identity=ManagedIdentity(
        user_assigned_identity="<resource ID of user assigned managed identity>"
    )
))

# Create an export job
result = iothub_job_manager.create_import_export_job(JobProperties(
    type="export",
    output_blob_container_uri="<output container URI>",
    storage_authentication_type="identityBased",
    exclude_keys_in_export=True,
    identity=ManagedIdentity(
        user_assigned_identity="<resource ID of user assigned managed identity>"
    ) 
))

Notitie

  • Als storageAuthenticationType is ingesteld op identityBased en de eigenschap userAssignedIdentity niet null is, gebruiken de taken de opgegeven door de gebruiker toegewezen beheerde identiteit.
  • Als de IoT-hub niet is geconfigureerd met de door de gebruiker toegewezen beheerde identiteit die is opgegeven in userAssignedIdentity, mislukt de taak.
  • Als storageAuthenticationType is ingesteld op identityBased , is de eigenschap userAssignedIdentity null, dan gebruiken de taken een door het systeem toegewezen identiteit.
  • Als de IoT-hub niet is geconfigureerd met de door de gebruiker toegewezen beheerde identiteit, mislukt de taak.
  • Als storageAuthenticationType is ingesteld op identityBased en geen door de gebruiker toegewezen of door het systeem toegewezen beheerde identiteiten zijn geconfigureerd op de hub, mislukt de taak.

SDK-voorbeelden

Volgende stappen

Gebruik de onderstaande koppelingen voor meer informatie over IoT Hub-functies: