Stosowanie poprawek systemu operacyjnego i środowiska uruchomieniowego w Azure App Service

W tym artykule pokazano, jak uzyskać pewne informacje o wersji dotyczące systemu operacyjnego lub oprogramowania w App Service.

App Service to platforma jako usługa, co oznacza, że system operacyjny i stos aplikacji są zarządzane przez platformę Azure. Zarządzasz tylko aplikacją i jej danymi. Większa kontrola nad systemem operacyjnym i stosem aplikacji jest dostępna w usłudze Azure Virtual Machines. Mając to na uwadze, jest to jednak przydatne dla Ciebie jako użytkownik App Service dowiedzieć się więcej informacji, takich jak:

  • Jak i kiedy są stosowane aktualizacje systemu operacyjnego?
  • W jaki sposób App Service poprawiane pod kątem znaczących luk w zabezpieczeniach (takich jak zero-dni)?
  • Które wersje systemu operacyjnego i środowiska uruchomieniowego uruchamiają aplikacje?

Ze względów bezpieczeństwa niektóre szczegóły informacji zabezpieczających nie są publikowane. Jednak artykuł ma na celu złagodzenie obaw poprzez maksymalizację przejrzystości procesu oraz sposób aktualizowania ogłoszeń związanych z zabezpieczeniami lub aktualizacji środowiska uruchomieniowego.

Jak i kiedy są stosowane aktualizacje systemu operacyjnego?

Platforma Azure zarządza poprawkami systemu operacyjnego na dwóch poziomach, serwerami fizycznymi i maszynami wirtualnymi gościa, które uruchamiają zasoby App Service. Oba są aktualizowane co miesiąc, co jest zgodne z miesięcznym harmonogramem patch wtorek . Te aktualizacje są stosowane automatycznie w sposób, który gwarantuje wysoką dostępność umowy SLA usług platformy Azure.

Aby uzyskać szczegółowe informacje na temat sposobu stosowania aktualizacji, zobacz Demystifying the magic behind App Service OS updates (Demystifying the magic behind App Service OS updates(Demystifying the magic behind App Service OS updates).

Jak platforma Azure zajmuje się istotnymi lukami w zabezpieczeniach?

Gdy poważne luki w zabezpieczeniach wymagają natychmiastowego stosowania poprawek, takich jak luki w zabezpieczeniach zerowych dni, aktualizacje o wysokim priorytacie są obsługiwane w zależności od przypadku.

Bądź na bieżąco z krytycznymi ogłoszeniami dotyczącymi zabezpieczeń na platformie Azure, odwiedzając blog zabezpieczeń platformy Azure.

Kiedy obsługiwane środowiska uruchomieniowe języka są aktualizowane, dodawane lub przestarzałe?

Nowe stabilne wersje obsługiwanych środowisk uruchomieniowych języka (główne, pomocnicze lub poprawki) są okresowo dodawane do App Service wystąpień. Niektóre aktualizacje zastępują istniejącą instalację, podczas gdy inne są instalowane równolegle z istniejącymi wersjami. Instalacja zastępowania oznacza, że aplikacja jest automatycznie uruchamiana w zaktualizowanym środowisku uruchomieniowym. Instalacja równoległa oznacza, że musisz ręcznie przeprowadzić migrację aplikacji, aby skorzystać z nowej wersji środowiska uruchomieniowego. Aby uzyskać więcej informacji, zobacz jedną z podsekcji.

Uwaga

Informacje w tym miejscu dotyczą środowisk uruchomieniowych języka wbudowanych w aplikację App Service. Niestandardowe środowisko uruchomieniowe przekazywane do App Service, na przykład, pozostaje niezmienione, chyba że ręcznie uaktualnisz je.

Nowe aktualizacje poprawek

Aktualizacje poprawek do wersji .NET, PHP, Java SDK lub Tomcat są stosowane automatycznie przez zastąpienie istniejącej instalacji przy użyciu najnowszej wersji. Node.js aktualizacje poprawek są instalowane równolegle z istniejącymi wersjami (podobnie jak wersje główne i pomocnicze w następnej sekcji). Nowe wersje poprawek języka Python można zainstalować ręcznie za pomocą rozszerzeń lokacji, obok wbudowanych instalacji języka Python.

Nowe wersje główne i pomocnicze

Po dodaniu nowej wersji głównej lub pomocniczej jest instalowana równolegle z istniejącymi wersjami. Możesz ręcznie uaktualnić aplikację do nowej wersji. Jeśli skonfigurowano wersję środowiska uruchomieniowego w pliku konfiguracji (na przykład web.config i package.json), należy uaktualnić ją przy użyciu tej samej metody. Jeśli użyto ustawienia App Service do skonfigurowania wersji środowiska uruchomieniowego, możesz zmienić ją w Azure Portal lub uruchamiając polecenie interfejsu wiersza polecenia platformy Azure w Cloud Shell, jak pokazano w poniższych przykładach:

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>

Uwaga

W tym przykładzie użyto zalecanej "składni tyldy", aby kierować do najnowszej dostępnej wersji środowiska uruchomieniowego Node.js 16 w systemie Windows App Service.

Jak mogę wykonywać zapytania dotyczące stanu aktualizacji systemu operacyjnego i środowiska uruchomieniowego w moich wystąpieniach?

Chociaż krytyczne informacje o systemie operacyjnym są zablokowane z dostępu (zobacz Funkcje systemu operacyjnego w Azure App Service), konsola Kudu umożliwia wykonywanie zapytań dotyczących wystąpienia App Service dotyczące wersji systemu operacyjnego i wersji środowiska uruchomieniowego.

W poniższej tabeli przedstawiono sposób uruchamiania aplikacji w wersjach systemu Windows i środowiska uruchomieniowego języka:

Informacje Gdzie go znaleźć
Wersja systemu Windows Zobacz https://<appname>.scm.azurewebsites.net/Env.cshtml (w obszarze Informacje systemowe)
Wersja platformy .NET W https://<appname>.scm.azurewebsites.net/DebugConsolepliku uruchom następujące polecenie w wierszu polecenia:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full"
Wersja platformy .NET Core W https://<appname>.scm.azurewebsites.net/DebugConsolepliku uruchom następujące polecenie w wierszu polecenia:
dotnet --version
Wersja języka PHP W https://<appname>.scm.azurewebsites.net/DebugConsolepliku uruchom następujące polecenie w wierszu polecenia:
php --version
Domyślna wersja Node.js W Cloud Shell uruchom następujące polecenie:
az webapp config appsettings list --resource-group <groupname> --name <appname> --query "[?name=='WEBSITE_NODE_DEFAULT_VERSION']"
Wersja języka Python W https://<appname>.scm.azurewebsites.net/DebugConsolepliku uruchom następujące polecenie w wierszu polecenia:
python --version
Wersja środowiska Java W https://<appname>.scm.azurewebsites.net/DebugConsolepliku uruchom następujące polecenie w wierszu polecenia:
java -version

Uwaga

Dostęp do lokalizacji HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packagesrejestru, w której są przechowywane informacje o poprawkach "KB" , jest zablokowany.

Więcej zasobów

Centrum zaufania: zabezpieczenia
64-bitowa ASP.NET Core w Azure App Service