Azure Machine Learning-munkaterület biztonságossá tétele virtuális hálózatokkal

Ebből a cikkből megtudhatja, hogyan biztosíthatja egy virtuális Azure Machine Learning munkaterület és a hozzá tartozó erőforrások biztonságossá Azure Machine Learning virtuális hálózatban.

Tipp

Ez a cikk a munkafolyamatok biztonságossá tétele Azure Machine Learning része. Tekintse meg a sorozat további cikkeit:

A biztonságos munkaterületek létrehozásával oktatóanyagért lásd: Oktatóanyag: Biztonságos munkaterület létrehozása vagy Oktatóanyag: Biztonságos munkaterület létrehozása sablon használatával.

Ebből a cikkből megtudhatja, hogyan engedélyezheti a következő munkaterület-erőforrásokat egy virtuális hálózaton:

  • Azure Machine Learning-munkaterület
  • Azure Storage-fiókok
  • Azure Machine Learning és adatkészletek
  • Azure Key Vault
  • Azure Container Registry

Előfeltételek

  • A gyakori virtuális hálózati forgatókönyvekkel és a teljes virtuális hálózati architektúrával kapcsolatos további információért olvassa el a Hálózati biztonság áttekintése cikket.

  • Az ajánlott Azure Machine Learning a nagyvállalati biztonság ajánlott eljárásait.

  • Egy meglévő virtuális hálózat és alhálózat, amely a számítási erőforrásokkal használható.

    Tipp

    Ha a virtuális hálózatban Azure Container Instances erőforráscsoportot (modellek üzembe helyezéséhez), akkor a munkaterületnek és a virtuális hálózatnak ugyanabban az erőforráscsoportban kell lennie. Ellenkező esetben eltérő csoportokban is lehetnek.

  • Az erőforrások virtuális hálózatban vagy alhálózatban való üzembe helyezéséhez a felhasználói fióknak engedélyekkel kell rendelkeznie a következő műveletekhez az Azure szerepköralapú hozzáférés-vezérlésében (Azure RBAC):

    • "Microsoft.Network/virtualNetworks/join/action" a virtuális hálózati erőforráson.
    • "Microsoft.Network/virtualNetworks/subnet/join/action" az alhálózati erőforráson.

    További információ a hálózattal rendelkező Azure RBAC-ről: Hálózat beépített szerepkörök

Azure Container Registry

  • A Azure Container Registry verziójának Prémium kell lennie. A frissítéssel kapcsolatos további információkért lásd: A SKUs módosítása.

  • A Azure Container Registry virtuális hálózaton és alhálózaton kell lennie, mint a tárfióknak és a betanításra vagy következtetésre használt számítási céloknak.

  • A Azure Machine Learning munkaterületének tartalmaznia kell egy Azure Machine Learning számítási fürtöt.

Korlátozások

Azure Storage-tárfiók neve

  • Ha a Azure Machine Learning Studiót tervezi használni, és a tárfiók szintén a VNeten található, további érvényesítési követelmények is vonatkoznak:

    • Ha a tárfiók szolgáltatásvégpontot használ,a munkaterület privát végpontjának és a storage-szolgáltatásvégpontnak a VNet ugyanazon alhálózatán kell lennie.
    • Ha a tárfiók privát végpontot használ,a munkaterület privát végpontjának és tárolási szolgáltatásvégpontjának ugyanazon a virtuális hálózaton kell lennie. Ebben az esetben ezek különböző alhálózatban is lehetnek.

Azure Container Registry

Ha az ACR egy virtuális hálózat mögött van, a Azure Machine Learning nem használhatja közvetlenül Docker-rendszerképek felépítésére. Ehelyett a számítási fürtöt használja a rendszerképek felépítéséhez.

Fontos

A Docker-rendszerképek felépítéséhez használt számítási fürtnek hozzá kell férni a modellek betanítása és üzembe helyezése érdekében használt csomagtárakhoz. Előfordulhat, hogy olyan hálózati biztonsági szabályokat kell hozzáadnia, amelyek engedélyezik a nyilvános adattárakhoz való hozzáférést, privát Python-csomagokathasználhatnak, vagy olyan egyéni Docker-rendszerképeket kell használnia, amelyek már tartalmazzák a csomagokat.

Figyelmeztetés

Ha a Azure Container Registry privát végpontot használ a virtuális hálózattal való kommunikációhoz, nem használhat felügyelt identitást Azure Machine Learning számítási fürthöz. Ha felügyelt identitást használ egy számítási fürttel, használjon olyan szolgáltatásvégpontot, amely Azure Container Registry a munkaterülethez.

Azure Monitor

Figyelmeztetés

Azure Monitor támogatja a Azure Private Link a virtuális hálózathoz való csatlakozáshoz. A Azure Machine Learning azonban nem támogatja a privát kapcsolattal kompatibilis Azure Monitor (beleértve az Azure Application Elemzések). Nekonfigurálja a privát hivatkozást a Azure Monitor az Azure-Elemzések a privát kapcsolathoz, Azure Machine Learning.

Szükséges nyilvános internet-hozzáférés

Az Azure Machine Learningnek bejövő és kimenő hozzáférést kell biztosítani a nyilvános internethez. Az alábbi táblázatok áttekintést nyújtanak arról, hogy milyen hozzáférésre van szükség, és mire valók. Az összes elem protokollja a TCP. A végződéses .region szolgáltatáscímkékben cserélje le a region helyére a munkaterületet tartalmazó Azure-régiót. Például: Storage.westus

Irány Portok Szolgáltatáscímke Cél
Bejövő 29876-29877 BatchNodeManagement Hozzon létre, frissítsen és töröljön Azure Machine Learning számítási példányt és számítási fürtöt.
Bejövő 44224 AzureMachineLearning Számítási példány létrehozása, frissítése és Azure Machine Learning törlése.
Kimenő 443 AzureMonitor A monitorozás és a metrikák App Elemzések és Azure Monitor.
Kimenő 80, 443 AzureActiveDirectory Hitelesítés az Azure AD használatával.
Kimenő 443 AzureMachineLearning A Azure Machine Learning használata.
Kimenő 443 AzureResourceManager Azure-erőforrások létrehozása Azure Machine Learning.
Kimenő 443 Storage.region Az Azure-fiókban tárolt Storage a Azure Batch szolgáltatáshoz.
Kimenő 443 AzureFrontDoor.FrontEnd
* Nem szükséges az Azure China-ban.
Globális belépési pont a Azure Machine Learning Studióhoz.
Kimenő 443 ContainerRegistry.region Hozzáférés a Microsoft által biztosított Docker-rendszerképekhez.
Kimenő 443 MicrosoftContainerRegistry.region Hozzáférés a Microsoft által biztosított Docker-rendszerképekhez. A Azure Machine Learning útválasztó beállítása Azure Kubernetes Service.
Kimenő 443 Keyvault.region Hozzáférés a kulcstartóhoz a Azure Batch szolgáltatáshoz. Csak akkor szükséges, ha a munkaterület úgy lett létrehozva, hogy a hbi_workspace jelző engedélyezve van.

Tipp

Ha szolgáltatáscímkék helyett IP-címekre van szüksége, használja az alábbi lehetőségek egyikét:

Az IP-címek rendszeres időközönként változhatnak.

Előfordulhat, hogy engedélyeznie kell a kimenő forgalmat a Visual Studio Code-hoz és a nem Microsoft-webhelyekhez a gépi tanulási projekthez szükséges csomagok telepítéséhez. Az alábbi táblázat a gépi tanuláshoz gyakran használt adattárakat sorolja fel:

Állomásnév Cél
anaconda.com*.anaconda.com Alapértelmezett csomagok telepítéséhez használható.
*.anaconda.org Adattáraadatok lekérte.
pypi.org Az alapértelmezett index függőségeinek listához használható , ha van ilyen, és az indexet nem írják felül a felhasználói beállítások. Ha az indexet felülírja, a *.pythonhosted.org.
cloud.r-project.org CRAN-csomagok R-fejlesztéshez való telepítésekor használatos.
*pytorch.org Néhány PyTorch-alapú példa használja.
*.tensorflow.org Néhány Tensorflow-alapú példa használja.
update.code.visualstudio.com

A VS Code kiszolgálói bitek lekérésére szolgál, amelyek telepítési szkript használatával vannak telepítve a számítási példányra.
raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* A számítási példányra telepített websocket-kiszolgáló bitek lekérésére szolgál. A websocket-kiszolgáló a Visual Studio Code-ügyfél (asztali alkalmazás) kérésének továbbítására szolgál a számítási példányon futó Visual Studio Code-kiszolgálóra.

Ha a Azure Kubernetes Service (AKS) -t Azure Machine Learning, engedélyezze a következő forgalmat az AKS virtuális hálózatra:

  • Általános bejövő/kimenő követelmények az AKS-hez a Kimenő forgalom korlátozása a Azure Kubernetes Service cikkben leírtak szerint.
  • Kimenő forgalom a mcr.microsoft.com.
  • Amikor AKS-fürtön helyez üzembe egy modellt, használja a Modell üzembe helyezése ML a Azure Kubernetes Service cikkben.

További információ a tűzfalmegoldások használatával kapcsolatban: Tűzfal használata a Azure Machine Learning.

A munkaterület biztonságossáése privát végponttal

Azure Private Link lehetővé teszi, hogy privát végponttal csatlakozzon a munkaterülethez. A privát végpont magánhálózati IP-címek készlete a virtuális hálózaton belül. Ezután korlátozhatja a munkaterülethez való hozzáférést, hogy csak a magánhálózati IP-címeken keresztül következtetsen. A privát végpontok csökkentik az adatok kiszivárgásának kockázatát.

A munkaterület privát végpontjainak konfigurálásával kapcsolatos további információkért lásd: Privát végpont konfigurálása.

Figyelmeztetés

A munkaterület privát végpontokkal való biztonságossá tétele önmagában nem biztosítja a teljes biztonságot. A megoldás egyes összetevőinek biztonságba helyezése érdekében a cikk további részében és a VNet-sorozatban található lépéseket kell követnie. Ha például privát végpontot használ a munkaterülethez, de az Azure Storage-fiókja nem a virtuális hálózat mögött található, a munkaterület és a tároló közötti forgalom nem használja a VNetet a biztonság érdekében.

Az Azure Storage-fiókok biztonságossá tere

Azure Machine Learning támogatja a privát végpont vagy szolgáltatásvégpont használatára konfigurált tárfiókokat.

  1. A Azure Portal válassza ki az Azure Storage-fiókot.

  2. A Privát végpontok használata az Azure Storage használata információk segítségével privát végpontokat adhat hozzá a következő tárolási alerőforrásokhoz:

    • Blob
    • Fájl
    • Queue – Csak akkor szükséges, ha a ParallelRunStepet egy Azure Machine Learning használni.
    • Table – Csak akkor szükséges, ha a ParallelRunStepet egy Azure Machine Learning használni.

    Screenshot showing private endpoint configuration page with blob and file options

    Tipp

    Ha nem az alapértelmezett tárfiókot konfigurálja, válassza a hozzáadni kívánt tárfióknak megfelelő Cél alforrástípust.

  3. Miután létrehozta a privát végpontokat ae alerőforrásokhoz, válassza a Tűzfalak és virtuális hálózatok lapot a Tárfiók Hálózatterületén.

  4. Válassza a Kijelölt hálózatoklehetőséget, majd az Erőforráspéldányok alattválassza a erőforrástípust. Válassza ki a munkaterületet a Példánynév használatával. További információ: Megbízható hozzáférés a rendszeráltal hozzárendelt felügyelt identitás alapján.

    Tipp

    Másik lehetőségként választhatja az Azure-szolgáltatások engedélyezése a megbízható szolgáltatások listájában, hogy hozzáférjen ehhez a tárfiókhoz, hogy szélesebb körben engedélyezze a hozzáférést a megbízható szolgáltatásoktól. További információ: Azure Storage-tűzfalak és virtuális hálózatok konfigurálása.

    The networking area on the Azure Storage page in the Azure portal when using private endpoint

  5. A konfiguráció mentéshez válassza a Mentés lehetőséget.

Tipp

Privát végpont használata esetén a nyilvános hozzáférést is letilthatja. További információ: Nyilvános olvasási hozzáférés stb. stb.

Biztonságos Azure Key Vault

Azure Machine Learning egy társított Key Vault a következő hitelesítő adatok tárolására:

  • A társított tárfiók kapcsolati sztring
  • Jelszavak az Azure Container Repository-példányokhoz
  • Adattárak kapcsolati sztringek

Az Azure Key Vault konfigurálható privát végpont vagy szolgáltatásvégpont használatára. A Azure Machine Learning képességek virtuális Azure Key Vault mögötti virtuális hálózattal való használatához kövesse az alábbi lépéseket:

Tipp

Függetlenül attól, hogy privát végpontot vagy szolgáltatásvégpontot használ, a kulcstartónak a munkaterület privát végpontjának hálózatában kell lennie.

További információ a privát végpontok és a Azure Key Vault használatával kapcsolatban: Key Vault integrálása a Azure Private Link.

Az Azure Container Registry (ACR) engedélyezése

Tipp

Ha nem használt meglévő Azure Container Registry a munkaterület létrehozásakor, előfordulhat, hogy nem létezik ilyen. Alapértelmezés szerint a munkaterület csak akkor hoz létre ACR-példányt, ha szüksége van rá. Ha kényszerítenie kell egy modell létrehozását, az ebben a szakaszban található lépések használata előtt betanítja vagy üzembe helyezheti a modellt a munkaterület használatával.

Azure Container Registry konfigurálható privát végpont használatára. A következő lépésekkel konfigurálhatja a munkaterületet az ACR használatára, amikor az a virtuális hálózaton található:

  1. Keresse meg a munkaterület Azure Container Registry nevét az alábbi módszerek egyikével:

    Azure Portalra

    A munkaterület áttekintési szakaszában a Beállításazonosító hivatkozásokat tartalmaz a Azure Container Registry.

    Azure Container Registry for the workspace

    Azure CLI

    Ha telepítette a Machine Learning azure cli-hez,az paranccsal meg is jelenítheti a munkaterület adatait.

    az ml workspace show -w yourworkspacename -g resourcegroupname --query 'containerRegistry'
    

    Ez a parancs a következő értékhez hasonló értéket ad "/subscriptions/{GUID}/resourceGroups/{resourcegroupname}/providers/Microsoft.ContainerRegistry/registries/{ACRname}" vissza: . A sztring utolsó része a munkaterülethez Azure Container Registry neve.

  2. Korlátozza a virtuális hálózathoz való hozzáférést az Csatlakozás a virtuális gépre való privát Azure Container Registry. A virtuális hálózat hozzáadásakor válassza ki a virtuális hálózatot és az alhálózatot a Azure Machine Learning számára.

  3. Konfigurálja a munkaterület ACR-ét a Megbízható szolgáltatások hozzáférésének engedélyezése beállításra.

  4. Hozzon létre Azure Machine Learning számítási fürtöt. Ez Docker-rendszerképek építésre használható, ha az ACR egy virtuális hálózat mögött található. További információ: Számítási fürt létrehozása.

  5. A Azure Machine Learning Python SDK használatával konfigurálhatja a munkaterületet Docker-rendszerképek létrehozásához a számítási fürt használatával. A következő kódrészlet bemutatja, hogyan frissítheti a munkaterületet a build számítási kapacitásának beállítását. Cserélje mycomputecluster le a helyére a használni használt fürt nevét:

    from azureml.core import Workspace
    # Load workspace from an existing config file
    ws = Workspace.from_config()
    # Update the workspace to use an existing compute cluster
    ws.update(image_build_compute = 'mycomputecluster')
    # To switch back to using ACR to build (if ACR is not in the VNet):
    # ws.update(image_build_compute = '')
    

    Fontos

    A rendszerkép számítási környezetben való összeállítása csak a cpu-termékváltozatú AzureML Compute-fürtöt támogatja.

    A tárfióknak, a számítási Azure Container Registry és a virtuális hálózatnak ugyanabban az alhálózatban kell lennie.

    További információért tekintse meg az update() metódus referenciáját.

Tipp

Ha az ACR egy virtuális hálózat mögött található, a nyilvános hozzáférést is letilthatja.

Adattárak és adatkészletek

Az alábbi táblázat azokat a szolgáltatásokat sorolja fel, amelyekhez ki kell hagynia az ellenőrzést:

Szolgáltatás Kihagyja az érvényesítést?
Azure Blob Storage Igen
Azure-fájlmegosztás Igen
Azure Data Lake Storage Gen1 Nem
Azure Data Lake Storage Gen2 Nem
Azure SQL Database Igen
PostgreSql Igen

Megjegyzés

Az Azure Data Lake Store Gen1 és az Azure Data Lake Store Gen2 alapértelmezés szerint kihagyja az ellenőrzést, így Önnek semmit sem kell megtennie.

Az alábbi kódminta létrehoz egy új Azure Blob-adattárat, és beállítja a skip_validation=True következőt: .

blob_datastore = Datastore.register_azure_blob_container(workspace=ws,  

                                                         datastore_name=blob_datastore_name,  

                                                         container_name=container_name,  

                                                         account_name=account_name, 

                                                         account_key=account_key, 

                                                         skip_validation=True ) // Set skip_validation to true

Adatkészletek használata

Az adatkészletek érvényesítésének kihagyása a következő adatkészlet-típusokhoz hasonló:

  • Tagolt fájl
  • JSON
  • Parquet
  • SQL
  • Fájl

Az alábbi kód létrehoz egy új JSON-adatkészletet, és beállítja a validate=False következőt: .

json_ds = Dataset.Tabular.from_json_lines_files(path=datastore_paths, 

validate=False) 

Biztonságos csatlakozás a munkaterülethez

Ha egy virtuális hálózat mögötti munkaterülethez szeretne csatlakozni, használja az alábbi módszerek egyikét:

  • Azure VPN Gateway – A helyszíni hálózatokat privát kapcsolaton keresztül csatlakoztatja a virtuális hálózathoz. A kapcsolat a nyilvános interneten keresztül van létesítve. Kétféle VPN-átjárót használhat:

  • ExpressRoute – Helyszíni hálózatokat csatlakoztat a felhőhöz privát kapcsolaton keresztül. A kapcsolat egy kapcsolatszolgáltató használatával létesítve.

  • Azure Bastion – Ebben a forgatókönyvben létrehoz egy Azure-beli virtuális gépet (más néven jump boxot) a virtuális hálózaton belül. Ezután csatlakozzon a virtuális géphez a Azure Bastion. A Bastion lehetővé teszi, hogy RDP- vagy SSH-munkamenet használatával csatlakozzon a virtuális géphez a helyi webböngészőből. Ezután a jump boxot használhatja fejlesztési környezetként. Mivel a virtuális hálózatban található, közvetlenül hozzáférhet a munkaterülethez. A jump box használatával egy példáért lásd: Oktatóanyag: Biztonságos munkaterület létrehozása.

Fontos

VPN-átjáró vagyExpressRoutehasználata esetén meg kell tervezni a névfeloldás működését a helyszíni erőforrások és a virtuális hálózatban található erőforrások között. További információ: Egyéni DNS-kiszolgáló használata.

Munkaterület-diagnosztika

A munkaterületen a Azure Machine Learning a Python SDK-ból futtathat diagnosztikát. A diagnosztikai futtatás után a rendszer visszaadja az észlelt problémák listáját. Ez a lista a lehetséges megoldásokra mutató hivatkozásokat tartalmaz. További információ: Munkaterületi diagnosztika használata.

Következő lépések

Ez a cikk a munkafolyamatok biztonságossá tétele Azure Machine Learning része. Tekintse meg a sorozat további cikkeit: