Hálózatkezelés konfigurálása a Databricks Appshez

A Databricks Apps támogatja a részletes hálózatvezérlést, hogy biztonságossá és kezelhető legyen, hogyan kommunikál az alkalmazás az internettel és a belső erőforrásokkal. A bejövő (bejövő) és kimenő (kimenő) forgalmi szabályokat ip-hozzáférési listák, előtérbeli privát kapcsolatok és hálózati szabályzatok kombinációjával is konfigurálhatja.

Hálózati architektúra

Azure Databricks alkalmazásokat helyez üzembe a kiszolgáló nélküli számítási síkon, ahol közvetlenül fogadják a forgalmat. Ez hasonló más útvonaloptimalizált szolgáltatásokhoz, például a Modellszolgáltatáshoz és az AI-kereséshez.

A csatlakozási folyamat a következőképpen működik:

  1. Az Azure Databricks alkalmazáshoz érkező kezdeti felhasználói kérések OAuth-hitelesítést kezdeményeznek a vezérlősíkkal a munkamenet ellenőrzéséhez és az alkalmazáshoz való hozzáférés engedélyezéséhez.
  2. Sikeres hitelesítés esetén a rendszer az összes további kérést közvetlenül a kiszolgáló nélküli számítási síkra irányítja anélkül, hogy áthalad a vezérlősíkon.

A kiszolgáló nélküli számítási síkhoz konfigurált hálózati biztonsági szabályzatok a Databricks Apps-forgalomra vonatkoznak. Ide tartoznak az IP-hozzáférési listák és az előtérbeli privát kapcsolati konfigurációk.

Bejövőforgalom-vezérlők

Az alábbi funkciókkal korlátozhatja a Azure Databricks munkaterülethez és alkalmazásokhoz való hozzáférést a nyilvános internetről.

  • IP-hozzáférési listák: A munkaterület és az alkalmazás hozzáférésének korlátozása ismert és megbízható IP-tartományokhoz az IP-hozzáférési listák munkaterületszinten való engedélyezésével. Csak a konfigurált IP-tartományokból érkező forgalom engedélyezett. További információ: IP-hozzáférési listák konfigurálása munkaterületekhez.

:::

  • Front-end privát kapcsolat: A bejövő forgalom átirányítása Azure Private Link kapcsolaton keresztül, hogy biztonságosan hozzáférhessen az alkalmazásokhoz a virtuális hálózaton keresztül.

    Be kell állítania a feltételes DNS-továbbítást a databricksapps.com tartományhoz, hogy a névfeloldás megfelelő legyen a privát kapcsolaton keresztül. Ellenkező esetben előfordulhat, hogy az alkalmazás tartományához tartozó DNS-lekérdezések a privát végpont helyett nyilvános IP-címekre lesznek feloldva. A beállítási útmutatót lásd itt: Munkaterületekhez tartozó bejövő Private Link konfigurálása.

    A Databricks Apps nem támogatja az örökölt regionális URL-címeket, mert nem támogatják az OAuthot, amely az alkalmazáshitelesítéshez szükséges. További részletekért lásd: Régi regionális URL.

Kimenő forgalom ellenőrzései

Az alkalmazásból érkező kimenő forgalom szabályozásához hozzon létre egy hálózati kapcsolati konfigurációt (NCC), és alkalmazza a hálózati szabályzatokat az alkalmazást üzemeltető munkaterületre.

Hálózati kapcsolat konfigurációi

A hálózati kapcsolat konfigurációjának használatával biztonságosan csatlakoztathatja az alkalmazást Azure szolgáltatásokhoz. Az NCC-k stabil alhálózati azonosítókat biztosítanak, amelyeket hozzáadhat egy tárfiók tűzfalához az alkalmazás és más kiszolgáló nélküli számítás explicit engedélyezéséhez.

A magáncélokra irányuló kimenő forgalom további korlátozásához konfiguráljon kiszolgáló nélküli privát végpontokat Azure erőforrásokhoz, vagy irányítsa a forgalmat egy Azure terheléselosztón keresztül a virtuális hálózaton.

Hálózati szabályzatok

A databricks-alkalmazásokra és más kiszolgáló nélküli számítási feladatokra vonatkozó kimenő forgalomkorlátozások hálózati szabályzatok használatával kényszeríthető ki. Ez akkor hasznos, ha meg kell felelnie a kimenő kapcsolatok szabályozására vonatkozó szervezeti vagy megfelelőségi követelményeknek.

Megjegyzés:

A hálózati szabályzatok csak a Prémium szinten érhetők el.

Hálózati szabályzat alkalmazása, ha az alkalmazás:

  • Korlátoznia kell a hozzáférést egy bizonyos jóváhagyott külső tartományhoz
  • Meg kell akadályozni a véletlen adatkiszivárgást
  • Meg kell felelnie a kimenő internetes forgalmat korlátozó biztonsági vagy megfelelőségi szabványoknak

Az alkalmazás üzembe helyezéséhez szükséges kimenő tartományok

Ha korlátozott kimenő hálózati házirendeket használ, engedélyeznie kell az alkalmazás buildjeinek vagy futtatókörnyezetének adott tartományainak sikerességét. Ezen tartományok nélkül az alkalmazástelepítések meghiúsulnak, mert a buildelési folyamat nem tudja letölteni a függőségeket, és nem tud kommunikálni a szükséges szolgáltatásokkal.

Az összes Databricks-alkalmazás üzembe helyezéséhez a következő tartományok szükségesek:

Domain Alkalmazás célja
*.databricksapps.com Alkalmazás-kiszolgáló és felhasználói kapcsolat
*.databricksapps.us Alkalmazás-kiszolgáló és felhasználói kapcsolat (csak AWS GovCloud)
*.databricksapps.mil Alkalmazás-kiszolgáló és felhasználói kapcsolat (csak AWS GovCloud DoD)
pypi.org, files.pythonhosted.org Python csomagok letöltése az alkalmazás felépítése során (akkor szükséges, ha az alkalmazás requirements.txt használja)
registry.npmjs.org Node.js csomagletöltések az alkalmazás buildelése során (az alkalmazás használata package.jsonesetén kötelező)

:::

Emellett Azure üzembe helyezéshez a következő tartományokra lehet szükség:

Domain Alkalmazás célja
*.blob.core.windows.net Azure Blob Storage Azure tárolóhoz csatlakozó alkalmazások által használt végpontok
*.dfs.core.windows.net Azure Data Lake Storage ADLS-hez csatlakozó alkalmazások által használt végpontok

:::

:::

Az alkalmazás további tartományokat igényelhet az adott függőségek vagy az általa hívott külső API-k függvényében. Ha például az alkalmazás külső REST API-t hív meg, adja hozzá az API tartományát az engedélyezési listához.

Fontos

A korlátozott kimenő forgalommal rendelkező Private Link környezetekben a hiányzó tartományi engedélyezési listák bejegyzései gyakran okoznak alkalmazástelepítési hibákat. Ha az alkalmazás üzembe helyezése sikertelen, ellenőrizze a system.access.outbound_network rendszertáblában, hogy a rendszer megtagadta-e a kapcsolati kísérleteket a hozzáadni kívánt tartományok azonosításához. Lásd: Elutasítási naplók ellenőrzése.

Ajánlott eljárások a hálózati szabályzatok konfigurálásához

Kövesse az alábbi irányelveket a nem szándékos fennakadások elkerülése érdekében, és győződjön meg arról, hogy az alkalmazások hozzáférhetnek a szükséges erőforrásokhoz:

  • Csak a szükséges célállomások engedélyezzük. Adjon hozzá teljes tartományneveket (FQDN-eket) az alkalmazás által igényelt nyilvános vagy privát erőforrásokhoz. Lásd: Az alkalmazások üzembe helyezéséhez szükséges kimenő tartományok az üzembe helyezéshez szükséges minimális tartománykészlethez.
  • Szükség szerint foglalja bele a csomagtárolókat. Ha az alkalmazás nyilvános Python vagy Node.js csomagokat telepít, előfordulhat, hogy engedélyeznie kell az olyan tartományokat, mint a pypi.org Python, vagy registry.npmjs.org a Node-hoz. Előfordulhat, hogy az alkalmazás további vagy eltérő tartományokat igényel az adott függőségek függvényében. Ezek nélkül az adattárak az requirements.txt vagy package.json alkalmazásokra támaszkodó build-ek sikertelenek lehetnek.
  • A hálózati szabályzat érvényesítéséhez használjon száraz üzemmódot. Ez a mód a forgalom blokkolása nélkül szimulálja a szabályzatok kikényszerítését.
  • Tekintse át az elutasított kapcsolati kísérleteket a táblával system.access.outbound_network . Ez segít azonosítani azokat a tartományokat, amelyeket esetleg engedélyeznie kell. Lásd: Elutasítási naplók ellenőrzése.
  • Adjon hozzá minden szükséges külső tartományt, például megbízható API-kat vagy Azure a Unity Katalógusban nem regisztrált tárfiókokat.

Ha a munkaterület előtérbeli privát kapcsolatot használ, további konfigurációs lépéseket kell végrehajtania a Databricks-alkalmazások üzembe helyezéséhez és használatához. A konfiguráció nélkül előfordulhat, hogy az alkalmazástelepítések meghiúsulnak, vagy a felhasználók nem érik el az alkalmazást.

DNS-konfiguráció

Feltételes DNS-továbbítást kell konfigurálnia a tartományhoz, hogy az databricksapps.com alkalmazás URL-címei nyilvános IP-címek helyett privát IP-címekre legyenek feloldva. E konfiguráció nélkül a magánhálózat mögötti felhasználók nem érhetik el az üzembe helyezett alkalmazásokat.

Adjon hozzá feltételes továbbítási szabályokat a következő tartományokhoz a Azure DNS-kiszolgálóhoz:

  • *.databricksapps.com
  • *.azuredatabricks.net
  • *.privatelink.azuredatabricks.net

Ellenőrizze, hogy a virtuális hálózat hivatkozik-e a Azure saját DNS zónára. Részletes DNS-beállítási utasításokért tekintse meg az egyéni DNS-konfigurációt.

Kimenő forgalomra vonatkozó követelmények

Private Link korlátozott kimenő forgalommal rendelkező környezetekben az alkalmazásoknak kimenő kapcsolatot kell létesíteniük adott tartományokhoz a buildelési idő és a futtatókörnyezet során is. Az engedélyezési listához tartozó tartományok teljes listájához tekintse meg az alkalmazástelepítéshez szükséges kimenő tartományokat .

A kimenő forgalom konfigurálása Private Link környezetben lévő alkalmazásokhoz:

  1. Hozzon létre vagy frissítsen egy hálózati kapcsolati konfigurációt (NCC), és csatolja az alkalmazást üzemeltető munkaterülethez.
  2. Hozzon létre vagy frissítsen egy hálózati szabályzatot a szükséges tartományok engedélyezése céljából.
  3. Először szárazüzemű módot használjon a konfiguráció ellenőrzéséhez a forgalom blokkolása nélkül.
  4. Tekintse át a rendszertáblát az system.access.outbound_network alkalmazástelepítés során elutasított csatlakozási kísérletekről.

Ha az alkalmazás nem telepíthető Private Link környezetben:

  1. Ellenőrizze a kimenő forgalom elutasítási naplókat. A system.access.outbound_network rendszertábla lekérdezése a legutóbbi megtagadási eseményekhez. Lásd: Elutasítási naplók ellenőrzése.

    SELECT *
    FROM system.access.outbound_network
    WHERE event_time >= CURRENT_TIMESTAMP() - INTERVAL 2 HOUR
    ORDER BY event_time DESC;
    
  2. Ellenőrizze a DNS-feloldásokat. Győződjön meg arról, hogy az alkalmazás URL-címe privát IP-címre, nem pedig nyilvános IP-címre oldódik fel. A magánhálózaton belülről történő ellenőrzéshez használja nslookup a következőt:

    nslookup <your-app-name>.databricksapps.com
    

    AWS GovCloud esetén használja a(z) <your-app-name>.aws-gov.databricksapps.us elemet. Az AWS GovCloud DoD esetében használja a <your-app-name>.aws-dod.databricksapps.mil.

  3. Tekintse át a hálózati házirend konfigurációját. Ellenőrizze, hogy a szükséges tartományok szerepelnek-e az engedélyezési listán. A buildelési hibák leggyakoribb oka a csomagtárházak (pypi.org, registry.npmjs.org) hiányzó tartományai.

  4. Indítsa újra az alkalmazást. A hálózati szabályzatok frissítése után telepítse újra vagy indítsa újra az alkalmazást, hogy a frissített szabályzatok érvénybe léphessenek. Lásd: Kiszolgáló nélküli számítási feladatok újraindítása vagy ismételt üzembe helyezése.

Titkosítás és forgalomirányítás

A Databricks Apps dedikált útválasztási útvonalakat és több titkosítási réteget használ a hálózati kommunikáció védelméhez és az adatok védelméhez.

Forgalom útválasztása

A Azure Databricks vezérlősík, számítási sík, egyéb Azure Databricks erőforrások és felhőszolgáltatások közötti forgalom a felhőszolgáltató globális hálózatán halad át, és nem lépi át a nyilvános internetet.

A felhasználók és databricksapps.com (vagy databricksapps.us az AWS GovCloud vagy databricksapps.mil az AWS GovCloud DoD) közötti forgalom a felhasználó hálózati helyétől függően a nyilvános interneten is áthaladhat. A nyilvános internetes útválasztás elkerülése érdekében konfigurálja az előtérbeli privát kapcsolatot.

Titkosítás átvitel közben

Az alkalmazásokba és az alkalmazásokból érkező összes hálózati kommunikáció titkosítva van:

  • Felhasználói forgalom: A felhasználók és databricksapps.com (vagy databricksapps.us / databricksapps.mil az AWS GovCloud) közötti kommunikáció a Transport Layer Security (TLS) 1.3 titkosítást használja.
  • Sík forgalmának ellenőrzése: A Azure Databricks vezérlősík és a számítási sík közötti kommunikáció kölcsönös TLS -t (mTLS) használ a felügyeleti műveletekhez, beleértve az alkalmazások létrehozását, frissítéseit és törlését.

Adatok tárolás közbeni titkosítása

A Databricks Apps a következő módszerekkel titkosítja a tárolt adatokat:

  • Alkalmazás kódja: Azure Databricks az alkalmazáskódot munkaterületfájlokban tárolja, és ugyanazt a titkosítást használja, mint a jegyzetfüzetek és más munkaterületi fájlok.
  • Számítási tárterület: Az alkalmazások rövid élettartamú gazdagép operációsrendszer-lemezeket használnak, amelyek az AES-256-tal és a felhőszolgáltató alapértelmezett titkosítási implementációjával titkosítottak.