Udostępnij przez


Korzystanie z filtrów połączeń IP usługi Azure IoT DPS

Zabezpieczenia są ważnym aspektem każdego rozwiązania IoT. Czasami trzeba jawnie określić adresy IP, z których urządzenia mogą łączyć się w ramach konfiguracji zabezpieczeń. Funkcja filtrowania adresów IP dla usługi Azure IoT Hub Device Provisioning Service (DPS) umożliwia konfigurowanie reguł odrzucania lub akceptowania ruchu z określonych adresów IPv4.

Kiedy należy używać

Istnieją dwa konkretne przypadki użycia, w których warto zablokować połączenia z punktem końcowym usługi DPS z określonych adresów IP:

  • Usługa DPS powinna odbierać ruch tylko z określonego zakresu adresów IP i odrzucać wszystkie inne elementy. Na przykład używasz DPS z Azure Express Route do tworzenia prywatnych połączeń między instancją DPS a urządzeniami.

  • Musisz odrzucić ruch z adresów IP, które są identyfikowane jako podejrzane przez administratora usługi DPS.

Ograniczenia reguł filtrowania adresów IP

Zwróć uwagę na następujące ograniczenia, jeśli włączono filtrowanie adresów IP:

  • Do zarządzania rejestracjami może nie być możliwe użycie witryny Azure Portal. W takim scenariuszu można dodać adres IP co najmniej jednej maszyny do ipFilterRules, a zarządzanie rejestracjami w instancji DPS można przeprowadzać z tych maszyn za pomocą narzędzi Azure CLI, programu PowerShell lub interfejsów API usługi.

    Ten scenariusz najprawdopodobniej występuje, gdy chcesz użyć filtrowania adresów IP, aby zezwolić na dostęp tylko do wybranych adresów IP. W takim przypadku skonfigurujesz reguły, aby włączyć określone adresy lub zakresy adresów oraz regułę domyślną, która blokuje wszystkie inne adresy (0.0.0.0/0). Ta reguła domyślna uniemożliwia portalowi Azure wykonywanie operacji, takich jak zarządzanie rejestracjami w wystąpieniu usługi DPS. Aby uzyskać więcej informacji, zobacz Ocena reguły filtrowania adresów IP w tym artykule.

Jak są stosowane reguły filtrowania

Reguły filtrowania adresów IP są stosowane na poziomie wystąpienia usługi DPS. W związku z tym reguły filtrowania adresów IP mają zastosowanie do wszystkich połączeń z urządzeń i aplikacji zaplecza przy użyciu dowolnego obsługiwanego protokołu.

Każda próba połączenia z adresu IP zgodnego z odrzucającą regułą IP w wystąpieniu usługi DPS otrzymuje nieautoryzowany kod stanu 401 i opis. Komunikat odpowiedzi nie wspomina o regule adresu IP.

Ważne

Odrzucenie adresów IP może uniemożliwić innym usługom platformy Azure interakcję z wystąpieniem usługi DPS.

Ustawienie domyślne

Domyślnie filtrowanie adresów IP jest wyłączone, a dostęp do sieci publicznej jest ustawiony na Wszystkie sieci. To ustawienie domyślne oznacza, że usługa DPS akceptuje połączenia z dowolnego adresu IP lub jest zgodna z regułą, która akceptuje zakres adresów IP 0.0.0.0/0.

Zrzut ekranu przedstawiający domyślne ustawienia filtru IP usługi IoT DPS w witrynie Azure Portal.

Dodawanie reguły filtru adresów IP

Aby dodać regułę filtru adresów IP:

  1. Przejdź do portalu Azure.

  2. W menu portalu lub na stronie portalu wybierz pozycję Wszystkie zasoby.

  3. Wybierz wystąpienie usługi Device Provisioning Service.

  4. W menu usługi w obszarze Ustawienia wybierz pozycję Sieć.

  5. W okienku roboczym w obszarze Dostęp do sieci publicznej wybierz pozycję Wybrane zakresy adresów IP

  6. Wybierz + Dodaj regułę filtru adresów IP.

    Zrzut ekranu przedstawiający sposób dodawania reguły filtrowania adresów IP do instancji IoT DPS w Azure portal.

  7. Wypełnij następujące pola:

    (No changes needed) Opis
    nazwa Unikatowy, bez uwzględniania wielkości liter ciąg alfanumeryczny o długości do 128 znaków. Akceptowane są tylko znaki alfanumeryczne ASCII 7-bitowe plus {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''} .
    Zakres adresów Pojedynczy adres IPv4 lub blok adresów IP w notacji Classless Inter-Domain Routing (CIDR). Na przykład w notacji CIDR zapis 192.168.100.0/22 reprezentuje 1024 adresy IPv4 z zakresu od 192.168.100.0 do 192.168.103.255.
    Akcja Wybierz pozycję Zezwalaj lub Blokuj.

    Zrzut ekranu przedstawiający sposób definiowania i zapisywania reguły filtrowania adresów IP dla wystąpienia usługi IoT DPS w witrynie Azure Portal.

  8. Wybierz Zapisz. Powinien zostać wyświetlony alert z powiadomieniem o tym, że aktualizacja jest w toku.

    Zrzut ekranu przedstawiający powiadomienie wyświetlane podczas zapisywania reguły filtrowania adresów IP w witrynie Azure Portal.

    Uwaga / Notatka

    + Dodaj regułę filtru adresów IP jest wyłączona, gdy osiągniesz maksymalnie 100 reguł filtrowania adresów IP.

Edytowanie reguły filtru adresów IP

Aby edytować istniejącą regułę:

  1. Wybierz dane reguły filtrowania adresów IP, które chcesz zmienić.

    Zrzut ekranu przedstawiający sposób edytowania reguły filtrowania adresów IP dla wystąpienia usługi IoT DPS w witrynie Azure Portal.

  2. Wprowadź zmianę.

  3. Wybierz Zapisz.

Usuwanie reguły filtrowania adresów IP

Aby usunąć regułę filtrowania adresów IP:

  1. Wybierz ikonę usuwania w wierszu reguły adresu IP, którą chcesz usunąć.

    Zrzut ekranu przedstawiający, jak usunąć regułę filtrowania adresów IP dla instancji IoT DPS w portalu Microsoft Azure.

  2. Wybierz Zapisz.

Ocena reguły filtrowania adresów IP

Reguły filtrowania adresów IP są stosowane w kolejności. Pierwsza reguła zgodna z adresem IP określa akcję akceptowania lub odrzucania.

Jeśli na przykład chcesz zaakceptować adresy z zakresu 192.168.100.0/22 i odrzucić wszystkie inne elementy, pierwsza reguła w siatce powinna zaakceptować zakres adresów 192.168.100.0/22. Następna reguła powinna odrzucać wszystkie adresy przy użyciu zakresu 0.0.0.0/0.

Aby zmienić kolejność reguł filtrowania adresów IP:

  1. Wybierz regułę, którą chcesz przenieść.

  2. Przeciągnij i upuść regułę do żądanej lokalizacji.

  3. Wybierz Zapisz.

Aktualizowanie reguł filtrowania adresów IP przy użyciu szablonów usługi Azure Resource Manager

Istnieją dwa sposoby aktualizowania filtru adresów IP usługi DPS:

  1. Wywołaj metodę zasobów IoT Hub w interfejsie API REST. Aby dowiedzieć się, jak zaktualizować reguły filtrowania adresów IP przy użyciu interfejsu REST, zobacz IpFilterRule sekcję Definicjezasobu usługi IoT Hub — aktualizacja.

  2. Użyj szablonów usługi Azure Resource Manager. Aby uzyskać więcej informacji na temat korzystania z szablonów usługi Resource Manager, zobacz Co to są szablony usługi ARM?. W poniższych przykładach pokazano, jak tworzyć, edytować i usuwać reguły filtrowania adresów IP usługi DPS przy użyciu szablonów usługi Azure Resource Manager.

    Uwaga / Notatka

    Interfejs wiersza polecenia platformy Azure i program Azure PowerShell nie obsługują obecnie aktualizacji reguł filtrowania adresów IP usługi DPS.

Dodawanie reguły filtru adresów IP

Poniższy przykład szablonu tworzy nową regułę filtru IP o nazwie "AllowAll", która akceptuje cały ruch.

{
    "$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"
                    }
                ]
            }            
        }
    ]
}

Zaktualizuj atrybuty reguły filtrowania adresów IP szablonu na podstawie wymagań.

Atrybut Opis
Nazwa_filtru Podaj nazwę reguły filtru adresów IP. Ta wartość musi być unikatowym, niezależnie od wielkości liter, ciągiem alfanumerycznym o długości do 128 znaków. Akceptowane są tylko znaki alfanumeryczne ASCII 7-bitowe plus {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''} .
Akcja Zaakceptowane wartości to Akceptuj lub Odrzuć jako akcję reguły filtru adresów IP.
maska ip Podaj pojedynczy adres IPv4 lub blok adresów IP w notacji CIDR. Na przykład w notacji CIDR zapis 192.168.100.0/22 reprezentuje 1024 adresy IPv4 z zakresu od 192.168.100.0 do 192.168.103.255.

Aktualizowanie reguły filtru adresów IP

Poniższy przykład szablonu aktualizuje regułę filtrowania adresów IP o nazwie "AllowAll", pokazaną wcześniej, aby odrzucić cały ruch.

{ 
    "$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" 
                    } 
                ] 
            }             
        } 
    ] 
}

Usuwanie reguły filtrowania adresów IP

Poniższy przykład szablonu usuwa wszystkie reguły filtrowania adresów IP dla wystąpienia usługi 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": { 
            }             
        } 
    ] 
}

Dalsze kroki

Aby dokładniej zapoznać się z zarządzaniem usługą DPS, zobacz: