IP-filters gebruiken

Beveiliging is een belangrijk aspect van elke IoT-oplossing op basis van Azure IoT Hub. Soms moet u expliciet de IP-adressen opgeven waarvan apparaten verbinding kunnen maken als onderdeel van uw beveiligingsconfiguratie. Met de FUNCTIE IP-filter kunt u regels configureren voor het weigeren of accepteren van verkeer van specifieke IPv4-adressen.

Wanneer gebruiken

Gebruik IP-filter om alleen verkeer te ontvangen van een opgegeven bereik van IP-adressen en alle andere te negeren. U gebruikt bijvoorbeeld uw IoT-hub met Azure Express Route om privéverbindingen te maken tussen een IoT-hub en uw on-premises infrastructuur.

Standaardinstelling

Als u naar de pagina MET IP-filterinstellingen van uw IoT-hub wilt gaan, selecteert u >Openbare netwerktoegang en kiest u Vervolgens Geselecteerde IP-bereiken:

Screenshot showing how to set default IP filter settings.

Standaard is het IP-filterraster in de portal voor een IoT-hub leeg. Deze standaardinstelling betekent dat uw hub verbindingen van alle IP-adressen blokkeert. Deze standaardinstelling is gelijk aan een regel waarmee het 0.0.0.0/0 IP-adresbereik wordt geblokkeerd.

Een IP-filterregel toevoegen of bewerken

Als u een IP-filterregel wilt toevoegen, selecteert u IP-filterregel toevoegen. Als u snel het IP-adres van uw computer wilt toevoegen, selecteert u Het IP-adres van de client toevoegen.

Screenshot showing how to add an IP filter rule to an IoT hub.

Vul de velden in nadat u IP-filterregel toevoegen hebt geselecteerd. Deze velden worden vooraf ingevuld als u ervoor hebt gekozen om het IP-adres van de client toe te voegen.

Screenshot that shows what to do after adding an IP filter rule.

  • Geef een naam op voor de IP-filterregel. Deze naam moet een unieke, hoofdlettergevoelige, alfanumerieke tekenreeks van maximaal 128 tekens lang zijn. Alleen de 7-bits alfanumerieke ASCII-tekens plus de volgende speciale tekens worden geaccepteerd: - : . + % _ # * ? ! ( ) , = @ ; '

  • Geef één IPv4-adres op of een blok met IP-adressen in CIDR-notatie. Bijvoorbeeld in CIDR-notatie staat 192.168.100.0/22 voor de 1024 IPv4-adressen van 192.168.100.0 tot en met 192.168.103.255.

Nadat u de velden hebt ingevuld, selecteert u Opslaan om de regel op te slaan. U ziet een waarschuwing dat de update wordt uitgevoerd.

Screenshot that shows notification about saving an IP filter rule.

De optie Toevoegen is uitgeschakeld wanneer u het maximum van 100 IP-filterregels bereikt.

Als u een bestaande regel wilt bewerken, selecteert u de gegevens die u wilt wijzigen, brengt u de wijziging aan en selecteert u Opslaan om uw bewerking op te slaan.

Een IP-filterregel verwijderen

Als u een IP-filterregel wilt verwijderen, selecteert u het prullenbakpictogram op die rij en selecteert u Opslaan. De regel wordt verwijderd en de wijziging wordt opgeslagen.

Screenshot showing how to delete an IoT Hub IP filter rule.

IP-filterregels toepassen op het ingebouwde eindpunt dat compatibel is met Event Hubs

Als u de IP-filterregels wilt toepassen op het ingebouwde eindpunt dat compatibel is met Event Hubs, schakelt u het selectievakje in naast IP-filters toepassen op het ingebouwde eindpunt?, en selecteert u Opslaan.

Screenshot showing the toggle for the built-in endpoint.

Notitie

Deze optie is niet beschikbaar voor gratis IoT-hubs (F1). Als u IP-filterregels wilt toepassen op het ingebouwde eindpunt, gebruikt u een betaalde IoT-hub.

Door deze optie in te schakelen, worden uw IP-filterregels gerepliceerd naar het ingebouwde eindpunt, zodat alleen vertrouwde IP-bereiken er toegang toe hebben.

Als u deze optie uitschakelt, is het ingebouwde eindpunt toegankelijk voor alle IP-adressen. Dit gedrag kan nuttig zijn als u wilt lezen van het eindpunt met services met bron-IP-adressen die na verloop van tijd kunnen veranderen, zoals Azure Stream Analytics.

Hoe filterregels worden toegepast

De IP-filterregels worden toegepast op serviceniveau van IoT Hub. Daarom zijn de IP-filterregels van toepassing op alle verbindingen van apparaten en back-end-apps met behulp van elk ondersteund protocol. U kunt ook kiezen of het ingebouwde event hubs-compatibele eindpunt (niet via de IoT Hub-verbindingsreeks) is gebonden aan deze regels.

Elke verbindingspoging van een IP-adres dat niet expliciet is toegestaan, ontvangt een niet-geautoriseerde 401-statuscode en -beschrijving. De IP-regel wordt niet vermeld in het antwoordbericht. Als u IP-adressen weigert, kunnen andere Azure-services, zoals Azure Stream Analytics, Azure Virtual Machines of Device Explorer in Azure Portal, niet communiceren met de IoT-hub.

Notitie

Als u Azure Stream Analytics (ASA) wilt gebruiken om berichten te lezen van een IoT-hub waarvoor IP-filter is ingeschakeld, schakelt u de optie IP-filters toepassen op de ingebouwde eindpuntoptie uit en gebruikt u vervolgens de event hub-compatibele naam en het eindpunt van uw IoT-hub om handmatig een Event Hubs-stroominvoer toe te voegen in de ASA.

Ordenen

IP-filterregels zijn regels toestaan en toegepast zonder volgorde. Alleen IP-adressen die u toevoegt, mogen verbinding maken met IoT Hub.

Als u bijvoorbeeld adressen in het bereik 192.168.100.0/22 wilt accepteren en alles wilt negeren, hoeft u slechts één regel toe te voegen in het raster met adresbereik 192.168.100.0/22.

Azure Portal

IP-filterregels worden ook toegepast bij het gebruik van IoT Hub via Azure Portal. Dit komt doordat API-aanroepen naar de IoT Hub-service rechtstreeks worden uitgevoerd met behulp van uw browser met uw referenties, wat consistent is met andere Azure-services. Als u toegang wilt krijgen tot IoT Hub met behulp van Azure Portal wanneer IP-filter is ingeschakeld, voegt u het IP-adres van uw computer toe aan de acceptatielijst.

IP-filters ophalen en bijwerken met behulp van Azure CLI

De IP-filters van uw IoT Hub kunnen worden opgehaald en bijgewerkt via Azure CLI.

Voer de volgende opdracht uit om de huidige IP-filters van uw IoT Hub op te halen:

az resource show -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs

Hiermee wordt een JSON-object geretourneerd waarin uw bestaande IP-filters worden vermeld onder de properties.networkRuleSets sleutel:

{
...
    "properties": {
        "networkRuleSets": {
            "defaultAction": "Deny",
            "applyToBuiltInEventHubEndpoint": true,
            "ipRules": [{
                    "filterName": "TrustedFactories",
                    "action": "Allow",
                    "ipMask": "1.2.3.4/5"
                },
                {
                    "filterName": "TrustedDevices",
                    "action": "Allow",
                    "ipMask": "1.1.1.1/1"
                }
            ]
        }
    }
}

Als u een nieuw IP-filter voor uw IoT Hub wilt toevoegen, voert u het volgende uit:

az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules "{\"action\":\"Allow\",\"filterName\":\"TrustedIP\",\"ipMask\":\"192.168.0.1\"}"

Als u een bestaand IP-filter in uw IoT Hub wilt verwijderen, voert u het volgende uit:

az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules <ipFilterIndexToRemove>

<ipFilterIndexToRemove> Hier moet u overeenkomen met de volgorde van IP-filters in de IoT Hubproperties.networkRuleSets.ipRules.

IP-filters ophalen en bijwerken met behulp van Azure PowerShell

Notitie

Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

De IP-filters van uw IoT Hub kunnen worden opgehaald en ingesteld via Azure PowerShell.

# Get your IoT Hub resource using its name and its resource group name
$iothubResource = Get-AzResource -ResourceGroupName <resourceGroupNmae> -ResourceName <iotHubName> -ExpandProperties

# Access existing IP filter rules
$iothubResource.Properties.networkRuleSets.ipRules |% { Write-host $_ }

# Construct a new IP filter
$filter = @{'filterName'='TrustedIP'; 'action'='Allow'; 'ipMask'='192.168.0.1'}

# Add your new IP filter rule
$iothubResource.Properties.networkRuleSets.ipRules += $filter

# Remove an existing IP filter rule using its name, e.g., 'GoodIP'
$iothubResource.Properties.networkRuleSets.ipRules = @($iothubResource.Properties.networkRuleSets.ipRules | Where 'filterName' -ne 'GoodIP')

# Update your IoT Hub resource with your updated IP filters
$iothubResource | Set-AzResource -Force

IP-filterregels bijwerken met REST

U kunt ook het IP-filter van uw IoT Hub ophalen en wijzigen met behulp van het REST-eindpunt van de Azure-resourceprovider. Zie properties.networkRuleSets in de createorupdate-methode.

Volgende stappen

Zie voor meer informatie over de mogelijkheden van IoT Hub: