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

A KÖVETKEZŐKRE VONATKOZIK:Azure CLI ml-bővítmény v2 (aktuális)Python SDK azure-ai-ml v2 (aktuális)

Ebből a cikkből megtudhatja, hogyan védheti meg az Azure Machine Learning-munkaterületeket és a hozzá tartozó erőforrásokat egy virtuális hálózaton.

Tipp

Ez a cikk egy Azure Machine Learning-munkafolyamat biztonságossá tételéről szóló sorozat része. Tekintse meg a sorozat további cikkeit:

A biztonságos munkaterületek létrehozásáról szóló oktatóanyagért lásd : Oktatóanyag: Biztonságos munkaterület létrehozása vagy Oktatóanyag: Biztonságos munkaterület létrehozása sablonnal.

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 Key Vault
  • Azure Container Registry

Előfeltételek

  • A gyakori virtuális hálózati forgatókönyvek és az általános virtuális hálózati architektúra megismeréséhez olvassa el a Hálózatbiztonság áttekintése című cikket.

  • Az ajánlott eljárások megismeréséhez olvassa el az Azure Machine Learning vállalati biztonsági ajánlott eljárásait ismertető cikket.

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

    Fontos

    Nem javasoljuk a 172.17.0.0/16 IP-címtartomány használatát a virtuális hálózathoz. Ez a Docker-hídhálózat által használt alapértelmezett alhálózati tartomány. Más tartományok is ütközhetnek attól függően, hogy mit szeretne csatlakoztatni a virtuális hálózathoz. Ha például a helyszíni hálózatot a virtuális hálózathoz szeretné csatlakoztatni, és a helyszíni hálózat a 172.16.0.0/16 tartományt is használja. Végső soron Önnek kell megterveznie a hálózati infrastruktúrát.

  • Ha erőforrásokat szeretne üzembe helyezni egy virtuális hálózaton vagy alhálózaton, 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ésben (Azure RBAC):

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

    További információ a hálózatkezeléssel rendelkező Azure RBAC-ről: Hálózatkezelés beépített szerepkörei

Azure Container Registry

  • A Azure Container Registry Prémium verziónak kell lennie. További információ a frissítésről: Termékváltozatok módosítása.

  • Ha a Azure Container Registry privát végpontot használ, annak ugyanabban a virtuális hálózaton kell lennie, mint a betanításhoz vagy következtetéshez használt tárfióknak és számítási céloknak. Ha szolgáltatásvégpontot használ, annak ugyanabban a virtuális hálózatban és alhálózatban kell lennie, mint a tárfióknak és a számítási céloknak.

  • Az Azure Machine Learning-munkaterületnek tartalmaznia kell egy Azure Machine Learning számítási fürtöt.

Korlátozások

Azure Storage-fiók

  • Ha az Azure Machine Learning Studio használatát tervezi, és a tárfiók is a virtuális hálózaton található, extra ellenőrzési követelmények vannak érvényben:

    • Ha a tárfiók szolgáltatásvégpontot használ, a munkaterület privát végpontjának és a társzolgáltatás végpontjának a virtuális hálózat azonos alhálózatában kell lennie.
    • Ha a tárfiók privát végpontot használ, a munkaterület privát végpontjának és a tár privát végpontjának azonos virtuális hálózatban kell lennie. Ebben az esetben lehetnek más alhálózatban is.

Azure Container Instances

Ha az Azure Machine Learning-munkaterület privát végponttal van konfigurálva, az Azure Container Instances virtuális hálózatban való üzembe helyezése nem támogatott. Ehelyett fontolja meg felügyelt online végpontok használatát hálózatelkülönítéssel.

Azure Container Registry

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

Fontos

A Docker-rendszerképek létrehozásához használt számítási fürtnek hozzá kell férnie a modellek betanítása és üzembe helyezése során 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-csomagokat használnak, vagy olyan egyéni Docker-lemezképeket kell használnia, amelyek már tartalmazzák a csomagokat.

Figyelmeztetés

Ha a Azure Container Registry privát végpontot vagy szolgáltatásvé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ürttel.

Azure Monitor

Figyelmeztetés

Az Azure Monitor támogatja a Azure Private Link használatát a virtuális hálózathoz való csatlakozáshoz. Az Azure Monitorban azonban a nyitott Private Link módot kell használnia. További információ: Private Link hozzáférési módok: Csak privát és Megnyitás.

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 milyen célt szolgál. A végződésű .regionszolgáltatáscímkék esetében cserélje le a elemet region a munkaterületet tartalmazó Azure-régióra. Például: Storage.westus

Tipp

A szükséges lap felsorolja a szükséges bejövő és kimenő konfigurációt. A Helyzet lap felsorolja azokat a nem kötelező bejövő és kimenő konfigurációkat, amelyeket engedélyezni szeretne bizonyos konfigurációkhoz.

Irány Protokoll &
ports
Szolgáltatáscímke Cél
Kimenő TCP: 80, 443 AzureActiveDirectory Hitelesítés Azure AD használatával.
Kimenő TCP: 443, 18881
UDP: 5831
AzureMachineLearning Az Azure Machine Learning-szolgáltatások használata.
Az 18881-ös portot a Python intellisense-hez használják a jegyzetfüzetekben.
Az 5831-ös port az Azure Machine Learning számítási példányának létrehozásához, frissítéséhez és törléséhez használható.
Kimenő BÁRMELY: 443 BatchNodeManagement.region Kommunikáció Azure Batch háttérrendszerrel az Azure Machine Learning számítási példányaihoz/fürtjeihez.
Kimenő TCP: 443 AzureResourceManager Azure-erőforrások létrehozása az Azure Machine Learning, az Azure CLI és az Azure Machine Learning SDK használatával.
Kimenő TCP: 443 Storage.region Az Azure Storage-fiókban tárolt adatok elérése a számítási fürthöz és a számítási példányhoz. Ez a kimenő adatkiszivárgás használható. További információ: Adatkiszivárgás elleni védelem.
Kimenő TCP: 443 AzureFrontDoor.FrontEnd
* Nem szükséges az Azure China-ban.
A Azure Machine Learning stúdió globális belépési pontja. Képek és környezetek tárolása az AutoML-hez. Ez a kimenő adatkiszivárgás használható. További információ: Adatkiszivárgás elleni védelem.
Kimenő TCP: 443 MicrosoftContainerRegistry.region
Vegye figyelembe , hogy ez a címke függőségben van a AzureFrontDoor.FirstParty címkével
A Microsoft által biztosított Docker-rendszerképek elérése. Az Azure Machine Learning-útválasztó beállítása Azure Kubernetes Service.

Tipp

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

Az IP-címek időnként változhatnak.

Fontos

Ha olyan számítási fürtöt használ, amely nincs nyilvános IP-címre konfigurálva, engedélyeznie kell a következő forgalmat:

  • Bejövő forgalom a VirtualNetwork forrásától és bármely portforrástól a VirtualNetwork célhelyére, valamint a 29876-os, 29877-ös célportig.
  • Bejövő forgalom az AzureLoadBalancer forrásból és bármely portforrásból a VirtualNetwork célhelyre és a 44224-s port célhelyére.

Előfordulhat, hogy a gépi tanulási projekthez szükséges csomagok telepítéséhez engedélyeznie kell a Visual Studio Code-ba és a nem Microsoft-webhelyekre irányuló kimenő forgalmat is. 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
Az alapértelmezett csomagok telepítéséhez használatos.
*.anaconda.org Az adattáradatok lekérésére szolgál.
pypi.org Az alapértelmezett index függőségeinek listázására szolgál, ha vannak ilyenek, és az indexet nem írja felül a felhasználói beállítások. Ha az index felül van írva, engedélyeznie kell a *.pythonhosted.org is.
cloud.r-project.org CRAN-csomagok R-fejlesztéshez való telepítésekor használatos.
*pytorch.org Néhány példa a PyTorch alapján használja.
*.tensorflow.org Egyes példák a Tensorflow alapján használják.
code.visualstudio.com A VS Code asztali verziójának letöltéséhez és telepítéséhez szükséges. Ez a VS Code Web esetében nem szükséges.

