Delen via


Azure App Service-besturingssysteem en runtimepatching

In dit artikel wordt uitgelegd hoe het besturingssysteem (OS) en runtime-software van Azure App Service worden bijgewerkt, hoe u versiegegevens kunt ophalen en hoe u handmatig een upgrade naar nieuwe versies kunt uitvoeren.

App Service is een PaaS (Platform-as-a-Service), zodat Azure het besturingssysteem en de toepassingsstack voor u beheert. U beheert alleen uw toepassing en de bijbehorende gegevens. Als u meer controle nodig hebt over het besturingssysteem en de toepassingsstack, kunt u Azure Virtual Machines gebruiken.

Het is nog steeds handig voor u als App Service-gebruiker om informatie te kennen, zoals:

Dit artikel biedt transparantie over het proces en helpt u op de hoogte te blijven van beveiligingsaankondigingen en runtime-updates. Om veiligheidsredenen worden bepaalde specifieke beveiligingsgegevens niet gepubliceerd.

Hoe en wanneer worden besturingssysteemupdates toegepast?

Azure beheert patching van het besturingssysteem voor zowel de fysieke servers als de virtuele gastmachines (VM's) waarop App Service-resources worden uitgevoerd. Beide machinelagen worden maandelijks bijgewerkt, afgestemd op het maandelijkse patch-dinsdagschema .

Deze updates worden automatisch toegepast, terwijl de SLA (Service Level Agreement) met hoge beschikbaarheid voor Azure-services wordt gegarandeerd. Azure App Service OS patching volgt SDP (Safe Deployment Practices) en een availability-first benadering. De meest recente patches worden zo snel mogelijk toegepast, maar het patchen van het besturingssysteem kan worden vertraagd of onderbroken om app-effecten en storingen te voorkomen.

Zie Demystifying the magic behind App Service OS updates voor gedetailleerde informatie over hoe updates worden toegepast.

Hoe gaat Azure om met aanzienlijke beveiligingsproblemen?

Wanneer problemen met hoge prioriteit, zoals zero-day-beveiligingsproblemen , onmiddellijk patchen vereisen, worden de updates per geval afgehandeld. Als u op de hoogte wilt blijven van kritieke aankondigingen over Azure-beveiliging, raadpleegt u de Azure-beveiligingsblog.

Wanneer worden ondersteunde taalruntimes bijgewerkt, toegevoegd of afgeschaft?

Nieuwe stabiele primaire, secundaire of patchversies van ondersteunde taalruntimes worden periodiek toegevoegd aan App Service-exemplaren. Sommige updates overschrijven de bestaande installatie, terwijl andere naast bestaande versies worden geïnstalleerd.

Een overschrijfinstallatie betekent dat uw app automatisch wordt uitgevoerd op de bijgewerkte runtime. Een side-by-side installatie betekent dat u uw app handmatig moet migreren om te profiteren van een nieuwe runtimeversie. Zie de volgende secties voor meer informatie.

Notitie

Deze informatie is van toepassing op taalruntimes die zijn ingebouwd in een App Service-app. Een aangepaste runtime die u bijvoorbeeld uploadt naar App Service, blijft ongewijzigd, tenzij u deze handmatig bijwerkt.

Nieuwe patchupdates

Patchupdates voor .NET, PHP, Java SDK of Tomcat-versie worden automatisch toegepast door de bestaande installatie te overschrijven met de nieuwste versie. Node.js patchupdates worden naast de bestaande versies geïnstalleerd, vergelijkbaar met primaire en secundaire versies. Nieuwe Python-patchversies kunnen handmatig worden geïnstalleerd via site-extensies, naast de ingebouwde Python-installaties.

Nieuwe primaire en secundaire versies

Nieuwe primaire of secundaire versies worden naast de bestaande versies geïnstalleerd. U kunt uw app handmatig upgraden naar de nieuwe versie.

Als u de runtimeversie hebt geconfigureerd in een configuratiebestand zoals web.config of package.json, moet u een upgrade uitvoeren met dezelfde methode. Als u een App Service-instelling hebt gebruikt om uw runtimeversie te configureren, kunt u deze wijzigen in Azure Portal of door een Azure CLI-opdracht uit te voeren in Azure Cloud Shell.

In de volgende voorbeelden ziet u azure CLI-configuratieopdrachten voor verschillende ondersteunde taalruntimes. U vervangt en vervangt <appname> door <groupname> de namen van uw app en de bijbehorende resourcegroep.

az webapp config set --net-framework-version v4.7 --resource-group <groupname> --name <appname>
az webapp config set --php-version 7.0 --resource-group <groupname> --name <appname>
az webapp config appsettings set --settings WEBSITE_NODE_DEFAULT_VERSION=~18 --resource-group <groupname> --name <appname>
az webapp config set --python-version 3.8 --resource-group <groupname> --name <appname>
az webapp config set --java-version 1.8 --java-container Tomcat --java-container-version 9.0 --resource-group <groupname> --name <appname>

Notitie

In het Node.js voorbeeld wordt de aanbevolen tilde-syntaxis gebruikt om de meest recente beschikbare versie van de Node.js 18 runtime in Windows App Service te gebruiken.

Hoe kan ik de updatestatus van het besturingssysteem en de runtime op mijn exemplaren opvragen?

Met de Kudu-console kunt u een query uitvoeren op de versie van het besturingssysteem en de runtimeversies van uw App Service-exemplaren. Kritieke informatie over het besturingssysteem is vergrendeld vanuit toegang. Zie De functionaliteit van het besturingssysteem in Azure App Service voor meer informatie.

In de volgende tabel ziet u hoe u Kudu- of Cloud Shell-opdrachten gebruikt om de Windows- en taalruntimeversies te vinden waarop uw apps worden uitgevoerd. Vervang en vervang <appname> deze <groupname> door de namen van uw app en resourcegroep.

Gegevens Waar vind ik het?
Windows-versie Zie https://<appname>.scm.azurewebsites.net/Env#sysinfo.
.NET-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsolebij de opdrachtprompt de volgende opdracht uit:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full".
.NET Core-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsoleop , voer het uit dotnet --version.
PHP-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsoleop , voer het uit php --version.
Standaardversie van Node.js Voer in Cloud Shell de volgende opdracht uit:
az webapp config appsettings list --resource-group <groupname> --name <appname> --query "[?name=='WEBSITE_NODE_DEFAULT_VERSION']".
Python-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsoleop , voer het uit python --version.
Java-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsoleop , voer het uit java -version.

Notitie

Toegang tot registerlocatie HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages, waar informatie over beveiligingsbulletins wordt opgeslagen, is vergrendeld.