Patches voor het besturingssysteem en runtime in Azure App Service

In dit artikel wordt beschreven hoe u bepaalde versie-informatie over het besturingssysteem of de software in App Service.

App Service is een Platform-as-a-Service, wat betekent dat het besturingssysteem en de toepassingsstack voor u worden beheerd door Azure. U beheert alleen uw toepassing en de bijbehorende gegevens. Meer controle over het besturingssysteem en de toepassingsstack is beschikbaar in Azure Virtual Machines. Met dat in het achterhoofd is het toch nuttig voor u als App Service gebruiker om meer informatie te weten, zoals:

  • Hoe en wanneer worden besturingssysteemupdates toegepast?
  • Hoe wordt App Service gepatcht tegen belangrijke beveiligingsproblemen (zoals zero-day)?
  • Op welke versies van het besturingssysteem en de runtime worden uw apps uitgevoerd?

Om veiligheidsredenen worden bepaalde details van beveiligingsinformatie niet gepubliceerd. Het artikel is echter bedoeld om zorgen te verlichten door de transparantie van het proces te maximaliseren en hoe u op de hoogte kunt blijven van beveiligingsgerelateerde aankondigingen of runtime-updates.

Hoe en wanneer worden besturingssysteemupdates toegepast?

Azure beheert patching van het besturingssysteem op twee niveaus: de fysieke servers en de virtuele gastmachines (VM's) waarop de App Service resources worden uitgevoerd. Beide worden maandelijks bijgewerkt, wat overeenkomt met de maandelijkse patch-dinsdagplanning . Deze updates worden automatisch toegepast, op een manier die de SLA met hoge beschikbaarheid van Azure-services garandeert.

Zie De magie achter updates van het App Service van het besturingssysteem ontmystificeren voor gedetailleerde informatie over hoe updates worden toegepast.

Hoe gaat Azure om met belangrijke beveiligingsproblemen?

Wanneer ernstige beveiligingsproblemen onmiddellijke patching vereisen, zoals zero-day-beveiligingsproblemen, worden de updates met hoge prioriteit per geval verwerkt.

Blijf op de hoogte van kritieke beveiligingsaankondigingen in Azure door naar de Azure-beveiligingsblog te gaan.

Wanneer worden ondersteunde taalruntimes bijgewerkt, toegevoegd of afgeschaft?

Nieuwe stabiele versies van ondersteunde taalruntimes (primaire, secundaire of patch) worden periodiek toegevoegd aan App Service exemplaren. Sommige updates overschrijven de bestaande installatie, terwijl andere naast bestaande versies worden geïnstalleerd. Een installatie overschrijven betekent dat uw app automatisch wordt uitgevoerd op de bijgewerkte runtime. Een installatie naast elkaar betekent dat u uw app handmatig moet migreren om te profiteren van een nieuwe runtime-versie. Zie een van de subsecties voor meer informatie.

Notitie

Informatie hier 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

Patch-updates voor de versie van .NET, PHP, Java SDK of Tomcat 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 in de volgende sectie). Nieuwe Python-patchversies kunnen handmatig worden geïnstalleerd via site-extensies, naast de ingebouwde Python-installaties.

Nieuwe primaire en secundaire versies

Wanneer een nieuwe primaire of secundaire versie wordt toegevoegd, wordt deze naast de bestaande versies geïnstalleerd. U kunt uw app handmatig upgraden naar de nieuwe versie. Als u de runtime-versie hebt geconfigureerd in een configuratiebestand (zoals web.config en 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 de Azure Portal of door een Azure CLI-opdracht uit te voeren in de Cloud Shell, zoals wordt weergegeven in de volgende voorbeelden:

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=~14 --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 dit voorbeeld wordt de aanbevolen tilde-syntaxis gebruikt om de meest recente beschikbare versie van Node.js 16 runtime op Windows App Service te gebruiken.

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

Hoewel essentiële informatie over het besturingssysteem is vergrendeld voor toegang (zie Besturingssysteemfunctionaliteit op Azure App Service), kunt u met de Kudu-console een query uitvoeren op uw App Service exemplaar met betrekking tot de versie van het besturingssysteem en de runtimeversies.

In de volgende tabel ziet u hoe u de versies van Windows en van de taalruntime gebruikt waarop uw apps worden uitgevoerd:

Informatie Waar te vinden
Windows-versie Zie https://<appname>.scm.azurewebsites.net/Env.cshtml (onder Systeeminfo)
.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/DebugConsolebij de opdrachtprompt de volgende opdracht uit:
dotnet --version
PHP-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsolebij de opdrachtprompt de volgende opdracht uit:
php --version
Standaardversie van Node.js Voer in de 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/DebugConsolebij de opdrachtprompt de volgende opdracht uit:
python --version
Java-versie Voer https://<appname>.scm.azurewebsites.net/DebugConsolebij de opdrachtprompt de volgende opdracht uit:
java -version

Notitie

Toegang tot de registerlocatie HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages, waar informatie over 'KB'-patches wordt opgeslagen, is vergrendeld.

Meer bronnen

Vertrouwenscentrum: beveiliging
64-bits ASP.NET Core op Azure App Service