Menghubungkan dengan aman ke sumber daya backend dari lingkungan App Service
Penting
Artikel ini tentang Lingkungan App Service v1. Lingkungan App Service v1 dan v2 dihentikan per 31 Agustus 2024. Terdapat versi baru Lingkungan App Service yang lebih mudah digunakan dan berjalan di infrastruktur yang lebih kuat. Untuk mempelajari selengkapnya tentang versi baru, mulai dengan Pengantar Lingkungan App Service. Jika saat ini Anda menggunakan Lingkungan App Service v1, ikuti langkah-langkah dalam artikel ini untuk bermigrasi ke versi baru.
Pada 31 Agustus 2024, Perjanjian Tingkat Layanan (SLA) dan Kredit Layanan tidak lagi berlaku untuk beban kerja App Service Environment v1 dan v2 yang terus diproduksi karena mereka adalah produk yang dihentikan. Penonaktifan perangkat keras App Service Environment v1 dan v2 telah dimulai, dan ini dapat memengaruhi ketersediaan dan performa aplikasi dan data Anda.
Anda harus segera menyelesaikan migrasi ke App Service Environment v3 atau aplikasi dan sumber daya Anda dapat dihapus. Kami akan mencoba memigrasikan secara otomatis Lingkungan App Service v1 dan v2 yang tersisa berdasarkan upaya terbaik menggunakan fitur migrasi di tempat, tetapi Microsoft tidak membuat klaim atau jaminan tentang ketersediaan aplikasi setelah migrasi otomatis. Anda mungkin perlu melakukan konfigurasi manual untuk menyelesaikan migrasi dan mengoptimalkan pilihan SKU paket App Service Anda untuk memenuhi kebutuhan Anda. Jika migrasi otomatis tidak memungkinkan, sumber daya dan data aplikasi terkait Anda akan dihapus. Kami sangat mendorong Anda untuk bertindak sekarang untuk menghindari salah satu skenario ekstrem ini.
Jika Anda memerlukan waktu tambahan, kami dapat menawarkan masa tenggang 30 hari sekali bagi Anda untuk menyelesaikan migrasi Anda. Untuk informasi selengkapnya dan untuk meminta masa tenggang ini, tinjau gambaran umum masa tenggang, lalu buka portal Azure dan kunjungi bilah Migrasi untuk setiap Lingkungan App Service Anda.
Untuk informasi terbaru tentang penghentian App Service Environment v1/v2, lihat pembaruan penghentian App Service Environment v1 dan v2.
Karena Lingkungan App Service selalu dibuat baik di jaringan virtual Azure Resource Manager atau di jaringan virtual model penyebaran klasik, koneksi keluar dari Lingkungan App Service ke sumber daya backend lainnya dapat mengalir secara eksklusif melalui jaringan virtual. Pada Juni 2016, ASE juga dapat disebarkan ke jaringan virtual yang menggunakan rentang alamat publik atau ruang alamat RFC1918 (alamat privat).
Misalnya, mungkin ada SQL Server yang berjalan pada satu kluster komputer virtual dengan port 1433 yang dikunci. Titik akhir mungkin di-ACL untuk hanya mengizinkan akses dari sumber daya lain pada jaringan virtual yang sama.
Sebagai contoh lain, titik akhir sensitif dapat berjalan secara lokal dan tersambung ke Azure melalui koneksi Situs ke Situs atau Azure ExpressRoute. Akibatnya, hanya sumber daya di jaringan virtual yang tersambung ke terowongan Situs ke Situs atau ExpressRoute yang dapat mengakses titik akhir lokal.
Untuk semua skenario ini, aplikasi yang berjalan di Lingkungan App Service dapat tersambung dengan aman ke berbagai server dan sumber daya. Jika lalu lintas keluar dari aplikasi berjalan di Lingkungan App Service ke titik akhir privat di jaringan virtual yang sama atau tersambung ke jaringan virtual yang sama, itu hanya akan mengalir melalui jaringan virtual. Lalu lintas keluar ke titik akhir privat tidak akan mengalir melalui Internet publik.
Ada masalah pada lalu lintas keluar dari Lingkungan App Service ke titik akhir dalam jaringan virtual. Lingkungan App Servicei tidak dapat menjangkau titik akhir komputer virtual yang terletak di subnet yang sama dengan Lingkungan App Service. Pembatasan ini biasanya tidak menjadi masalah, jika Lingkungan App Service diterapkan ke subnet yang disediakan untuk digunakan secara eksklusif oleh Lingkungan App Service.
Catatan
Meskipun artikel ini mengacu pada aplikasi web, artikel ini juga berlaku untuk aplikasi API dan aplikasi seluler.
Konektivitas Keluar dan Persyaratan DNS
Agar Lingkungan App Service berfungsi dengan baik, diperlukan akses keluar ke berbagai titik akhir. Daftar lengkap titik akhir eksternal yang digunakan oleh ASE ada di bagian "Konektivitas Jaringan yang Diperlukan" dari artikel Konfigurasi Jaringan untuk ExpressRoute.
Lingkungan App Service memerlukan infrastruktur DNS yang valid yang dikonfigurasi untuk jaringan virtual. Jika konfigurasi DNS diubah setelah pembuatan Lingkungan App Service, pengembang dapat memaksa Lingkungan App Service untuk mengambil konfigurasi DNS baru. Di bagian atas bilah manajemen Lingkungan App Service di portal, pilih ikon Mulai ulang untuk memicu reboot lingkungan bergulir, yang menyebabkan lingkungan mengambil konfigurasi DNS baru.
Disarankan juga bahwa server DNS kustom apa pun di vnet disiapkan sebelumnya sebelum membuat Lingkungan App Service. Jika konfigurasi DNS jaringan virtual diubah selama pembuatan Lingkungan App Service, yang akan mengakibatkan proses pembuatan Lingkungan App Service gagal. Di ujung lain gateway VPN, jika ada server DNS kustom yang tidak dapat dijangkau atau tidak tersedia, proses pembuatan Lingkungan App Service juga akan gagal.
Menyambungkan ke SQL Server
Konfigurasi SQL Server umum memiliki pendengaran titik akhir pada port 1433:
Ada dua pendekatan untuk membatasi lalu lintas ke titik akhir ini:
- Daftar Kontrol Akses Jaringan (ACL Jaringan)
- Kelompok Keamanan Jaringan
Membatasi Akses Dengan ACL Jaringan
Port 1433 dapat diamankan menggunakan daftar kontrol akses jaringan. Contoh di bawah ini menambahkan izin penugasan alamat klien yang berasal dari dalam jaringan virtual, dan memblokir akses ke semua klien lain.
Semua aplikasi yang berjalan di Lingkungan App Service, dalam jaringan virtual yang sama dengan SQL Server, dapat terhubung ke instans SQL Server. Gunakan alamat IP internal VNet untuk komputer virtual SQL Server.
Contoh string koneksi di bawah ini mereferensikan SQL Server menggunakan alamat IP privatnya.
Server=tcp:10.0.1.6;Database=MyDatabase;User ID=MyUser;Password=PasswordHere;provider=System.Data.SqlClient
Meskipun komputer virtual memiliki titik akhir publik juga, upaya koneksi untuk menggunakan alamat IP publik akan ditolak karena jaringan ACL.
Membatasi Akses Dengan Kelompok Keamanan Jaringan
Pendekatan alternatif untuk mengamankan akses adalah dengan kelompok keamanan jaringan. Kelompok keamanan jaringan dapat diterapkan ke komputer virtual individual, atau ke subnet yang berisi komputer virtual.
Pertama, Anda harus membuat kelompok keamanan jaringan:
New-AzureNetworkSecurityGroup -Name "testNSGexample" -Location "South Central US" -Label "Example network security group for an app service environment"
Membatasi akses ke lalu lintas internal VNet saja dengan mudah menggunakan kelompok keamanan jaringan. Aturan default dalam kelompok keamanan jaringan hanya mengizinkan akses dari klien jaringan lain dalam jaringan virtual yang sama.
Akibatnya, mengunci akses ke SQL Server menjadi mudah. Cukup terapkan kelompok keamanan jaringan dengan aturan default untuk komputer virtual yang menjalankan SQL Server, atau subnet yang berisi komputer virtual.
Sampel di bawah ini menerapkan kelompok keamanan jaringan ke subnet yang memuat:
Get-AzureNetworkSecurityGroup -Name "testNSGExample" | Set-AzureNetworkSecurityGroupToSubnet -VirtualNetworkName 'testVNet' -SubnetName 'Subnet-1'
Hasil akhir adalah sekumpulan aturan keamanan yang memblokir akses eksternal, sekaligus memperbolehkan akses internal VNet:
Memulai
Untuk mulai menggunakan Lingkungan App Service, lihat Pengenalan Lingkungan App Service
Untuk detail tentang mengontrol lalu lintas masuk ke Lingkungan App Service Anda, lihat Mengontrol lalu lintas masuk ke Lingkungan App Service
Catatan
Jika Anda ingin mulai menggunakan Azure App Service sebelum mendaftar untuk akun Azure, buka Coba Layanan Aplikasi, di mana Anda dapat segera membuat aplikasi web starter berumur pendek di Layanan Aplikasi. Tidak diperlukan kartu kredit; tidak ada komitmen.