Beheer van beveiligingsproblemen voor Azure Machine Learning

Het beheer van beveiligingsproblemen omvat het detecteren, beoordelen, beperken en rapporteren van beveiligingsproblemen die bestaan in de systemen en software van een organisatie. Het beheer van beveiligingsproblemen is een gedeelde verantwoordelijkheid van u en Microsoft.

In dit artikel worden deze verantwoordelijkheden besproken en worden de besturingselementen voor beveiligingsbeheer beschreven die Azure Machine Learning biedt. U leert hoe u uw service-exemplaar en toepassingen up-to-date kunt houden met de nieuwste beveiligingsupdates en hoe u het kansvenster voor aanvallers minimaliseert.

Door Microsoft beheerde VM-installatiekopieën

Azure Machine Learning beheert installatiekopieën van virtuele machines (VM's) voor hostbesturingssystemen voor Azure Machine Learning-rekeninstanties, Azure Machine Learning-rekenclusters en Datawetenschap Virtuele machines. De updatefrequentie is maandelijks en bevat de volgende details:

  • Voor elke nieuwe versie van de VM-installatiekopieën zijn de meest recente updates afkomstig van de oorspronkelijke uitgever van het besturingssysteem. Door de meest recente updates te gebruiken, kunt u ervoor zorgen dat u alle toepasselijke patches voor het besturingssysteem krijgt. Voor Azure Machine Learning is de uitgever Canonical voor alle Ubuntu-installatiekopieën. Deze installatiekopieën worden gebruikt voor Azure Machine Learning-rekeninstanties, rekenclusters en Datawetenschap virtuele machines.

  • VM-installatiekopieën worden maandelijks bijgewerkt.

  • Naast patches die de oorspronkelijke uitgever toepast, worden systeempakketten van Azure Machine Learning bijgewerkt wanneer er updates beschikbaar zijn.

  • Azure Machine Learning controleert en valideert alle machine learning-pakketten waarvoor mogelijk een upgrade is vereist. In de meeste gevallen bevatten nieuwe VM-installatiekopieën de nieuwste pakketversies.

  • Alle VM-installatiekopieën zijn gebouwd op beveiligde abonnementen die regelmatig scannen op beveiligingsproblemen uitvoeren. Azure Machine Learning markeert eventuele niet-aangepaste beveiligingsproblemen en corrigeert deze in de volgende release.

  • De frequentie is een maandelijks interval voor de meeste afbeeldingen. Voor rekeninstanties wordt de release van de installatiekopie afgestemd op het releaseritme van de Azure Machine Learning SDK die vooraf in de omgeving is geïnstalleerd.

Naast het reguliere releaseritme past Azure Machine Learning hotfixes toe als er beveiligingsproblemen opduiken. Microsoft implementeert hotfixes binnen 72 uur voor Azure Machine Learning-rekenclusters en binnen een week voor rekeninstanties.

Notitie

Het host-besturingssysteem is niet de versie van het besturingssysteem die u kunt opgeven voor een omgeving wanneer u een model traint of implementeert. Omgevingen worden uitgevoerd in Docker. Docker wordt uitgevoerd op het host-besturingssysteem.

Door Microsoft beheerde containerinstallatiekopieën

Basis-Docker-installatiekopieën die azure Machine Learning onderhoudt, krijgen regelmatig beveiligingspatches om nieuwe gedetecteerde beveiligingsproblemen op te pakken.

Azure Machine Learning publiceert elke twee weken updates voor ondersteunde installatiekopieën om beveiligingsproblemen op te lossen. Als toezegging willen we geen beveiligingsproblemen hebben die ouder zijn dan 30 dagen in de nieuwste versie van ondersteunde installatiekopieën.

Patch-installatiekopieën worden vrijgegeven onder een nieuwe onveranderbare tag en een bijgewerkte :latest tag. Het gebruik van de :latest tag of het vastmaken aan een bepaalde versie van de installatiekopie kan een compromis zijn tussen beveiliging en omgevings reproduceerbaarheid voor uw machine learning-taak.

Omgevingen en containerinstallatiekopieën beheren

Reproduceerbaarheid is een belangrijk aspect van softwareontwikkeling en machine learning-experimenten. De primaire focus van het Azure Machine Learning-omgevingsonderdeel is het garanderen van reproduceerbaarheid van de omgeving waarin de code van de gebruiker wordt uitgevoerd. Om de reproduceerbaarheid voor elke machine learning-taak te garanderen, worden eerdere ingebouwde installatiekopieën naar de rekenknooppunten gehaald zonder dat ze opnieuw hoeven te worden gerematerialisatie.

Hoewel Azure Machine Learning basisinstallatiekopieën met elke release patcht, is het mogelijk dat u de meest recente installatiekopie gebruikt tussen reproduceerbaarheid en beheer van beveiligingsproblemen. Het is uw verantwoordelijkheid om de omgevingsversie te kiezen die u gebruikt voor uw taken of modelimplementaties.

Afhankelijkheden worden standaard gelaagd boven op basisinstallatiekopieën die Azure Machine Learning biedt wanneer u omgevingen bouwt. U kunt ook uw eigen basisinstallatiekopieën gebruiken wanneer u omgevingen in Azure Machine Learning gebruikt. Nadat u meer afhankelijkheden hebt geïnstalleerd op de door Microsoft geleverde installatiekopieën of uw eigen basisinstallatiekopieën hebt meegebracht, wordt het beheer van beveiligingsproblemen uw verantwoordelijkheid.

Gekoppeld aan uw Azure Machine Learning-werkruimte is een Azure Container Registry-exemplaar dat fungeert als cache voor containerinstallatiekopieën. Elke installatiekopieën die worden gerealiseerd, worden naar het containerregister gepusht. De werkruimte gebruikt deze als experimenten of implementatie wordt geactiveerd voor de bijbehorende omgeving.

Azure Machine Learning verwijdert geen installatiekopieën uit uw containerregister. U bent verantwoordelijk voor het evalueren van de behoefte aan een afbeelding in de loop van de tijd. Als u de hygiëne van de omgeving wilt bewaken en onderhouden, kunt u Microsoft Defender voor Container Registry gebruiken om uw installatiekopieën te scannen op beveiligingsproblemen. Zie Herstelreacties automatiseren om uw processen te automatiseren op basis van triggers van Microsoft Defender.

Een privépakketopslagplaats gebruiken

Azure Machine Learning maakt gebruik van Conda en Pip om Python-pakketten te installeren. Standaard downloadt Azure Machine Learning pakketten uit openbare opslagplaatsen. Als uw organisatie vereist dat u alleen pakketten uit privéopslagplaatsen, zoals Azure DevOps-feeds, moet sourcen, kunt u de Conda- en Pip-configuratie overschrijven als onderdeel van uw basisinstallatiekopieën en uw omgevingsconfiguraties voor rekeninstanties.

In de volgende voorbeeldconfiguratie ziet u hoe u de standaardkanalen verwijdert en uw eigen persoonlijke Conda- en Pip-feeds toevoegt. Overweeg het gebruik van installatiescripts voor rekeninstanties voor automatisering.

RUN conda config --set offline false \
&& conda config --remove channels defaults || true \
&& conda config --add channels https://my.private.conda.feed/conda/feed \
&& conda config --add repodata_fns <repodata_file_on_your_server>.json

# Configure Pip private indexes and ensure that the client trusts your host
RUN pip config set global.index https://my.private.pypi.feed/repository/myfeed/pypi/ \
&&  pip config set global.index-url https://my.private.pypi.feed/repository/myfeed/simple/

# In case your feed host isn't secured through SSL
RUN  pip config set global.trusted-host http://my.private.pypi.feed/

Zie Een omgeving maken vanuit een Docker-buildcontext voor meer informatie over het opgeven van uw eigen basisinstallatiekopieën in Azure Machine Learning. Zie Een omgevingsbestand handmatig maken op de Conda-site voor meer informatie over het configureren van Conda-omgevingen.

Beheer van beveiligingsproblemen op rekenhosts

Beheerde rekenknooppunten in Azure Machine Learning maken gebruik van door Microsoft beheerde VM-installatiekopieën voor het besturingssysteem. Wanneer u een knooppunt inricht, wordt de meest recente bijgewerkte VM-installatiekopie opgehaald. Dit gedrag is van toepassing op rekeninstanties, rekenclusters, serverloze berekeningen (preview) en beheerde deductie-rekenopties.

Hoewel VM-installatiekopieën van het besturingssysteem regelmatig worden gepatcht, scant Azure Machine Learning rekenknooppunten niet actief op beveiligingsproblemen terwijl ze in gebruik zijn. Overweeg voor een extra beveiligingslaag de netwerkisolatie van uw rekenproces.

Ervoor zorgen dat uw omgeving up-to-date is en dat rekenknooppunten de nieuwste versie van het besturingssysteem gebruiken, is een gedeelde verantwoordelijkheid tussen u en Microsoft. Knooppunten die niet inactief zijn, kunnen niet worden bijgewerkt naar de meest recente VM-installatiekopieën. Overwegingen verschillen enigszins voor elk rekentype, zoals wordt vermeld in de volgende secties.

Rekenproces

Tijdens het inrichten krijgen rekenprocessen de beschikking over de meest recente VM-installatiekopieën. Microsoft brengt maandelijks nieuwe VM-installatiekopieën uit. Nadat u een rekenproces hebt geïmplementeerd, wordt deze niet actief bijgewerkt. U kunt een query uitvoeren op de besturingssysteemversie van een exemplaar. Als u op de hoogte wilt blijven van de nieuwste software-updates en beveiligingspatches, kunt u een van de volgende methoden gebruiken:

  • Maak een rekenproces opnieuw om de meest recente installatiekopieën van het besturingssysteem op te halen (aanbevolen).

    Als u deze methode gebruikt, verliest u gegevens en aanpassingen (zoals geïnstalleerde pakketten) die zijn opgeslagen op het besturingssysteem van het exemplaar en tijdelijke schijven.

    Wanneer u uw exemplaar opnieuw maakt:

    Zie de releaseopmerkingen van azure Machine Learning-rekeninstanties voor meer informatie over installatiekopieën van installatiekopieën.

  • Werk regelmatig besturingssysteem- en Python-pakketten bij.

    • Gebruik Linux-hulpprogramma's voor pakketbeheer om de pakketlijst bij te werken met de nieuwste versies:

      sudo apt-get update
      
    • Gebruik Hulpprogramma's voor Linux-pakketbeheer om pakketten te upgraden naar de nieuwste versies. Pakketconflicten kunnen optreden wanneer u deze benadering gebruikt.

      sudo apt-get upgrade
      
    • Gebruik python-hulpprogramma's voor pakketbeheer om pakketten te upgraden en te controleren op updates:

      pip list --outdated
      

U kunt extra scansoftware installeren en uitvoeren op het rekenproces om te scannen op beveiligingsproblemen:

  • Gebruik Trivy om beveiligingsproblemen op besturingssysteem- en Python-pakketniveau te detecteren.
  • Gebruik ClamAV om malware te detecteren. Deze is vooraf geïnstalleerd op rekeninstanties.

De installatie van de Microsoft Defender voor Servers-agent wordt momenteel niet ondersteund.

Overweeg het gebruik van aanpassingsscripts voor automatisering. Voor een voorbeeld van een installatiescript waarin Trivy en ClamAV worden gecombineerd, raadpleegt u voorbeeldscripts voor het instellen van rekeninstanties.

Rekenclusters

Rekenclusters upgraden automatisch knooppunten naar de meest recente VM-installatiekopie. Als u het cluster configureert met min nodes = 0, worden knooppunten automatisch bijgewerkt naar de meest recente versie van de VM-installatiekopieën wanneer alle taken zijn voltooid en het cluster vermindert tot nul knooppunten.

In de volgende omstandigheden worden clusterknooppunten niet omlaag geschaald, zodat ze de meest recente VM-installatiekopieën niet kunnen ophalen:

  • Het minimumaantal knooppunten van het cluster is ingesteld op een waarde die groter is dan nul.
  • Taken worden continu gepland op uw cluster.

U bent verantwoordelijk voor het omlaag schalen van niet-inactieve clusterknooppunten om de meest recente updates voor VM-installatiekopieën van het besturingssysteem op te halen. Azure Machine Learning stopt geen actieve workloads op rekenknooppunten om VM-updates uit te geven. Wijzig de minimale knooppunten tijdelijk in nul en laat het cluster tot nul knooppunten verminderen.

Beheerde online-eindpunten

Beheerde online-eindpunten ontvangen automatisch updates voor installatiekopieën van de besturingssysteemhost met oplossingen voor beveiligingsproblemen. De updatefrequentie van afbeeldingen is ten minste één keer per maand.

Rekenknooppunten worden automatisch bijgewerkt naar de nieuwste versie van de VM-installatiekopieën wanneer die versie wordt uitgebracht. U hoeft geen actie te ondernemen.

Door de klant beheerde Kubernetes-clusters

Met Kubernetes-rekenkracht kunt u Kubernetes-clusters configureren voor het trainen, uitvoeren van deductie en het beheren van modellen in Azure Machine Learning.

Omdat u de omgeving beheert met Kubernetes, is het beheer van zowel beveiligingsproblemen met vm's van het besturingssysteem als beveiligingsproblemen met containerinstallatiekopieën uw verantwoordelijkheid.

Azure Machine Learning publiceert regelmatig nieuwe versies van containerinstallatiekopieën van Azure Machine Learning-extensies in Microsoft-artefactregister. Microsoft is verantwoordelijk voor het garanderen dat nieuwe installatiekopieën vrij zijn van beveiligingsproblemen. Elke release lost beveiligingsproblemen op.

Wanneer uw clusters taken zonder onderbreking uitvoeren, kunnen verouderde versies van containerinstallatiekopieën worden uitgevoerd. Nadat u de amlarc extensie hebt bijgewerkt naar een actief cluster, worden de zojuist ingediende taken gestart met het gebruik van de nieuwste versie van de installatiekopieën. Wanneer u de extensie bijwerkt naar de amlarc nieuwste versie, schoont u de oude versies van de containerinstallatiekopie van de clusters op, indien nodig.

Als u wilt controleren of uw Azure Arc-cluster de nieuwste versie van amlarcuitvoert, gebruikt u Azure Portal. Ga onder uw Azure Arc-resource van het type Kubernetes - Azure Arc naar Extensies om de versie van de amlarc extensie te vinden.

AutoML- en Designer-omgevingen

Voor trainingservaringen op basis van code bepaalt u welke Azure Machine Learning-omgeving moet worden gebruikt. Met AutoML en de ontwerpfunctie wordt de omgeving ingekapseld als onderdeel van de service. Deze typen taken kunnen worden uitgevoerd op berekeningen die u configureert, om extra besturingselementen zoals netwerkisolatie mogelijk te maken.

AutoML-taken worden uitgevoerd op omgevingen die boven op Docker-installatiekopieën van Azure Machine Learning worden geplaatst.

Designertaken worden in onderdelen gecompartimenteerd. Elk onderdeel heeft een eigen omgeving die zich boven op de Docker-installatiekopieën van de Azure Machine Learning-basis bevindt. Zie de naslaginformatie over onderdelen voor meer informatie over onderdelen.

Volgende stappen