Mengonfigurasi Application Gateway dengan App Service

Gateway aplikasi memungkinkan Anda memiliki aplikasi App Service atau layanan multi-penyewa lainnya sebagai anggota kumpulan backend. Dalam artikel ini, Anda belajar mengonfigurasi aplikasi App Service dengan Application Gateway. Konfigurasi untuk Application Gateway akan berbeda tergantung pada bagaimana App Service akan diakses:

  • Opsi pertama menggunakan domain kustom di Application Gateway dan App Service di backend.
  • Opsi kedua adalah meminta App Service akses Application Gateway menggunakan domain defaultnya, dengan akhiran ".azurewebsites.net".

Konfigurasi ini direkomendasikan untuk skenario tingkat produksi dan memenuhi praktik tidak mengubah nama host dalam alur permintaan. Anda diharuskan memiliki domain kustom (dan sertifikat terkait) yang tersedia untuk menghindari keharusan mengandalkan domain ".azurewebsites" default.

Dengan mengaitkan nama domain yang sama ke Application Gateway dan App Service di kumpulan backend, alur permintaan tidak perlu mengambil alih nama host. Aplikasi web backend akan melihat host asli seperti yang digunakan oleh klien.

Scenario overview for Application Gateway to App Service using the same custom domain for both

Dalam artikel ini, Anda akan mempelajari cara:

  • Mengonfigurasi DNS
  • Menambahkan App Service sebagai kumpulan backend ke Application Gateway
  • Mengonfigurasi Pengaturan HTTP untuk koneksi ke App Service
  • Mengonfigurasi Pendengar HTTP
  • Mengonfigurasi Aturan Perutean Permintaan

Prasyarat

Mengonfigurasi DNS

Dalam konteks skenario ini, DNS relevan di dua tempat:

  • Nama DNS, yang digunakan pengguna atau klien terhadap Application Gateway dan apa yang diperlihatkan di browser
  • Nama DNS, yang digunakan Application Gateway secara internal untuk mengakses App Service di backend

Rutekan pengguna atau klien ke Application Gateway menggunakan domain kustom. Siapkan DNS menggunakan alias CNAME yang diarahkan ke DNS untuk Application Gateway. Alamat DNS Application Gateway ditampilkan di halaman gambaran umum alamat IP Publik terkait. Atau buat catatan A yang menunjuk ke alamat IP secara langsung. (Untuk Application Gateway V1 VIP dapat berubah jika Anda menghentikan dan memulai layanan, yang membuat opsi ini tidak diinginkan.)

App Service harus dikonfigurasi sehingga menerima lalu lintas dari Application Gateway menggunakan nama domain kustom sebagai host masuk. Untuk informasi selengkapnya tentang cara memetakan domain kustom ke App Service, lihat Tutorial: Memetakan nama DNS kustom yang ada ke Azure App Service Untuk memverifikasi domain, App Service hanya memerlukan penambahan catatan TXT. Tidak ada perubahan yang diperlukan pada CNAME atau catatan A. Konfigurasi DNS untuk domain kustom akan tetap diarahkan ke Application Gateway.

Untuk menerima koneksi ke App Service melalui HTTPS, konfigurasikan pengikatan TLS-nya. Untuk informasi selengkapnya, lihat Mengamankan nama DNS kustom dengan pengikatan TLS/SSL di Azure App Service Mengonfigurasi App Service untuk menarik sertifikat untuk domain kustom dari Azure Key Vault.

Menambahkan layanan Aplikasi sebagai kumpulan ujung belakang

  1. Di portal Azure, pilih Application Gateway Anda.

  2. Pada Kumpulan ujung belakang,pilih salah satu kumpulan ujung belakang.

  3. Pada Jenis target, pilih App Services.

  4. Pada Target pilih App Service.

    App service backend

    Catatan

    Menu turun tersebut hanya mengisi layanan aplikasi yang ada di langganan yang sama dengan Gateway Aplikasi Anda. Jika Anda ingin menggunakan layanan aplikasi yang berada dalam langganan yang berbeda dari langganan di mana Application Gateway berada, maka alih-alih memilih App Services di menu dropdown Target , pilih alamat IP atau opsi nama host dan masukkan nama host (example.azurewebsites.net) layanan aplikasi.

  5. Pilih Simpan.

Edit pengaturan HTTP untuk App Service

Pengaturan HTTP diperlukan yang menginstruksikan Application Gateway untuk mengakses backend App Service menggunakan nama domain kustom. Pengaturan HTTP secara default akan menggunakan pemeriksaan kesehatan default. Meskipun pemeriksaan kesehatan default akan meneruskan permintaan dengan nama host tempat lalu lintas diterima, pemeriksaan kesehatan akan menggunakan 127.0.0.1 sebagai nama host ke Kumpulan Backend karena tidak ada nama host yang secara eksplisit didefinisikan. Untuk alasan ini, kita perlu membuat pemeriksaan kesehatan kustom yang dikonfigurasi dengan nama domain kustom yang benar sebagai nama hostnya.

Kami akan terhubung ke backend menggunakan HTTPS.

  1. Di bawah Pengaturan HTTP, pilih pengaturan HTTP yang sudah ada atau tambahkan yang baru.
  2. Saat membuat Pengaturan HTTP baru, beri nama
  3. Pilih HTTPS sebagai protokol backend yang diinginkan menggunakan port 443
  4. Jika sertifikat ditandatangani oleh otoritas terkenal, pilih "Ya" untuk "Sertifikat CA terkenal pengguna". Atau Tambahkan sertifikat autentikasi/akar tepercaya dari server backend
  5. Pastikan untuk mengatur "Ganti dengan nama host baru" ke "Tidak"
  6. Pilih pemeriksaan kesehatan HTTPS kustom di menu dropdown untuk "Pemeriksaan kustom".

Configure H T T P Settings to use custom domain towards App Service backend using No Override

Mengonfigurasi pendengar HTTP

Untuk menerima lalu lintas, kita perlu mengonfigurasi Listener. Untuk informasi selengkapnya tentang ini, lihat Konfigurasi pendengar Application Gateway.

  1. Buka bagian "Pendengar" dan pilih "Tambahkan pendengar" atau klik yang sudah ada untuk mengedit
  2. Untuk pendengar baru: beri nama
  3. Di bagian "IP Frontend", pilih alamat IP yang akan didengarkan
  4. Di bagian "Port", pilih 443
  5. Di bagian "Protokol", pilih "HTTPS"
  6. Di bagian "Pilih sertifikat", pilih "Pilih sertifikat dari Key Vault". Untuk informasi selengkapnya, lihat Menggunakan Key Vault tempat Anda menemukan informasi selengkapnya tentang cara menetapkan identitas terkelola dan memberikannya hak atas Key Vault Anda.
    1. Beri nama sertifikat
    2. Pilih Identitas Terkelola
    3. Pilih Key Vault dari tempat mendapatkan sertifikat
    4. Pilih sertifikat
  7. Di bagian "Jenis Pendengar", pilih "Dasar"
  8. Klik "Tambahkan" untuk menambahkan pendengar

Add a listener for H T T P S traffic

Mengonfigurasi aturan perutean permintaan

Menggunakan Kumpulan Backend yang dikonfigurasi sebelumnya dan Pengaturan HTTP, aturan perutean permintaan dapat diatur untuk mengambil lalu lintas dari pendengar dan merutekannya ke Kumpulan Backend menggunakan Pengaturan HTTP. Untuk ini, pastikan Anda memiliki pendengar HTTP atau HTTPS yang tersedia yang belum terikat ke aturan perutean yang ada.

  1. Di bagian "Aturan", klik untuk menambahkan "Minta aturan perutean" baru
  2. Berikan aturan dengan nama
  3. Pilih pendengar HTTP atau HTTPS yang belum terikat ke aturan perutean yang ada
  4. Di bagian "Target backend", pilih Kumpulan Backend tempat App Service telah dikonfigurasi
  5. Mengonfigurasi pengaturan HTTP yang harus disambungkan oleh Application Gateway ke backend App Service
  6. Pilih "Tambahkan" untuk menyimpan konfigurasi ini

Add a new Routing rule from the listener to the App Service Backend Pool using the configured H T T P Settings

Pengujian

Sebelum kita melakukannya, pastikan bahwa kesehatan backend menunjukkan sebagai sehat:

Buka bagian "Kesehatan backend" dan pastikan kolom "Status" menunjukkan kombinasi untuk Pengaturan HTTP dan Kumpulan Backend ditampilkan sebagai "Sehat".

Check backend health in Azure portal

Sekarang telusuri ke aplikasi web menggunakan domain kustom yang Anda kaitkan dengan Application Gateway dan App Service di backend.

Membatasi akses

Aplikasi web yang disebar di contoh ini menggunakan alamat IP publik yang dapat diakses langsung dari Internet. Ini membantu pemecahan masalah saat Anda mempelajari fitur baru dan mencoba hal-hal baru. Namun, jika Anda berniat untuk menyebarkan fitur ke dalam produksi, Anda perlu menambahkan lebih banyak pembatasan. Pertimbangkan opsi berikut:

  • Mengonfigurasi aturan pembatasan akses berdasarkan titik akhir layanan. Ini memungkinkan Anda mengunci akses masuk ke aplikasi untuk memastikan alamat sumber berasal dari Application Gateway.
  • Gunakan pembatasan IP statis Azure App Service. Misalnya, Anda dapat membatasi aplikasi web agar hanya menerima lalu lintas dari gateway aplikasi. Gunakan fitur pembatasan IP layanan aplikasi untuk mencantumkan gateway aplikasi VIP sebagai satu-satunya alamat dengan akses.