update.code.visualstudio.com *.vo.msecnd.net
A számítási példányra telepített VS Code-kiszolgáló bitjeinek lekérésére szolgál beállítási szkripttel.

marketplace.visualstudio.com
vscode.blob.core.windows.net *.gallerycdn.vsassets.io
A VS Code-bővítmények letöltéséhez és telepítéséhez szükséges. Ezek lehetővé teszik a VS Code-hoz készült Azure ML-bővítmény által biztosított számítási példányokhoz való távoli kapcsolatot. További információ: Csatlakozás Azure Machine Learning számítási példányhoz a Visual Studio Code-ban .
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ó bitjeinek lekérésére szolgál. A websocket-kiszolgáló a Visual Studio Code-ügyfél (asztali alkalmazás) kéréseinek a számítási példányon futó Visual Studio Code-kiszolgálóra való továbbítására szolgál.

Ha Azure Kubernetes Service (AKS) szolgáltatást használja az Azure Machine Learning szolgáltatással, engedélyezze a következő forgalmat az AKS virtuális hálózatra:

További információ a tűzfalmegoldás használatáról: A szükséges bemeneti és kimeneti kommunikáció konfigurálása.

A munkaterület védelme privát végponttal

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

A privát végpont munkaterülethez való 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ó védelme önmagában nem biztosítja a végpontok közötti biztonságot. A megoldás egyes összetevőinek védelméhez a cikk további részében és a VNet sorozatban szereplő lépéseket kell követnie. Ha például privát végpontot használ a munkaterülethez, de az Azure Storage-fiók nincs a virtuális hálózat mögött, a munkaterület és a tároló közötti forgalom nem használja a virtuális hálózatot a biztonság érdekében.

Azure Storage-fiókok védelme

Az Azure Machine Learning olyan tárfiókokat támogat, amelyek privát végpont vagy szolgáltatásvégpont használatára vannak konfigurálva.

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

  2. A Privát végpontok használata az Azure Storage-hoz című témakör információi alapján adjon hozzá privát végpontokat a következő tárolási erőforrásokhoz:

    A privát végpont konfigurációs lapjának képernyőképe blob- és fájlbeállításokkal

    Tipp

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

  3. Miután létrehozta a tárerőforrások privát végpontjait, válassza a Tűzfalak és virtuális hálózatok lapot a Tárfiók hálózatkezelése területén.

  4. Válassza a Kijelölt hálózatok lehetőséget, majd az Erőforráspéldányok területen válassza Microsoft.MachineLearningServices/Workspace az Erőforrás típusa lehetőséget. Válassza ki a munkaterületet példánynévvel. 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 lehetőséget a megbízható szolgáltatások listájában a tárfiók eléréséhez , hogy szélesebb körben engedélyezze a hozzáférést a megbízható szolgáltatásokból. További információ: Azure Storage-tűzfalak és virtuális hálózatok konfigurálása.

    A hálózati terület az Azure Storage oldalán a Azure Portal privát végpont használatakor

  5. A konfiguráció mentéséhez 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 letiltása.

Az Azure Key Vault védelme

Az Azure Machine Learning egy társított Key Vault-példányt használ a következő hitelesítő adatok tárolásához:

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

Az Azure Key Vault úgy konfigurálható, hogy privát végpontot vagy szolgáltatásvégpontot használjon. Az Azure Machine Learning kísérletezési képességeinek virtuális hálózat mögötti Azure Key Vault használatával történő 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 ugyanabban a hálózatban kell lennie, mint a munkaterület privát végpontja.

A privát végpont azure Key Vault való használatáról a Key Vault integrálása Azure Private Link című témakörben olvashat.

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. Alapértelmezés szerint a munkaterület csak akkor hoz létre ACR-példányt, ha szüksége van rá. Az egyik létrehozásának kényszerítéséhez a jelen szakasz lépéseinek végrehajtása előtt betanítást vagy üzembe helyezést kell végrehajtania 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 a virtuális hálózatban:

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

    A KÖVETKEZŐKRE VONATKOZIK:Azure CLI ml extension v2 (aktuális)

    Ha telepítette a Machine Learning v2 bővítményt az Azure CLI-hez, a az ml workspace show paranccsal megjelenítheti a munkaterület adatait. A v1 bővítmény nem adja vissza ezeket az információkat.

    az ml workspace show -n yourworkspacename -g resourcegroupname --query 'container_registry'
    

    Ez a parancs a függvényhez hasonló értéket ad "/subscriptions/{GUID}/resourceGroups/{resourcegroupname}/providers/Microsoft.ContainerRegistry/registries/{ACRname}"vissza. A sztring utolsó része a munkaterület Azure Container Registry neve.

  2. Korlátozza a virtuális hálózathoz való hozzáférést a Privát csatlakozás egy Azure Container Registry című szakaszban leírt lépésekkel. A virtuális hálózat hozzáadásakor válassza ki az Azure Machine Learning-erőforrások virtuális hálózatát és alhálózatát.

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

  4. Azure Machine Learning számítási fürt létrehozása. Ez a fürt Docker-rendszerképek létrehozására szolgál, ha az ACR egy virtuális hálózat mögött van. További információ: Számítási fürt létrehozása.

  5. Az alábbi módszerek egyikével konfigurálhatja a munkaterületet Docker-rendszerképek számítási fürt használatával történő létrehozásához.

    Fontos

    A következő korlátozások érvényesek, ha számítási fürtöt használ a rendszerkép-buildekhez:

    • Csak egy cpu-termékváltozat támogatott.
    • Ha nyilvános IP-cím nélkül konfigurált számítási fürtöt használ, meg kell adnia valamilyen módot a fürt számára a nyilvános internet eléréséhez. Internet-hozzáférésre van szükség a Microsoft Container Registryben tárolt képek, a Pypi-on, a Condán stb. telepített csomagok eléréséhez. Konfigurálnia kell a felhasználó által definiált útválasztást (UDR), hogy elérhesse a nyilvános IP-címet az internet eléréséhez. Használhatja például a tűzfal nyilvános IP-címét, vagy használhatja Virtual Network NAT-ot nyilvános IP-címmel. További információ: Biztonságos betanítása virtuális hálózaton.

    az ml workspace update A paranccsal buildszámítást állíthat be. A parancs ugyanaz a gépi tanuláshoz készült v1 és v2 Azure CLI-bővítmények esetében is. A következő parancsban cserélje le a elemet myworkspace a munkaterület nevére, myresourcegroup a munkaterületet tartalmazó erőforráscsoportra és mycomputecluster a számítási fürt nevére:

    az ml workspace update --name myworkspace --resource-group myresourcegroup --image-build-compute mycomputecluster
    

Tipp

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

Biztonságos csatlakozás a munkaterülethez

A virtuális hálózat mögött biztonságos munkaterülethez való csatlakozáshoz 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 történik. Kétféle VPN-átjárót használhat:

  • ExpressRoute – A helyszíni hálózatokat privát kapcsolaton keresztül csatlakoztatja a felhőhöz. A kapcsolat egy kapcsolatszolgáltató használatával jön létre.

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

Fontos

VPN-átjáró vagy ExpressRoute használatakor meg kell terveznie, hogyan működik a névfeloldás a helyszíni erőforrások és a virtuális hálózatban lévők között. További információ: Egyéni DNS-kiszolgáló használata.

Ha problémákat tapasztal a munkaterülethez való csatlakozás során, tekintse meg a biztonságos munkaterület-kapcsolat hibaelhárítását ismertető cikket.

Munkaterület-diagnosztika

Diagnosztikát futtathat a munkaterületen a Azure Machine Learning stúdió vagy a Python SDK-ból. A diagnosztika futtatása 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ó: A munkaterület diagnosztikájának használata.

Következő lépések

Ez a cikk egy Azure Machine Learning-munkafolyamat biztonságossá tételéről szóló sorozat része. Tekintse meg a sorozat további cikkeit: