Seznamy přístupu IP adres

Poznámka

Tato funkce vyžaduje plán Azure Databricks Premium.

Podniky s vědomím zabezpečení, které používají cloudové aplikace SaaS, musí omezit přístup na své zaměstnance. Ověřování pomáhá prokázat identitu uživatele, ale vynutilo síťové umístění uživatelů. Přístup ke cloudové službě z nezabezpečené sítě může představovat bezpečnostní riziko pro podnik, zejména v případě, že uživatel může mít autorizovaný přístup k citlivým nebo osobním údajům. Hraniční sítě v podnikové síti používají zásady zabezpečení a omezují přístup k externím službám (například brány firewall, proxy servery, DLP a protokolování), takže přístup nad rámec těchto ovládacích prvků se považuje za nedůvěryhodný.

Předpokládejme například, že zaměstnanec nemocnice přistupuje k pracovnímu prostoru Azure Databricks. Pokud zaměstnanec prochází z kanceláře do kavárny, může nemocnice blokovat připojení k pracovnímu prostoru Azure Databricks, i když má zákazník správné přihlašovací údaje pro přístup k webové aplikaci a REST API.

Pracovní prostory Azure Databricks lze nakonfigurovat tak, aby se zaměstnanci připojili ke službě pouze prostřednictvím stávajících podnikových sítí se zabezpečeným obvodem. Zákazníci Azure Databricks můžou použít funkci seznamy přístupu k protokolu IP k definování sady schválených IP adres. Veškerý příchozí přístup k webové aplikaci a rozhraní REST API vyžaduje, aby se uživatel připojil z autorizované IP adresy.

U zaměstnanců, kteří jsou vzdáleným nebo cestujícím, můžou zaměstnanci použít VPN pro připojení k podnikové síti, což zase umožňuje přístup k pracovnímu prostoru. V předchozím příkladu může nemocnice dovolit, aby zaměstnanec k přístupu k pracovnímu prostoru Azure Databricks používal VPN z kavárny.

Diagram s přehledem přístupu k IP seznamům

Flexibilní konfigurace

Funkce seznamy přístupu k IP adresám je flexibilní:

  • Vlastní Správci pracovního prostoru řídí sadu IP adres na veřejném Internetu, kterým je povolen přístup. To se označuje jako seznam povolených. Povolte více IP adres explicitně nebo jako celé podsítě (například 216.58.195.78/28).
  • Správci pracovních prostorů můžou volitelně zadat IP adresy nebo podsítě k blokování, i když jsou zahrnuté v seznamu povolených. Tento seznam je známý jako seznam blokovaných. Tuto funkci můžete použít, pokud povolený rozsah IP adres zahrnuje menší rozsah IP adres infrastruktury, které jsou v praxi mimo skutečný zabezpečený hraniční sítě.
  • Správci pracovního prostoru používají rozhraní REST API k aktualizaci seznamu povolených a blokovaných IP adres a podsítí.

Podrobnosti o funkci

Rozhraní API pro seznam povolených IP adres umožňuje správcům Azure Databricks nakonfigurovat seznamy povolených IP adres a seznam blokovaných seznamů pro pracovní prostor. Pokud je funkce pro pracovní prostor zakázaná, je povolený veškerý přístup. Podporuje seznamy povolených seznamů (zahrnutí) a blokovaných seznamů (vyloučení).

Při pokusu o připojení:

  1. Nejprve jsou zkontrolovány všechny seznam blokovaných seznamů. Pokud IP adresa připojení odpovídá jakémukoli seznamu blokovaných položek, připojení se odmítne.

  2. Pokud připojení neodmítlo seznamy blokování, IP adresa se porovná se seznamy povolených. Pokud je v pracovním prostoru k dispozici alespoň jeden seznam povolených položek, připojení je povoleno pouze v případě, že se IP adresa shoduje se seznamem povolených položek. Pokud pro tento pracovní prostor neexistují žádné seznamy povolených, jsou povoleny všechny IP adresy.

V kombinaci všech seznamů povolených a blokovaných seznamů podporuje pracovní prostor maximálně 1000 hodnot IP/CIDR, přičemž jeden CIDR se počítá jako jediná hodnota.

Po změnách funkce seznamu IP adres může trvat několik minut, než se změny projeví.

Diagram toku seznamu přístupu k IP adresám

Jak používat rozhraní API pro seznam přístupu k IP adresám

Tento článek popisuje nejběžnější úlohy, které můžete s rozhraním API provádět. Pro úplný odkaz na REST API stáhněte specifikaci openapi a zobrazte ji přímo nebo použijte aplikaci, která čte openapi 3,0.

Další informace o ověřování pro Azure Databricks rozhraní API najdete v tématu ověřování pomocí Azure Databricks tokenů osobního přístupu.

Základní cesta pro koncové body popsané v tomto článku je https://<databricks-instance>/api/2.0 , kde <databricks-instance> je adb-<workspace-id>.<random-number>.azuredatabricks.net název domény vašeho nasazení Azure Databricks.

Ověřte, jestli má váš pracovní prostor zapnutou funkci seznam přístupu IP adres.

Pokud chcete zjistit, jestli má váš pracovní prostor povolený přístup k IP seznamu, zavolejte funkci získat rozhraní API pro získání stavu GET /workspace-conf . Předat keys=enableIpAccessLists jako argumenty požadavku.

V odpovědi enableIpAccessLists pole určuje buď true nebo false .

Například:

curl -X -n \
 https://<databricks-instance>/api/2.0/workspace-conf?keys=enableIpAccessLists

Příklad odpovědi:

{
  "enableIpAccessLists": "true",
}

Povolení nebo zakázání funkce seznamu přístupu k IP adresám v pracovním prostoru

Chcete-li povolit nebo zakázat funkci seznam přístupu k IP adresám v pracovním prostoru, zavolejte na možnost povolit nebo zakázat rozhraní API pro seznam přístupu k IP adresám ( PATCH /workspace-conf ).

V textu požadavku JSON určete enableIpAccessLists jako true (povoleno) nebo false (zakázáno).

Chcete-li například povolit funkci:

curl -X PATCH -n \
  https://<databricks-instance>/api/2.0/workspace-conf \
  -d '{
    "enableIpAccessLists": "true"
    }'

Příklad odpovědi:

{
  "enableIpAccessLists": "true"
}

Přidat seznam přístupu k IP adrese

Chcete-li přidat seznam přístupu k IP adres, zavolejte na Přidat rozhraní API pro přístup k IP adresám ( POST /ip-access-lists ).

V textu požadavku JSON zadejte:

  • label – Popisek pro tento seznam.
  • list_type – Buď ALLOW (povolený seznam), nebo BLOCK (seznam blokovaných, který znamená vyloučení, i když v seznamu povolených).
  • ip_addresses – Pole JSON s IP adresami a rozsahy CIDR jako řetězcové hodnoty.

Odpověď je kopie objektu, který jste předali, ale s některými dalšími poli, nejdůležitějším list_id polem. Tuto hodnotu můžete chtít uložit, abyste mohli seznam později aktualizovat nebo odstranit. Pokud ho neuložíte, můžete ho později získat pomocí dotazu na úplnou sadu seznamů přístupu IP s GET požadavkem na /ip-access-lists koncový bod.

Chcete-li například přidat seznam povolených:

curl -X POST -n \
  https://<databricks-instance>/api/2.0/ip-access-lists
  -d '{
    "label": "office",
    "list_type": "ALLOW",
    "ip_addresses": [
        "1.1.1.1",
        "2.2.2.2/21"
      ]
    }'

Příklad odpovědi:

{
  "ip_access_list": {
    "list_id": "<list-id>",
    "label": "office",
    "ip_addresses": [
        "1.1.1.1",
        "2.2.2.2/21"
    ],
    "address_count": 2,
    "list_type": "ALLOW",
    "created_at": 1578423494457,
    "created_by": 6476783916686816,
    "updated_at": 1578423494457,
    "updated_by": 6476783916686816,
    "enabled": true
  }
}

Chcete-li přidat seznam blokovaných objektů, udělejte totéž, ale list_type nastavte na BLOCK .

Aktualizovat seznam přístupu IP

Chcete-li aktualizovat seznam přístupu IP, zavolejte na aktualizovat rozhraní API pro seznam IP Access ( PUT /ip-access-lists/<list-id> ).

V textu požadavku JSON zadejte:

  • label – Popisek pro tento seznam.
  • list_type – Buď ALLOW (povolený seznam), nebo BLOCK (seznam blokovaných prostředků, což znamená vyloučení, i když v seznamu povolených).
  • ip_addresses – Pole JSON s IP adresami a rozsahy CIDR jako řetězcové hodnoty.
  • enabled – Určuje, jestli je tento seznam povolený. Pass true nebo false .

Odpověď je kopie objektu, který jste předali pomocí dalších polí pro data ID a úpravy.

Chcete-li například aktualizovat seznam povolených, aby jej bylo možné zakázat:

curl -X PUT -n \
  https://<databricks-instance>/api/2.0/ip-access-lists/<list-id>
  -d '{
    "label": "office",
    "list_type": "ALLOW",
    "ip_addresses": [
        "1.1.1.1",
        "2.2.2.2/21"
      ],
    "enabled": "false"
    }'

Odstranit seznam přístupu k IP adrese

Pokud chcete odstranit seznam přístupu k IP adres, zavolejte na Odstranit rozhraní API pro přístup k seznamu IP adres ( DELETE /ip-access-lists/<list-id> ). Tělo žádosti není k dispozici.

curl -X DELETE -n \
  https://<databricks-instance>/api/2.0/ip-access-lists/<list-id>