OS dan patching runtime di Azure App Service

Artikel ini memperlihatkan kepada Anda cara mendapatkan informasi versi tertentu mengenai OS atau perangkat lunak di App Service.

Azure App Service adalah Platform-as-a-Service, yang berarti bahwa OS dan tumpukan aplikasi dikelola untuk Anda oleh Azure; Anda hanya mengelola aplikasi dan datanya. Kontrol lebih lanjut atas OS dan tumpukan aplikasi tersedia untuk Anda di Azure Virtual Machines. Dengan mengingat hal itu, namun bermanfaat bagi Anda sebagai pengguna Azure App Service untuk mengetahui informasi lebih lanjut, seperti:

  • Bagaimana dan kapan pembaruan OS diterapkan?
  • Bagaimana Azure App Service di-patch terhadap kerentanan signifikan (seperti nol-hari)?
  • Versi OS dan runtime mana yang menjalankan aplikasi Anda?

Untuk alasan keamanan, informasi keamanan spesifik tertentu tidak diterbitkan. Namun, artikel ini bertujuan untuk meringankan kekhawatiran dengan memaksimalkan transparansi pada proses, dan bagaimana Anda dapat tetap up-to-date pada pengumuman terkait keamanan atau pembaruan runtime.

Bagaimana dan kapan pembaruan OS diterapkan?

Azure mengelola patch OS pada dua tingkat, server fisik dan komputer virtual (VM) tamu yang menjalankan sumber daya Azure App Service. Keduanya diperbarui setiap bulan, yang selaras dengan jadwal Selasa Patch bulanan. Pembaruan ini diterapkan secara otomatis, dengan cara yang menjamin SLA ketersediaan tinggi layanan Azure.

Untuk informasi terperinci tentang cara pembaruan diterapkan, lihat Demistifikasi keajaiban di balik pembaruan OS Azure App Service.

Bagaimana Azure menghadapi kerentanan yang signifikan?

Ketika kerentanan parah memerlukan patching segera, seperti kerentanan nol-hari, pembaruan prioritas tinggi dihandel berdasarkan kasus per kasus.

Tetap terkini dengan pengumuman keamanan penting di Azure dengan mengunjungi Blog Keamanan Azure.

Kapan runtime bahasa pemrogram yang didukung diperbarui, ditambahkan, atau tidak digunakan lagi?

Versi stabil baru dari runtime bahasa umum yang didukung (utama, minor, atau patch) secara berkala ditambahkan ke instans App Service. Beberapa pembaruan menimpa penginstalan yang ada, sementara yang lain dipasang berdampingan dengan versi yang ada. Penginstalan timpa berarti aplikasi Anda berjalan secara otomatis pada waktu runtime diperbarui. Penginstalan berdampingan berarti Anda harus memigrasikan aplikasi secara manual untuk memanfaatkan versi runtime baru. Untuk informasi selengkapnya, lihat salah satu subbagian.

Catatan

Informasi di sini berlaku untuk runtime bahasa pemrogram yang disertakan dalam aplikasi App Service. Runtime kustom yang Anda unggah ke App Service, misalnya, tetap tidak berubah kecuali Anda melakukan peningkatan secara manual.

Pembaruan patch baru

Pembaruan patch ke versi .NET, PHP, Java SDK, atau Tomcat diterapkan secara otomatis dengan menimpa penginstalan versi terbaru. Pembaruan patch Node.js dipasang berdampingan dengan versi yang ada (mirip dengan versi utama dan minor di bagian berikutnya). Versi patch Python baru dapat dipasang secara manual melalui ekstensi situs, berdampingan dengan penginstalan Python bawaan.

Versi utama dan minor baru

Saat versi utama atau minor baru ditambahkan, versi tersebut dipasang berdampingan dengan versi yang ada. Anda dapat melakukan peningkatan aplikasi secara manual ke versi baru. Jika Anda mengonfigurasi versi runtime dalam file konfigurasi (seperti web.config dan package.json), Anda perlu melakukan peningkatan dengan metode yang sama. Jika Anda menggunakan pengaturan Azure App Service untuk mengonfigurasi versi runtime, Anda dapat mengubahnya di portal Microsoft Azure atau dengan menjalankan perintah Azure CLI di Cloud Shell, seperti yang diperlihatkan dalam contoh berikut:

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>

Catatan

Contoh ini menggunakan "sintaksis tilde" yang direkomendasikan untuk menargetkan versi terbaru runtime Node.js 16 yang tersedia di App Service Windows.

Bagaimana cara meng-kueri OS dan status pembaruan runtime pada instans saya?

Meskipun informasi OS penting dikunci dari akses (lihat Fungsionalitas sistem operasi pada Azure App Service), konsol Kudu mengaktifkan Anda untuk meng-kueri instans App Service Anda mengenai versi OS dan versi runtime.

Tabel berikut ini memperlihatkan cara versi Windows dan runtime bahasa pemrogram yang menjalankan aplikasi Anda:

Informasi Tempat menemukannya
Versi Windows Lihat https://<appname>.scm.azurewebsites.net/Env.cshtml (di bawah Info Sistem)
Versi .NET Pada https://<appname>.scm.azurewebsites.net/DebugConsole, jalankan perintah berikut ini di perintah:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full"
Versi .NET Core Pada https://<appname>.scm.azurewebsites.net/DebugConsole, jalankan perintah berikut ini di perintah:
dotnet --version
Versi PHP Pada https://<appname>.scm.azurewebsites.net/DebugConsole, jalankan perintah berikut ini di perintah:
php --version
Versi Node.js default Di Cloud Shell, jalankan perintah berikut ini:
az webapp config appsettings list --resource-group <groupname> --name <appname> --query "[?name=='WEBSITE_NODE_DEFAULT_VERSION']"
Versi Python Pada https://<appname>.scm.azurewebsites.net/DebugConsole, jalankan perintah berikut ini di perintah:
python --version
Versi Java Pada https://<appname>.scm.azurewebsites.net/DebugConsole, jalankan perintah berikut ini di perintah:
java -version

Catatan

Akses ke lokasi registri HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages, di mana informasi tentang patch "KB" disimpan, dikunci.

Sumber daya lainnya

Pusat Kepercayaan: Keamanan
Core ASP.NET 64 bit di Azure App Service