Sdílet prostřednictvím


Použití filtrů připojení Azure IoT DPS IP

Bezpečnost je důležitým aspektem každého řešení IoT. Někdy je třeba explicitně zadat IP adresy, ze kterých se zařízení mohou připojovat jako součást konfigurace zabezpečení. Funkce filtru IP adres pro službu Azure IoT Hub Device Provisioning Service (DPS) umožňuje konfigurovat pravidla pro odmítání nebo přijímání přenosů z konkrétních adres IPv4.

Kdy použít

Existují dva konkrétní případy použití, kdy je užitečné blokovat připojení ke koncovému bodu DPS z určitých IP adres:

  • Váš DPS by měl přijímat provoz pouze ze zadaného rozsahu IP adres a odmítat vše ostatní. Používáte například DPS s Azure Express Route k vytvoření privátních připojení mezi instancí DPS a vašimi zařízeními.

  • Provoz z IP adres, které jsou identifikované jako podezřelé správcem DPS, musíte odmítnout.

Omezení pravidel filtru IP adres

Pokud je povoleno filtrování IP, mějte na paměti následující omezení:

  • Je možné, že ke správě registrací nebudete moct použít Azure Portal. Pokud k tomuto scénáři dojde, můžete přidat IP adresu jednoho nebo více počítačů na ipFilterRules a spravovat registrace v instanci DPS z těchto počítačů pomocí Azure CLI, PowerShellu nebo rozhraní API služby.

    Tento scénář nastane s největší pravděpodobností v případě, že chcete pomocí služby Filtrování IP povolit přístup pouze k vybraným IP adresám. V takovém případě nakonfigurujete pravidla pro povolení určitých adres nebo rozsahů adres a výchozí pravidlo, které blokuje všechny ostatní adresy (0.0.0.0/0). Toto výchozí pravidlo blokuje azure Portal v provádění operací, jako je správa registrací v instanci DPS. Další informace najdete v tématu Vyhodnocení pravidla filtru IP v tomto článku.

Jak se používají pravidla filtru

Pravidla filtru IP adres se používají na úrovni instance DPS. Pravidla filtru IP adres se proto vztahují na všechna připojení ze zařízení a back-endových aplikací pomocí libovolného podporovaného protokolu.

Jakýkoli pokus o připojení z IP adresy, která odpovídá odmítajícímu pravidlu IP ve vaší instanci DPS, obdrží neautorizovaný stavový kód a popis 401. Zpráva odpovědi nezmiňuje pravidlo IP.

Důležité

Odmítnutí IP adres může zabránit jiným službám Azure v interakci s instancí DPS.

Výchozí nastavení

Ve výchozím nastavení je filtrování IP zakázáno a přístup k veřejné síti je nastaven na možnost Všechny sítě. Toto výchozí nastavení znamená, že váš DPS přijímá připojení z libovolné IP adresy nebo vyhovuje pravidlu, které přijímá rozsah IP adres 0.0.0.0/0.

Snímek obrazovky znázorňující výchozí nastavení filtru IP adres služby IoT DPS na webu Azure Portal

Přidání pravidla filtru IP adres

Přidání pravidla filtru IP:

  1. Přejděte na webový portál Azure.

  2. V nabídce portálu nebo na stránce portálu vyberte Všechny prostředky.

  3. Vyberte instanci služby Device Provisioning.

  4. V nabídce služby v části Nastavení vyberte Sítě.

  5. V pracovním podokně v části Přístup k veřejné síti vyberte Vybrané rozsahy IP adres.

  6. Vyberte možnost + Přidat pravidlo filtru IP adres.

    Snímek obrazovky, který ukazuje, jak přidat pravidlo filtru IP adres do instance IoT DPS na webu Azure Portal

  7. Vyplňte následující pole:

    Obor Popis
    název Jedinečný alfanumerický řetězec o délce až 128 znaků, který nerozlišuje velká a malá písmena. Jsou povoleny pouze 7bitové alfanumerické znaky ASCII plus {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''} .
    Rozsah adres Jedna IPv4 adresa nebo blok IP adres v zápisu CIDR (Classless Inter-Domain Routing). Například v zápisu CIDR 192.168.100.0/22 představuje 1024 adres IPv4 od 192.168.100.0 do 192.168.103.255.
    Akce Vyberte možnost Povolit nebo Blokovat.

    Snímek obrazovky znázorňující, jak definovat a uložit pravidlo filtru IP adres pro instanci IoT DPS na webu Azure Portal

  8. Vyberte Uložit. Mělo by se zobrazit upozornění s oznámením, že aktualizace probíhá.

    Snímek obrazovky zobrazující oznámení zobrazené při ukládání pravidla filtru IP adres na webu Azure Portal

    Poznámka:

    + Přidat pravidlo filtru IP je zakázáno, pokud dosáhnete maximálního počtu 100 pravidel filtru IP.

Úprava pravidla filtru IP adres

Úprava existujícího pravidla:

  1. Vyberte data pravidla filtru IP adres, která chcete změnit.

    Snímek obrazovky, který ukazuje, jak upravit pravidlo filtru IP adres pro instanci IoT DPS na webu Azure Portal

  2. Proveďte změnu.

  3. Vyberte Uložit.

Odstranění pravidla filtru IP adres

Odstranění pravidla filtru IP:

  1. Vyberte ikonu odstranění na řádku pravidla IP, které chcete odstranit.

    Snímek obrazovky, který ukazuje, jak odstranit pravidlo filtru IP adres pro instanci IoT DPS na webu Azure Portal

  2. Vyberte Uložit.

Vyhodnocení pravidla filtru IP adres

Pravidla filtru IP jsou aplikována v uvedeném pořadí. První pravidlo, které odpovídá IP adrese, určuje akci přijetí nebo odmítnutí.

Pokud například chcete přijmout adresy v rozsahu 192.168.100.0/22 a vše ostatní odmítnout, první pravidlo v mřížce by mělo přijmout rozsah adres 192.168.100.0/22. Další pravidlo by mělo odmítnout všechny adresy pomocí rozsahu 0.0.0.0/0.

Změna pořadí pravidel filtru IP adres:

  1. Vyberte pravidlo, které chcete přesunout.

  2. Přetáhněte pravidlo na požadované místo.

  3. Vyberte Uložit.

Aktualizace pravidel filtru IP adres pomocí šablon Azure Resource Manager

Filtr IP DPS můžete aktualizovat dvěma způsoby:

  1. Zavolejte metodu rozhraní REST API prostředků IoT Hub. Informace o tom, jak aktualizovat pravidla filtru IP adres pomocí REST, najdete IpFilterRule v části Definiceprostředku služby IoT Hub – Aktualizace.

  2. Použijte šablony Azure Resource Manager. Další informace o tom, jak používat šablony Resource Manageru, najdete v tématu Co jsou šablony ARM?. Následující příklady ukazují, jak vytvářet, upravovat a odstraňovat pravidla filtru IP adres DPS pomocí šablon Azure Resource Manager.

    Poznámka:

    Azure CLI a Azure PowerShell v současné době nepodporují aktualizace pravidel filtru IP adres DPS.

Přidání pravidla filtru IP adres

Následující příklad šablony vytvoří nové pravidlo filtru IP s názvem "AllowAll", které přijímá veškerý provoz.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", 
    "contentVersion": "1.0.0.0", 
    "parameters": {
        "iotDpsName": {
            "type": "string",
            "defaultValue": "[resourceGroup().name]",
            "minLength": 3,
            "metadata": {
                "description": "Specifies the name of the IoT DPS service."
            }
        }, 
        "location": {
            "type": "string",
            "defaultValue": "[resourceGroup().location]",
            "metadata": {
                "description": "Location for Iot DPS resource."
            }
        }        
    }, 
    "variables": {
        "iotDpsApiVersion": "2020-01-01"
    }, 
    "resources": [
        {
            "type": "Microsoft.Devices/provisioningServices",
            "apiVersion": "[variables('iotDpsApiVersion')]",
            "name": "[parameters('iotDpsName')]",
            "location": "[parameters('location')]",
            "sku": {
                "name": "S1",
                "tier": "Standard",
                "capacity": 1
            },
            "properties": {
                "IpFilterRules": [
                    {
                        "FilterName": "AllowAll",
                        "Action": "Accept",
                        "ipMask": "0.0.0.0/0"
                    }
                ]
            }            
        }
    ]
}

Aktualizujte atributy pravidla filtru IP šablony na základě svých požadavků.

Vlastnost Popis
Název_filtru Zadejte název pravidla filtru IP. Tato hodnota musí být jedinečný, alfanumerický řetězec nerozlišující velikost písmen, s délkou až 128 znaků. Jsou povoleny pouze 7bitové alfanumerické znaky ASCII plus {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''} .
Akce Akceptované hodnoty jsou Přijmout nebo Odmítnout jako akci pro pravidlo filtru IP.
ipMask Zadejte jednu adresu IPv4 nebo blok IP adres v notaci CIDR. Například v zápisu CIDR 192.168.100.0/22 představuje 1024 adres IPv4 od 192.168.100.0 do 192.168.103.255.

Aktualizace pravidla filtru IP adres

Následující příklad šablony aktualizuje pravidlo filtru IP s názvem "AllowAll", které bylo uvedeno dříve, a odmítne veškerý provoz.

{ 
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",  
    "contentVersion": "1.0.0.0",  
    "parameters": { 
        "iotDpsName": { 
            "type": "string", 
            "defaultValue": "[resourceGroup().name]", 
            "minLength": 3, 
            "metadata": { 
                "description": "Specifies the name of the IoT DPS service." 
            } 
        },  
        "location": { 
            "type": "string", 
            "defaultValue": "[resourceGroup().location]", 
            "metadata": { 
                "description": "Location for Iot DPS resource." 
            } 
        }        
    },  
    "variables": { 
        "iotDpsApiVersion": "2020-01-01" 
    },  
    "resources": [ 
        { 
            "type": "Microsoft.Devices/provisioningServices", 
            "apiVersion": "[variables('iotDpsApiVersion')]", 
            "name": "[parameters('iotDpsName')]", 
            "location": "[parameters('location')]", 
            "sku": { 
                "name": "S1", 
                "tier": "Standard", 
                "capacity": 1 
            }, 
            "properties": { 
                "IpFilterRules": [ 
                    { 
                        "FilterName": "AllowAll", 
                        "Action": "Reject", 
                        "ipMask": "0.0.0.0/0" 
                    } 
                ] 
            }             
        } 
    ] 
}

Odstranění pravidla filtru IP adres

Následující příklad šablony odstraní všechna pravidla filtru IP pro instanci DPS.

{ 
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",  
    "contentVersion": "1.0.0.0",  
    "parameters": { 
        "iotDpsName": { 
            "type": "string", 
            "defaultValue": "[resourceGroup().name]", 
            "minLength": 3, 
            "metadata": { 
                "description": "Specifies the name of the IoT DPS service." 
            } 
        },  
        "location": { 
            "type": "string", 
            "defaultValue": "[resourceGroup().location]", 
            "metadata": { 
                "description": "Location for Iot DPS resource." 
            } 
        }        
    },  
    "variables": { 
        "iotDpsApiVersion": "2020-01-01" 
    },  
    "resources": [ 
        { 
            "type": "Microsoft.Devices/provisioningServices", 
            "apiVersion": "[variables('iotDpsApiVersion')]", 
            "name": "[parameters('iotDpsName')]", 
            "location": "[parameters('location')]", 
            "sku": { 
                "name": "S1", 
                "tier": "Standard", 
                "capacity": 1 
            }, 
            "properties": { 
            }             
        } 
    ] 
}

Další kroky

Další informace o správě DPS naleznete v následujících tématech: