Zabezpieczanie zasobów obszaru roboczego usługi Azure Machine Learning przy użyciu sieci wirtualnych
DOTYCZY: Rozszerzenie interfejsu wiersza polecenia platformy Azure w wersji 2 (current)Zestaw PYTHON SDK azure-ai-ml v2 (bieżąca)
DOTYCZY: Rozszerzenie interfejsu wiersza polecenia platformy Azure ml w wersji 1zestawu SDK języka Python azureml v1
Napiwek
Zamiast kroków opisanych w tym artykule można użyć zarządzanych sieci wirtualnych usługi Azure Machine Learning. W przypadku zarządzanej sieci wirtualnej usługa Azure Machine Learning obsługuje zadanie izolacji sieci dla obszaru roboczego i zarządzanych zasobów obliczeniowych. Możesz również dodać prywatne punkty końcowe dla zasobów wymaganych przez obszar roboczy, na przykład konto usługi Azure Storage. Aby uzyskać więcej informacji, zobacz Obszar roboczy zarządzana izolacja sieci.
Dowiedz się, jak zabezpieczyć zasoby obszaru roboczego usługi Azure Machine Learning i środowiska obliczeniowe przy użyciu sieci wirtualnych platformy Azure. W tym artykule użyto przykładowego scenariusza pokazującego, jak skonfigurować pełną sieć wirtualną.
Ten artykuł jest częścią serii dotyczącej zabezpieczania przepływu pracy usługi Azure Machine Learning. Zobacz inne artykuły z tej serii:
- Korzystanie z sieci zarządzanych
- Zabezpieczanie zasobów obszaru roboczego
- Zabezpieczanie rejestrów uczenia maszynowego
- Zabezpieczanie środowiska szkoleniowego
- Zabezpieczanie środowiska wnioskowania
- Włączanie funkcji programu Studio
- Używanie niestandardowego systemu DNS
- Korzystanie z zapory
- Izolacja sieci platformy interfejsu API
Aby zapoznać się z samouczkiem dotyczącym tworzenia bezpiecznego obszaru roboczego, odwiedź stronę Samouczek: tworzenie bezpiecznego obszaru roboczego, szablonu Bicep lub szablonu narzędzia Terraform.
Wymagania wstępne
W tym artykule założono, że znasz następujące artykuły:
- Azure Virtual Networks
- Sieć IP
- Obszar roboczy usługi Azure Machine Learning z prywatnym punktem końcowym
- Sieciowe grupy zabezpieczeń (NSG)
- Zapory sieciowe
Przykładowy scenariusz
W tej sekcji dowiesz się, jak skonfigurowano typowy scenariusz sieciowy w celu zabezpieczenia komunikacji usługi Azure Machine Learning z prywatnymi adresami IP.
W poniższej tabeli porównaliśmy, w jaki sposób usługi uzyskują dostęp do różnych części sieci azure Machine Learning z siecią wirtualną i bez nich:
Scenariusz | Workspace | Skojarzone zasoby | Trenowanie środowiska obliczeniowego | Wnioskowanie środowiska obliczeniowego |
---|---|---|---|---|
Bez sieci wirtualnej | Publiczny adres IP | Publiczny adres IP | Publiczny adres IP | Publiczny adres IP |
Publiczny obszar roboczy, wszystkie inne zasoby w sieci wirtualnej | Publiczny adres IP | Publiczny adres IP (punkt końcowy usługi) -lub- Prywatny adres IP (prywatny punkt końcowy) |
Publiczny adres IP | Prywatny adres IP |
Zabezpieczanie zasobów w sieci wirtualnej | Prywatny adres IP (prywatny punkt końcowy) | Publiczny adres IP (punkt końcowy usługi) -lub- Prywatny adres IP (prywatny punkt końcowy) |
Prywatny adres IP | Prywatny adres IP |
- Obszar roboczy — utwórz prywatny punkt końcowy dla obszaru roboczego. Prywatny punkt końcowy łączy obszar roboczy z siecią wirtualną za pośrednictwem kilku prywatnych adresów IP.
- Dostęp publiczny — opcjonalnie możesz włączyć dostęp publiczny dla zabezpieczonego obszaru roboczego.
- Skojarzony zasób — użyj punktów końcowych usługi lub prywatnych punktów końcowych, aby połączyć się z zasobami obszaru roboczego, takimi jak Azure Storage, Azure Key Vault. W przypadku usług Azure Container Services użyj prywatnego punktu końcowego.
- Punkty końcowe usługi zapewniają tożsamość sieci wirtualnej w usłudze platformy Azure. Po włączeniu punktów końcowych usługi w sieci wirtualnej możesz dodać regułę sieci wirtualnej, aby zabezpieczyć zasoby usługi platformy Azure do sieci wirtualnej. Punkty końcowe usługi używają publicznych adresów IP.
- Prywatne punkty końcowe to interfejsy sieciowe, które bezpiecznie łączą Cię z usługą obsługiwaną przez usługę Azure Private Link. Prywatny punkt końcowy używa prywatnego adresu IP z sieci wirtualnej, efektywnie przenosząc usługę do sieci wirtualnej.
- Trenowanie dostępu do zasobów obliczeniowych — uzyskiwanie dostępu do celów obliczeniowych trenowania, takich jak wystąpienie obliczeniowe usługi Azure Machine Learning i klastry obliczeniowe usługi Azure Machine Learning z publicznymi lub prywatnymi adresami IP.
- Dostęp do obliczeń wnioskowania — uzyskiwanie dostępu do klastrów obliczeniowych usługi Azure Kubernetes Services (AKS) przy użyciu prywatnych adresów IP.
W następnych sekcjach pokazano, jak zabezpieczyć opisany wcześniej scenariusz sieciowy. Aby zabezpieczyć sieć, musisz:
- Zabezpieczanie obszaru roboczego i skojarzonych zasobów.
- Zabezpieczanie środowiska szkoleniowego.
- Zabezpieczanie środowiska wnioskowania.
- Opcjonalnie: włącz funkcję studio.
- Skonfiguruj ustawienia zapory.
- Konfigurowanie rozpoznawania nazw DNS.
Publiczny obszar roboczy i zabezpieczone zasoby
Ważne
Chociaż jest to obsługiwana konfiguracja usługi Azure Machine Learning, firma Microsoft nie zaleca jej. Dane na koncie usługi Azure Storage za siecią wirtualną można uwidocznić w publicznym obszarze roboczym. Przed użyciem jej w środowisku produkcyjnym należy zweryfikować tę konfigurację z zespołem ds. zabezpieczeń.
Jeśli chcesz uzyskać dostęp do obszaru roboczego za pośrednictwem publicznego Internetu przy zachowaniu wszystkich skojarzonych zasobów zabezpieczonych w sieci wirtualnej, wykonaj następujące czynności:
Tworzenie sieci wirtualnej platformy Azure. Ta sieć zabezpiecza zasoby używane przez obszar roboczy.
Użyj jednej z następujących opcji, aby utworzyć publicznie dostępny obszar roboczy:
- Utwórz obszar roboczy usługi Azure Machine Learning, który nie korzysta z sieci wirtualnej. Aby uzyskać więcej informacji, zobacz Zarządzanie obszarami roboczymi usługi Azure Machine Learning.
LUB
- Utwórz obszar roboczy z obsługą usługi Private Link, aby umożliwić komunikację między siecią wirtualną a obszarem roboczym. Następnie włącz publiczny dostęp do obszaru roboczego.
- Utwórz obszar roboczy usługi Azure Machine Learning, który nie korzysta z sieci wirtualnej. Aby uzyskać więcej informacji, zobacz Zarządzanie obszarami roboczymi usługi Azure Machine Learning.
- Utwórz obszar roboczy z obsługą usługi Private Link, aby umożliwić komunikację między siecią wirtualną a obszarem roboczym. Następnie włącz publiczny dostęp do obszaru roboczego.
Dodaj następujące usługi do sieci wirtualnej przy użyciu punktu końcowego usługi lub prywatnego punktu końcowego. Zezwalaj również zaufanym usługi firmy Microsoft na dostęp do tych usług:
Usługa Informacje o punkcie końcowym Zezwalaj na zaufane informacje Azure Key Vault Prywatny punkt końcowy
usługiZezwalaj zaufanym usługi firmy Microsoft na obejście tej zapory Konto magazynu platformy Azure Prywatny punkt końcowy usługi i prywatny punkt końcowy Udzielanie dostępu do zaufanych usług platformy Azure Azure Container Registry Prywatny punkt końcowy Zezwalaj na zaufane usługi Usługa Informacje o punkcie końcowym Zezwalaj na zaufane informacje Azure Key Vault Prywatny punkt końcowy
usługiZezwalaj zaufanym usługi firmy Microsoft na obejście tej zapory Konto magazynu platformy Azure Prywatny punkt końcowy usługi i prywatny punkt końcowy Udzielanie dostępu do zaufanych usług platformy Azure Azure Container Registry Prywatny punkt końcowy Zezwalaj na zaufane usługi We właściwościach konta usługi Azure Storage dla obszaru roboczego dodaj adres IP klienta do listy dozwolonych w ustawieniach zapory. Aby uzyskać więcej informacji, zobacz Konfigurowanie zapór i sieci wirtualnych.
Zabezpieczanie obszaru roboczego i skojarzonych zasobów
Wykonaj poniższe kroki, aby zabezpieczyć obszar roboczy i skojarzone zasoby. Te kroki umożliwiają usługom komunikowanie się w sieci wirtualnej.
Tworzenie sieci wirtualnych platformy Azure. Ta sieć zabezpiecza obszar roboczy i inne zasoby. Następnie utwórz obszar roboczy z obsługą usługi Private Link, aby umożliwić komunikację między siecią wirtualną a obszarem roboczym.
Dodaj następujące usługi do sieci wirtualnej przy użyciu punktu końcowego usługi lub prywatnego punktu końcowego. Zezwalaj również zaufanym usługi firmy Microsoft na dostęp do tych usług:
Usługa Informacje o punkcie końcowym Zezwalaj na zaufane informacje Azure Key Vault Prywatny punkt końcowy
usługiZezwalaj zaufanym usługi firmy Microsoft na obejście tej zapory Konto magazynu platformy Azure Prywatny punkt końcowy usługi i prywatny punkt końcowy Udzielanie dostępu z wystąpień zasobów platformy Azure lub
udzielanie dostępu do zaufanych usług platformy AzureAzure Container Registry Prywatny punkt końcowy Zezwalaj na zaufane usługi
Tworzenie sieci wirtualnych platformy Azure. Ta sieć wirtualna zabezpiecza obszar roboczy i inne zasoby. Następnie utwórz obszar roboczy z obsługą usługi Private Link, aby umożliwić komunikację między siecią wirtualną a obszarem roboczym.
Dodaj następujące usługi do sieci wirtualnej przy użyciu punktu końcowego usługi lub prywatnego punktu końcowego. Zezwalaj również zaufanym usługi firmy Microsoft na dostęp do tych usług:
Usługa Informacje o punkcie końcowym Zezwalaj na zaufane informacje Azure Key Vault Prywatny punkt końcowy
usługiZezwalaj zaufanym usługi firmy Microsoft na obejście tej zapory Konto magazynu platformy Azure Prywatny punkt końcowy usługi i prywatny punkt końcowy Udzielanie dostępu z wystąpień zasobów platformy Azure lub
udzielanie dostępu do zaufanych usług platformy AzureAzure Container Registry Prywatny punkt końcowy Zezwalaj na zaufane usługi
Aby uzyskać szczegółowe instrukcje dotyczące wykonywania tych kroków, zobacz Zabezpieczanie obszaru roboczego usługi Azure Machine Learning.
Aby uzyskać szczegółowe instrukcje dotyczące wykonywania tych kroków, zobacz Zabezpieczanie obszaru roboczego usługi Azure Machine Learning.
Ograniczenia
Zabezpieczanie obszaru roboczego i skojarzonych zasobów w sieci wirtualnej ma następujące ograniczenia:
Obszar roboczy i domyślne konto magazynu muszą znajdować się w tej samej sieci wirtualnej. Jednak podsieci w tej samej sieci wirtualnej są dozwolone. Na przykład obszar roboczy w jednej podsieci i magazynie w innej.
Zalecamy, aby usługi Azure Key Vault i Azure Container Registry dla obszaru roboczego również znajdują się w tej samej sieci wirtualnej. Jednak oba te zasoby mogą również znajdować się w równorzędnej sieci wirtualnej.
Zabezpieczanie środowiska szkoleniowego
W tej sekcji dowiesz się, jak zabezpieczyć środowisko szkoleniowe w usłudze Azure Machine Learning. Dowiesz się również, jak usługa Azure Machine Learning wykonuje zadanie szkoleniowe, aby zrozumieć, jak konfiguracje sieci współpracują ze sobą.
Aby zabezpieczyć środowisko szkoleniowe, wykonaj następujące czynności:
Utwórz wystąpienie obliczeniowe i klaster komputerów usługi Azure Machine Learning w sieci wirtualnej. Zadania szkoleniowe są uruchamiane na tych obliczeniach.
Jeśli klaster obliczeniowy lub wystąpienie obliczeniowe używa publicznego adresu IP, musisz zezwolić na komunikację przychodzącą, aby usługi zarządzania mogły przesyłać zadania do zasobów obliczeniowych.
Napiwek
Klaster obliczeniowy i wystąpienie obliczeniowe można utworzyć z publicznym adresem IP lub bez tego adresu. Jeśli utworzono przy użyciu publicznego adresu IP, otrzymasz moduł równoważenia obciążenia z publicznym adresem IP umożliwiającym akceptowanie dostępu przychodzącego z usługi Azure Batch i usługi Azure Machine Learning. Jeśli używasz zapory, musisz skonfigurować routing zdefiniowany przez użytkownika (UDR). Jeśli utworzono bez publicznego adresu IP, uzyskasz usługę łącza prywatnego, aby zaakceptować dostęp przychodzący z usługi Azure Batch i usługi Azure Machine Learning bez publicznego adresu IP.
Utwórz wystąpienie obliczeniowe i klaster komputerów usługi Azure Machine Learning w sieci wirtualnej. Trenowanie zadań uruchamianych na tych obliczeniach.
Jeśli klaster obliczeniowy lub wystąpienie obliczeniowe używa publicznego adresu IP, musisz zezwolić na komunikację przychodzącą, aby usługi zarządzania mogły przesyłać zadania do zasobów obliczeniowych.
Napiwek
Klaster obliczeniowy i wystąpienie obliczeniowe można utworzyć z publicznym adresem IP lub bez tego adresu. Jeśli utworzono przy użyciu publicznego adresu IP, otrzymasz moduł równoważenia obciążenia z publicznym adresem IP umożliwiającym akceptowanie dostępu przychodzącego z usługi Azure Batch i usługi Azure Machine Learning. Jeśli używasz zapory, musisz skonfigurować routing zdefiniowany przez użytkownika (UDR). Jeśli utworzono bez publicznego adresu IP, uzyskasz usługę łącza prywatnego, aby zaakceptować dostęp przychodzący z usługi Azure Batch i usługi Azure Machine Learning bez publicznego adresu IP.
Aby uzyskać szczegółowe instrukcje dotyczące wykonywania tych kroków, zobacz Zabezpieczanie środowiska szkoleniowego.
Aby uzyskać szczegółowe instrukcje dotyczące wykonywania tych kroków, zobacz Zabezpieczanie środowiska szkoleniowego.
Przykładowe przesyłanie zadania szkoleniowego
W tej sekcji dowiesz się, jak usługa Azure Machine Learning bezpiecznie komunikuje się między usługami w celu przesłania zadania szkoleniowego. W tym przykładzie pokazano, jak wszystkie konfiguracje współpracują ze sobą w celu zabezpieczenia komunikacji.
Klient przekazuje skrypty szkoleniowe i dane szkoleniowe do kont magazynu zabezpieczonych za pomocą usługi lub prywatnego punktu końcowego.
Klient przesyła zadanie szkoleniowe do obszaru roboczego usługi Azure Machine Learning za pośrednictwem prywatnego punktu końcowego.
Usługa Azure Batch odbiera zadanie z obszaru roboczego. Następnie przesyła zadanie szkoleniowe do środowiska obliczeniowego za pośrednictwem publicznego modułu równoważenia obciążenia dla zasobu obliczeniowego.
Zasób obliczeniowy odbiera zadanie i rozpoczyna trenowanie. Zasób obliczeniowy używa informacji przechowywanych w magazynie kluczy w celu uzyskania dostępu do kont magazynu w celu pobrania plików szkoleniowych i przekazania danych wyjściowych.
Ograniczenia
- Wystąpienie usługi Azure Compute i klastry usługi Azure Compute muszą znajdować się w tej samej sieci wirtualnej, subskrypcji i tym samym regionie co obszar roboczy i skojarzone z nim zasoby.
Zabezpieczanie środowiska wnioskowania
Można włączyć izolację sieci dla zarządzanych punktów końcowych online w celu zabezpieczenia następującego ruchu sieciowego:
- Przychodzące żądania oceniania.
- Komunikacja wychodząca z obszarem roboczym, usługą Azure Container Registry i usługą Azure Blob Storage.
Aby uzyskać więcej informacji, zobacz Włączanie izolacji sieciowej dla zarządzanych punktów końcowych online.
W tej sekcji przedstawiono opcje dostępne do zabezpieczania środowiska wnioskowania podczas korzystania z rozszerzenia interfejsu wiersza polecenia platformy Azure dla uczenia maszynowego w wersji 1 lub zestawu SDK języka Python usługi Azure Machine Learning w wersji 1. Podczas wdrażania w wersji 1 zalecamy używanie klastrów usługi Azure Kubernetes Services (AKS) na potrzeby wdrożeń produkcyjnych na dużą skalę.
Istnieją dwie opcje klastrów usługi AKS w sieci wirtualnej:
- Wdróż lub dołącz domyślny klaster usługi AKS do sieci wirtualnej.
- Dołącz prywatny klaster usługi AKS do sieci wirtualnej.
Domyślne klastry usługi AKS mają płaszczyznę sterowania z publicznymi adresami IP. Domyślny klaster usługi AKS można dodać do sieci wirtualnej podczas wdrażania lub dołączyć klaster po utworzeniu.
Prywatne klastry AKS mają płaszczyznę sterowania, do której można uzyskać dostęp tylko za pośrednictwem prywatnych adresów IP. Po utworzeniu klastra należy dołączyć prywatne klastry AKS.
Aby uzyskać szczegółowe instrukcje dotyczące dodawania klastrów domyślnych i prywatnych, zobacz Zabezpieczanie środowiska wnioskowania.
Niezależnie od używanego domyślnego klastra usługi AKS lub prywatnego klastra usługi AKS, jeśli klaster usługi AKS znajduje się za siecią wirtualną, obszar roboczy i jego zasoby skojarzone (magazyn, magazyn kluczy i usługa ACR) muszą mieć prywatne punkty końcowe lub punkty końcowe usługi w tej samej sieci wirtualnej co klaster usługi AKS.
Poniższy diagram sieciowy przedstawia zabezpieczony obszar roboczy usługi Azure Machine Learning z prywatnym klastrem usługi AKS dołączonym do sieci wirtualnej.
Opcjonalnie: Włączanie dostępu publicznego
Obszar roboczy za siecią wirtualną można zabezpieczyć przy użyciu prywatnego punktu końcowego i nadal zezwalać na dostęp za pośrednictwem publicznego Internetu. Początkowa konfiguracja jest taka sama jak zabezpieczanie obszaru roboczego i skojarzonych zasobów.
Po zabezpieczeniu obszaru roboczego przy użyciu prywatnego punktu końcowego wykonaj następujące kroki, aby umożliwić klientom zdalne programowanie przy użyciu zestawu SDK lub usługi Azure Machine Learning Studio:
- Włącz publiczny dostęp do obszaru roboczego.
- Skonfiguruj zaporę usługi Azure Storage, aby zezwolić na komunikację z adresem IP klientów łączących się za pośrednictwem publicznego Internetu.
- Włącz publiczny dostęp do obszaru roboczego.
- Skonfiguruj zaporę usługi Azure Storage, aby zezwolić na komunikację z adresem IP klientów łączących się za pośrednictwem publicznego Internetu.
Opcjonalne: włączanie funkcji programu Studio
Jeśli magazyn znajduje się w sieci wirtualnej, należy wykonać dodatkowe kroki konfiguracji, aby włączyć pełną funkcjonalność w programie Studio. Domyślnie następujące funkcje są wyłączone:
- Podgląd danych w programie Studio.
- Wizualizacja danych w projektancie.
- Wdrażanie modelu w projektancie.
- Przesyłanie eksperymentu AutoML.
- Rozpoczynanie projektu etykietowania.
Aby włączyć pełną funkcjonalność programu Studio, zobacz Korzystanie z usługi Azure Machine Learning Studio w sieci wirtualnej.
Ograniczenia
Etykietowanie danych wspomaganych przez uczenie maszynowe nie obsługuje domyślnego konta magazynu za siecią wirtualną. Zamiast tego użyj konta magazynu innego niż domyślne w przypadku etykietowania danych wspomaganych przez uczenie maszynowe.
Napiwek
Jeśli nie jest to domyślne konto magazynu, konto używane przez etykietowanie danych może być zabezpieczone za siecią wirtualną.
Konfigurowanie ustawień zapory
Skonfiguruj zaporę do kontrolowania ruchu między zasobami obszaru roboczego usługi Azure Machine Learning a publicznym Internetem. Zalecamy usługę Azure Firewall, ale możesz użyć innych produktów zapory.
Aby uzyskać więcej informacji na temat ustawień zapory, zobacz Używanie obszaru roboczego za zaporą.
Niestandardowe DNS
Jeśli musisz użyć niestandardowego rozwiązania DNS dla sieci wirtualnej, musisz dodać rekordy hostów dla obszaru roboczego.
Aby uzyskać więcej informacji na temat wymaganych nazw domen i adresów IP, zobacz , jak używać obszaru roboczego z niestandardowym serwerem DNS.
Microsoft Sentinel
Microsoft Sentinel to rozwiązanie zabezpieczeń, które można zintegrować z usługą Azure Machine Learning. Na przykład przy użyciu notesów Jupyter udostępnianych za pośrednictwem usługi Azure Machine Learning. Aby uzyskać więcej informacji, zobacz Używanie notesów Jupyter do polowania na zagrożenia bezpieczeństwa.
Dostęp publiczny
Usługa Microsoft Sentinel może automatycznie utworzyć obszar roboczy, jeśli jesteś w porządku z publicznym punktem końcowym. W tej konfiguracji analitycy centrum operacji zabezpieczeń (SOC) i administratorzy systemu łączą się z notesami w obszarze roboczym za pośrednictwem usługi Sentinel.
Aby uzyskać informacje na temat tego procesu, zobacz Tworzenie obszaru roboczego usługi Azure Machine Learning z poziomu usługi Microsoft Sentinel
Prywatny punkt końcowy
Jeśli chcesz zabezpieczyć obszar roboczy i skojarzone zasoby w sieci wirtualnej, musisz najpierw utworzyć obszar roboczy usługi Azure Machine Learning. Musisz również utworzyć maszynę wirtualną "jump box" w tej samej sieci wirtualnej co obszar roboczy i włączyć łączność z usługą Azure Bastion. Podobnie jak w przypadku konfiguracji publicznej, analitycy SOC i administratorzy mogą łączyć się przy użyciu usługi Microsoft Sentinel, ale niektóre operacje muszą być wykonywane przy użyciu usługi Azure Bastion w celu nawiązania połączenia z maszyną wirtualną.
Aby uzyskać więcej informacji na temat tej konfiguracji, zobacz Create an Azure Machine Learning workspace from Microsoft Sentinel (Tworzenie obszaru roboczego usługi Azure Machine Learning z usługi Microsoft Sentinel)
Powiązana zawartość
Ten artykuł jest częścią serii dotyczącej zabezpieczania przepływu pracy usługi Azure Machine Learning. Zobacz inne artykuły z tej serii: