Schützen von Azure Machine Learning-Arbeitsbereichsressourcen mit virtuellen Netzwerken (VNets)

Tipp

Microsoft empfiehlt die Verwendung von verwalteten virtuellen Netzwerken für Azure Machine Learning anstelle der Schritte in diesem Artikel. Mit einem verwalteten virtuellen Netzwerk übernimmt Azure Machine Learning die Aufgabe der Netzwerkisolation für Ihren Arbeitsbereich und Ihre verwalteten Computeressourcen. Sie können auch private Endpunkte für Ressourcen hinzufügen, die vom Arbeitsbereich benötigt werden, z. B. Azure Storage-Konto. Weitere Informationen finden Sie unter Verwaltete Netzwerkisolation auf Arbeitsbereichsebene (Vorschau).

Schützen Sie Arbeitsbereichsressourcen und Compute-Umgebungen von Azure Machine Learning mithilfe virtueller Azure-Netzwerke (VNets). Hier wird anhand eines Beispielszenarios veranschaulicht, wie Sie ein vollständiges virtuelles Netzwerk konfigurieren.

Dieser Artikel ist Teil einer Reihe zum Schützen eines Azure Machine Learning-Workflows. Sehen Sie sich auch die anderen Artikel in dieser Reihe an:

Dieser Artikel ist Teil einer Reihe zum Schützen eines Azure Machine Learning-Workflows. Sehen Sie sich auch die anderen Artikel in dieser Reihe an:

Ein Tutorial zum Erstellen eines sicheren Arbeitsbereichs finden Sie unter Tutorial: Erstellen eines sicheren Arbeitsbereichs oder Tutorial: Erstellen eines sicheren Arbeitsbereichs mithilfe einer Vorlage.

Voraussetzungen

In diesem Artikel wird vorausgesetzt, dass Sie mit den folgenden Artikeln vertraut sind:

Beispielszenario

In diesem Abschnitt erfahren Sie, wie ein Netzwerkszenario grundsätzlich eingerichtet wird, um die Azure Machine Learning-Kommunikation mit privaten IP-Adressen zu schützen.

In der folgenden Tabelle sehen Sie in einer Gegenüberstellung, wie Dienste mit und ohne VNet auf verschiedene Teile eines Azure Machine Learning-Netzwerks zugreifen:

Szenario Arbeitsbereich Zugeordnete Ressourcen Trainingscompute-Umgebung Rückschlusscompute-Umgebung
Kein virtuelles Netzwerk Öffentliche IP-Adresse Öffentliche IP-Adresse Öffentliche IP-Adresse Öffentliche IP-Adresse
Öffentlicher Arbeitsbereich, alle anderen Ressourcen in einem virtuellen Netzwerk Öffentliche IP-Adresse Öffentliche IP-Adresse (Dienstendpunkt)
oder
Private IP-Adresse (privater Endpunkt)
Öffentliche IP-Adresse Private IP-Adresse
Sichere Ressourcen in einem virtuellen Netzwerk Private IP-Adresse (privater Endpunkt) Öffentliche IP-Adresse (Dienstendpunkt)
oder
Private IP-Adresse (privater Endpunkt)
Private IP-Adresse Private IP-Adresse
  • Arbeitsbereich: Erstellen Sie einen privaten Endpunkt für Ihren Arbeitsbereich. Der private Endpunkt verbindet den Arbeitsbereich über mehrere private IP-Adressen mit dem VNET.
    • Öffentlicher Zugriff: Sie können optional den öffentlichen Zugriff für einen geschützten Arbeitsbereich aktivieren.
  • Zugeordnete Ressource: Stellen Sie mithilfe von Dienstendpunkten oder privaten Endpunkten eine Verbindung mit Arbeitsbereichsressourcen wie Azure Storage oder Azure Key Vault her. Verwenden Sie für Azure Container Services einen privaten Endpunkt.
    • Dienstendpunkte geben die Identität Ihres virtuellen Netzwerks gegenüber dem Azure-Dienst an. Nachdem Sie Dienstendpunkte in Ihrem virtuellen Netzwerk aktiviert haben, können Sie eine virtuelle Netzwerkregel hinzufügen, um die Azure-Dienstressourcen in Ihrem virtuellen Netzwerk zu schützen. Dienstendpunkte nutzen öffentliche IP-Adressen.
    • Private Endpunkte sind Netzwerkschnittstellen, die das Herstellen einer sicheren Verbindung mit einem Dienst gestatten, der über Private Link betrieben wird. Ein privater Endpunkt verwendet eine private IP-Adresse in Ihrem VNET und bindet den Dienst so effektiv in das VNET ein.
  • Trainingscomputezugriff: Hiermit greifen Sie über öffentliche oder private IP-Adressen auf Computeziele zu, die zu Trainingszwecken verwendet werden, wie beispielsweise eine Azure Machine Learning Compute-Instanzen oder Azure Machine Learning Compute-Cluster (Vorschau).
  • Rückschlusscomputezugriff: Hiermit greifen Sie mit privaten IP-Adressen auf AKS-Computecluster (Azure Kubernetes Services) zu.

In den nächsten Abschnitten wird gezeigt, wie Sie das zuvor beschriebene Netzwerkszenario absichern. Zum Schützen Ihres Netzwerks müssen Sie folgende Schritte ausführen:

  1. Arbeitsbereich und zugehörige Ressourcen schützen
  2. Trainingsumgebung schützen
  3. Rückschlussumgebung schützen
  4. Studio-Funktionalität aktivieren (optional)
  5. Firewalleinstellungen konfigurieren
  6. DNS-Namensauflösung konfigurieren

Öffentlicher Arbeitsbereich und geschützte Ressourcen

Wichtig

Auch wenn dies eine unterstützte Konfiguration für Azure Machine Learning ist, wird sie von Microsoft nicht empfohlen. Die Daten im Azure Storage-Konto hinter dem virtuellen Netzwerk können im öffentlichen Arbeitsbereich freigegeben werden. Sie sollten diese Konfiguration mit Ihrem Sicherheitsteam überprüfen, bevor Sie sie in der Produktion verwenden.

Wenn Sie über das öffentliche Internet auf den Arbeitsbereich zugreifen und gleichzeitig alle zugehörigen Ressourcen in einem virtuellen Netzwerk schützen möchten, führen Sie die folgenden Schritte aus:

  1. Erstellen Sie ein virtuelles Azure-Netzwerk. Dieses Netzwerk schützt die vom Arbeitsbereich verwendeten Ressourcen.

  2. Verwenden Sie eine der folgenden Optionen, um einen öffentlich zugänglichen Arbeitsbereich zu erstellen:

    oder

  3. Fügen Sie dem virtuellen Netzwerk die folgenden Dienste hinzu. Verwenden Sie dazu entweder einen Dienstendpunkt oder einen privaten Endpunkt. Gewähren Sie außerdem vertrauenswürdigen Microsoft-Diensten Zugriff auf diese Dienste:

  4. Fügen Sie in den Eigenschaften der Azure Storage-Konten für Ihren Arbeitsbereich Ihre Client-IP-Adresse der Liste mit den zulässigen Adressen in den Firewalleinstellungen hinzu. Weitere Informationen finden Sie unter Konfigurieren von Firewalls und virtuellen Netzwerken.

Schützen des Arbeitsbereichs und zugehöriger Ressourcen

Führen Sie die folgenden Schritte aus, um Ihren Arbeitsbereich und zugehörige Ressourcen zu schützen. Danach können Ihre Dienste im virtuellen Netzwerk kommunizieren.

  1. Erstellen Sie ein virtuelles Azure-Netzwerk. Dieses Netzwerk schützt den Arbeitsbereich und andere Ressourcen. Erstellen Sie anschließend einen Arbeitsbereich mit Private Link-Unterstützung, um die Kommunikation zwischen Ihrem VNet und dem Arbeitsbereich zu ermöglichen.

  2. Fügen Sie dem virtuellen Netzwerk die folgenden Dienste hinzu. Verwenden Sie dazu entweder einen Dienstendpunkt oder einen privaten Endpunkt. Gewähren Sie außerdem vertrauenswürdigen Microsoft-Diensten Zugriff auf diese Dienste:

    Dienst Endpunktinformationen Zulassen vertrauenswürdiger Informationen
    Azure Key Vault Dienstendpunkt
    Privater Endpunkt
    Erlauben der Umgehung dieser Firewall für vertrauenswürdige Microsoft-Dienste
    Azure Storage-Konto Dienst- und privater Endpunkt
    Privater Endpunkt
    Gewähren des Zugriffs über Azure-Ressourceninstanzen
    oder
    Gewähren des Zugriffs auf vertrauenswürdige Azure-Dienste
    Azure Container Registry Privater Endpunkt Zulassen vertrauenswürdiger Dienste
  1. Erstellen Sie ein virtuelles Azure-Netzwerk. Dieses virtuelle Netzwerk schützt den Arbeitsbereich und andere Ressourcen. Erstellen Sie anschließend einen Arbeitsbereich mit Private Link-Unterstützung, um die Kommunikation zwischen Ihrem VNet und dem Arbeitsbereich zu ermöglichen.

  2. Fügen Sie dem virtuellen Netzwerk die folgenden Dienste hinzu. Verwenden Sie dazu entweder einen Dienstendpunkt oder einen privaten Endpunkt. Gewähren Sie außerdem vertrauenswürdigen Microsoft-Diensten Zugriff auf diese Dienste:

    Dienst Endpunktinformationen Zulassen vertrauenswürdiger Informationen
    Azure Key Vault Dienstendpunkt
    Privater Endpunkt
    Erlauben der Umgehung dieser Firewall für vertrauenswürdige Microsoft-Dienste
    Azure Storage-Konto Dienst- und privater Endpunkt
    Privater Endpunkt
    Gewähren des Zugriffs über Azure-Ressourceninstanzen
    oder
    Gewähren des Zugriffs auf vertrauenswürdige Azure-Dienste
    Azure Container Registry Privater Endpunkt Zulassen vertrauenswürdiger Dienste

Diagram showing how the workspace and associated resources communicate inside a VNet.

Ausführliche Anweisungen zum Ausführen dieser Schritte finden Sie unter Secure an Azure Machine Learning workspace (Schützen eines Azure Machine Learning-Arbeitsbereichs).

Ausführliche Anweisungen zum Ausführen dieser Schritte finden Sie unter Secure an Azure Machine Learning workspace (Schützen eines Azure Machine Learning-Arbeitsbereichs).

Einschränkungen

Für das Schützen Ihres Arbeitsbereichs und zugehöriger Ressourcen in einem virtuellen Netzwerk gelten die folgenden Einschränkungen:

  • Der Arbeitsbereich und das Standardspeicherkonto müssen sich im selben VNet befinden. Sie können allerdings Subnetze innerhalb eines VNET einsetzen. Beispielsweise der Arbeitsbereich in einem Subnetz und Speicher in einem anderen.

    Es wird empfohlen, dass sich auch die Azure Key Vault- und Azure-Containerregistrierung für den Arbeitsbereich im selben VNet befinden. Beide Ressourcen können jedoch auch in einem VNet mit Peering vorhanden sein.

Schützen der Trainingsumgebung

In diesem Abschnitt erfahren Sie, wie Sie die Trainingsumgebung in Azure Machine Learning schützen. Außerdem wird beschrieben, wie Azure Machine Learning einen Trainingsauftrag durchführt. So können Sie besser verstehen, wie die Netzwerkkonfigurationen kooperieren.

Führen Sie die folgenden Schritte aus, um die Trainingsumgebung zu schützen:

  1. Erstellen Sie im virtuellen Netzwerk eine Azure Machine Learning-Compute-Instanz und einen Azure Machine Learning-Computercluster, um den Trainingsauftrag auszuführen.

  2. Wenn Ihr Computecluster oder Ihre Compute-Instanz keine öffentliche IP-Adresse nutzt, müssen Sie eingehende Kommunikation zulassen, damit Verwaltungsdienste Aufträge an Ihre Computeressourcen übermitteln können.

    Tipp

    Computecluster und Compute-Instanzen können mit oder ohne öffentliche IP-Adresse erstellt werden. Wenn Sie mit einer öffentlichen IP-Adresse erstellt wurden, erhalten Sie einen Lastenausgleich mit einer öffentlichen IP, um den eingehenden Zugriff vom Azure-Batch-Dienst und Azure Machine Learning Service zu akzeptieren. Sie müssen benutzerdefiniertes Routing (UDR) konfigurieren, wenn Sie eine Firewall verwenden. Wenn Sie ohne öffentliche IP erstellt wurden, erhalten Sie einen privaten Link-Dienst, um den eingehenden Zugriff vom Azure-Batch-Dienst und Azure Machine Learning Service ohne öffentliche IP zu akzeptieren.

  1. Erstellen Sie im virtuellen Netzwerk eine Azure Machine Learning-Compute-Instanz und einen Azure Machine Learning-Computercluster, um den Trainingsauftrag auszuführen.

  2. Wenn Ihr Computecluster oder Ihre Compute-Instanz keine öffentliche IP-Adresse nutzt, müssen Sie eingehende Kommunikation zulassen, damit Verwaltungsdienste Aufträge an Ihre Computeressourcen übermitteln können.

    Tipp

    Computecluster und Compute-Instanzen können mit oder ohne öffentliche IP-Adresse erstellt werden. Wenn Sie mit einer öffentlichen IP-Adresse erstellt wurden, erhalten Sie einen Lastenausgleich mit einer öffentlichen IP, um den eingehenden Zugriff vom Azure-Batch-Dienst und Azure Machine Learning Service zu akzeptieren. Sie müssen benutzerdefiniertes Routing (UDR) konfigurieren, wenn Sie eine Firewall verwenden. Wenn Sie ohne öffentliche IP erstellt wurden, erhalten Sie einen privaten Link-Dienst, um den eingehenden Zugriff vom Azure-Batch-Dienst und Azure Machine Learning Service ohne öffentliche IP zu akzeptieren.

Diagram showing how to secure managed compute clusters and instances.

Eine ausführliche Anleitung zum Ausführen dieser Schritte finden Sie unter Secure an Azure Machine Learning training environment with virtual networks (Schützen einer Trainingsumgebung mit VNETs).

Eine ausführliche Anleitung zum Ausführen dieser Schritte finden Sie unter Secure an Azure Machine Learning training environment with virtual networks (Schützen einer Trainingsumgebung mit VNETs).

Beispiel für die Übermittlung eines Trainingsauftrags

In diesem Abschnitt erfahren Sie, wie Azure Machine Learning für eine sichere Kommunikation zwischen Diensten sorgt, um einen Trainingsauftrag zu übermitteln. Sie können aus diesem Beispiel ersehen, wie die von Ihnen vorgenommenen Konfigurationen in der Summe eine sichere Kommunikation gewährleisten.

  1. Der Client lädt Trainingsskripts und Trainingsdaten in Speicherkonten hoch, die mit einem Dienst- oder einem privaten Endpunkt geschützt sind.

  2. Der Client sendet einen Trainingsauftrag über den privaten Endpunkt an den Azure Machine Learning-Arbeitsbereich.

  3. Der Azure Batch-Dienst empfängt den Auftrag aus dem Arbeitsbereich. Er übergibt dann den Trainingsauftrag über den öffentlichen Lastenausgleich für die Computeressource an die Compute-Umgebung.

  4. Die Computeressource erhält den Auftrag und startet das Training. Die Computeressource verwendet im Schlüsseltresor gespeicherte Informationen für den Zugriff auf Speicherkonten, um Trainingsdateien herunterzuladen und die Ausgabe hochzuladen.

Diagram showing the secure training job submission workflow.

Begrenzungen

  • Die Azure-Compute-Instanz und die Azure-Computecluster müssen sich im selben VNET, in derselben Region und im gleichen Abonnement wie der Arbeitsbereich und die zugehörigen Ressourcen befinden.

Schützen der Rückschlussumgebung

Sie können die Netzwerkisolation für verwaltete Onlineendpunkte aktivieren, um den folgenden Netzwerkdatenverkehr zu schützen:

  • Eingehende Bewertungsanforderungen.
  • Ausgehende Kommunikation mit dem Arbeitsbereich, Azure Container Registry und Azure Blob Storage.

Weitere Informationen finden Sie unter Aktivieren der Netzwerkisolation für verwaltete Onlineendpunkte.

In diesem Abschnitt erfahren Sie, welche Optionen zum Sichern einer Rückschlussumgebung verfügbar sind, wenn Sie die Azure CLI-Erweiterung für ML v1 oder das Azure Machine Learning Python SDK v1 verwenden. Bei Durchführung einer v1-Entwicklung wird empfohlen, für umfangreiche Produktionsbereitstellungen AKS-Cluster (Azure Kubernetes Services) zu verwenden.

Für AKS-Cluster in einem virtuellen Netzwerk stehen Ihnen zwei Optionen bereit:

  • Sie können einen AKS-Standardcluster bereitstellen oder ihn Ihrem VNET hinzufügen.
  • Sie können Ihrem VNET einen privaten AKS-Cluster hinzufügen.

AKS-Standardcluster weisen eine Steuerungsebene mit öffentlichen IP-Adressen auf. Sie können entweder Ihrem VNET bei der Bereitstellung einen AKS-Standardcluster hinzufügen oder nach der Erstellung einen Cluster anfügen.

Private AKS-Cluster weisen eine Steuerungsebene auf, auf die nur über private IP-Adressen zugegriffen werden kann. Private AKS-Cluster müssen nach der Erstellung des Clusters angefügt werden.

Eine ausführliche Anleitung zum Hinzufügen von Standard-und privaten Clustern finden Sie unter Secure an inferencing environment (Schützen einer Rückschlussumgebung).

Unabhängig davon, ob der Standard-AKS-Cluster oder ein privater AKS-Cluster verwendet wird, müssen Ihr Arbeitsbereich und die zugeordneten Ressourcen (Speicher, Schlüsseltresor und ACR) über private Endpunkte oder Dienstendpunkte im selben VNet wie der AKS-Cluster verfügen, wenn sich Ihr AKS-Cluster hinter einem VNet befindet.

Das folgende Netzwerkdiagramm zeigt einen geschützten Azure Machine Learning-Arbeitsbereich mit einem privaten AKS-Cluster, der an das virtuelle Netzwerk angefügt wurde.

Diagram showing an attached private AKS cluster.

Optional: Aktivieren des öffentlichen Zugriffs

Sie können den Arbeitsbereich hinter einem VNet mithilfe eines privaten Endpunkts schützen und weiterhin den Zugriff über das öffentliche Internet zulassen. Die anfängliche Konfiguration entspricht der zum Schützen von Arbeitsbereich und zugehörigen Ressourcen.

Nach dem Schützen des Arbeitsbereichs mit einem privaten Endpunkt führen Sie die folgenden Schritte aus, um Clients die Remoteentwicklung mithilfe des SDK oder von Azure Machine Learning Studio zu ermöglichen:

  1. Aktivieren Sie den öffentlichen Zugriff auf den Arbeitsbereich.
  2. Konfigurieren Sie die Azure Storage-Firewall, um die Kommunikation mit der IP-Adresse von Clients zu ermöglichen, die eine Verbindung über das öffentliche Internet herstellen.
  1. Aktivieren Sie den öffentlichen Zugriff auf den Arbeitsbereich.
  2. Konfigurieren Sie die Azure Storage-Firewall, um die Kommunikation mit der IP-Adresse von Clients zu ermöglichen, die eine Verbindung über das öffentliche Internet herstellen.

Aktivieren der Studio-Funktionalität (optional)

Wenn sich Ihr Speicher in einem VNet befindet, müssen Sie die volle Funktionalität in Studio durch zusätzliche Konfigurationsschritte aktivieren. Standardmäßig sind die folgenden Features deaktiviert:

  • Vorschau der Daten im Studio.
  • Visualisieren von Daten im Designer.
  • Bereitstellen eines Modells im Designer.
  • Senden eines AutoML-Experiments.
  • Starten eines Beschriftungsprojekts.

Informationen zur Aktivierung der vollen Studio-Funktionalität finden Sie unter Verwenden von Azure Machine Learning Studio in einem virtuellen Azure-Netzwerk.

Einschränkungen

Von der ML-gestützten Datenbeschriftung werden keine Standardspeicherkonten hinter einem virtuellen Netzwerk unterstützt. Verwenden Sie daher für die ML-gestützte Datenbeschriftung ein anderes Speicherkonto als das Standardkonto.

Tipp

Solange es sich nicht um das Standardspeicherkonto handelt, kann das Konto für die Datenbeschriftung hinter dem virtuellen Netzwerk abgesichert werden.

Konfigurieren der Firewalleinstellungen

Konfigurieren Sie Ihre Firewall für die Steuerung des Datenverkehrs zwischen Ihrem Azure Machine Learning-Arbeitsbereich und dem öffentlichen Internet. Zwar empfehlen wir Azure Firewall, aber Sie können auch andere Firewallprodukte einsetzen.

Weitere Informationen zu Firewalleinstellungen finden Sie unter Verwenden des Arbeitsbereichs hinter einer Firewall für Azure Machine Learning.

Benutzerdefinierter DNS

Wenn Sie eine benutzerdefinierte DNS-Lösung für Ihr virtuelles Netzwerk verwenden möchten, müssen Sie Hosteinträge für Ihren Arbeitsbereich hinzufügen.

Weitere Informationen zu den erforderlichen Domänennamen und IP-Adressen finden Sie unter Verwenden eines Arbeitsbereichs mit einem benutzerdefinierten DNS-Server.

Microsoft Sentinel

Microsoft Sentinel ist eine Sicherheitslösung, die mit Azure Machine Learning integriert werden kann. Sie können beispielsweise Jupyter-Notebooks verwenden, die über Azure Machine Learning bereitgestellt werden. Weitere Informationen finden Sie unter Aufspüren von Sicherheitsrisiken mit Jupyter Notebook verwenden.

Öffentlicher Zugriff

Microsoft Sentinel kann automatisch einen Arbeitsbereich für Sie erstellen, wenn Sie mit einem öffentlichen Endpunkt einverstanden sind. In dieser Konfiguration stellen die SOC-Analyst*innen (Security Operations Center) und Systemadministrator*innen über Sentinel eine Verbindung mit Notebooks in Ihrem Arbeitsbereich her.

Weitere Informationen zu diesem Prozess finden Sie unter Erstellen eines Azure Machine Learning-Arbeitsbereichs aus Microsoft Sentinel.

Diagram showing Microsoft Sentinel public connection.

Privater Endpunkt

Wenn Sie Ihren Arbeitsbereich und die zugehörigen Ressourcen in einem VNet schützen möchten, müssen Sie zuerst den Azure Machine Learning-Arbeitsbereich erstellen. Sie müssen auch einen virtuellen „Jumpbox“-Computer im gleichen VNet wie Ihr Arbeitsbereich erstellen und die Azure Bastion-Konnektivität mit diesem aktivieren. Ähnlich wie bei der öffentlichen Konfiguration können SOC-Analyst*innen und Administrator*innen eine Verbindung über Microsoft Sentinel herstellen. Einige Vorgänge müssen jedoch mithilfe von Azure Bastion ausgeführt werden, um eine Verbindung mit der VM herzustellen.

Weitere Informationen zu dieser Konfiguration finden Sie unter Erstellen eines Azure Machine Learning-Arbeitsbereichs aus Microsoft Sentinel.

Daigram showing Microsoft Sentinel connection through a VNet.

Nächste Schritte

Dieser Artikel ist Teil einer Reihe zum Schützen eines Azure Machine Learning-Workflows. Sehen Sie sich auch die anderen Artikel in dieser Reihe an: