Izinkan akses ke namespace Azure Service Bus dari alamat atau rentang IP tertentu

Secara default, Bus Layanan namespace dapat diakses dari internet selama permintaan berisi autentikasi dan otorisasi yang valid. Dengan firewall IP, lalu lintas masuk dapat dibatasi ke sekumpulan alamat IPv4 atau rentang alamat IPv4 (dalam notasi CIDR (Perutean Antar-Domain Tanpa Kelas).

Fitur ini sangat membantu dalam skenario di mana Azure Service Bus harus hanya dapat diakses dari situs terkenal tertentu. Aturan firewall memungkinkan Anda mengonfigurasi aturan untuk menerima lalu lintas yang berasal dari alamat IPv4 tertentu. Misalnya, jika Anda menggunakan Service Bus dengan Azure Express Route, Anda dapat membuat aturan firewall untuk mengizinkan lalu lintas hanya dari alamat IP infrastruktur lokal Anda atau alamat gateway NAT perusahaan.

Aturan firewall IP

Aturan firewall IP diterapkan pada tingkat namespace Service Bus. Oleh karena itu, aturan berlaku untuk semua sambungan dari klien menggunakan protokol yang didukung (AMQP (5671) and HTTPS (443)). Semua upaya koneksi dari alamat IP yang tidak cocok dengan aturan IP yang diizinkan pada namespace Azure Service Bus ditolak karena tidak sah. Respons tidak menyebutkan aturan IP. Aturan filter IP diterapkan secara berurutan, dan aturan pertama yang cocok dengan alamat IP menentukan tindakan terima atau tolak.

Poin penting

  • Virtual Network hanya didukung di tingkat premium Bus Layanan. Jika memutakhirkan ke tingkat premium bukan pilihan, anda dapat menggunakan aturan firewall IP. Kami menyarankan agar Anda menjaga token Tanda Tangan Akses Bersama (SAS) tetap aman dan membagikannya hanya dengan pengguna yang berwenang. Untuk informasi tentang autentikasi SAS, lihat Autentikasi dan otorisasi.

  • Tentukan setidaknya satu aturan IP atau aturan jaringan virtual untuk namespace untuk memperbolehkan lalu lintas hanya dari alamat IP atau subnet yang ditentukan dari jaringan virtual. Jika tidak IP dan aturan jaringan virtual, namespace dapat diakses melalui internet publik (menggunakan tombol akses).

  • Menerapkan aturan firewall dapat mencegah layanan Azure lainnya berinteraksi dengan Service Bus. Sebagai pengecualian, Anda dapat mengizinkan akses ke sumber daya Service Bus dari layanan tepercaya tertentu bahkan ketika pemfilteran IP diaktifkan. Untuk daftar layanan tepercaya, lihat Layanan tepercaya.

    Layanan Microsoft berikut ini diperlukan untuk berada di jaringan virtual

    • Azure App Service
    • Azure Functions

Catatan

Anda melihat tab Networking hanya untuk namespace premium. Untuk mengatur aturan firewall IP untuk tingkat lain, gunakan templat Azure Resource Manager, Azure CLI, PowerShell, atau REST API.

Menggunakan portal Microsoft Azure

Saat membuat namespace layanan, Anda hanya dapat mengizinkan akses publik (dari semua jaringan) atau privat (hanya melalui titik akhir privat) ke namespace layanan. Setelah namespace dibuat, Anda dapat mengizinkan akses dari alamat IP tertentu atau dari jaringan virtual tertentu (menggunakan titik akhir layanan jaringan).

Mengonfigurasi akses publik saat membuat namespace

Untuk mengaktifkan akses publik, pilih Akses publik pada halaman Jaringan wizard pembuatan namespace.

Screenshot showing the Networking page of the Create namespace wizard with Public access option selected.

Setelah Anda membuat namespace layanan, pilih Jaringan di menu sebelah kiri halaman Bus Layanan Namespace. Anda melihat bahwa opsi Semua Jaringan dipilih. Anda dapat memilih opsi Jaringan yang Dipilih dan mengizinkan akses dari alamat IP tertentu atau jaringan virtual tertentu. Bagian berikutnya memberi Anda detail tentang mengonfigurasi firewall IP untuk menentukan alamat IP tempat akses diizinkan.

Mengonfigurasi firewall IP untuk namespace yang sudah ada

Bagian ini memperlihatkan kepada Anda cara menggunakan portal Microsoft Azure untuk membuat aturan firewall IP untuk namespace Service Bus.

  1. Navigasikan ke namespace Service Bus di portal Microsoft Azure.

  2. Di menu sebelah kiri, pilih Opsi jaringan di bawah Pengaturan.

    Catatan

    Anda melihat tab Networking hanya untuk namespace premium.

  3. Pada halaman Jaringan, untuk Akses jaringan publik, Anda dapat mengatur salah satu dari tiga opsi berikut. Pilih opsi Jaringan yang dipilih untuk mengizinkan akses hanya dari alamat IP yang ditentukan.

    • Dinonaktifkan. Opsi ini menonaktifkan akses publik apa pun ke namespace layanan. Namespace hanya dapat diakses melalui titik akhir privat.

      Screenshot that shows the Networking page of a namespace with public access disabled.

      Pilih apakah Anda ingin mengizinkan layanan Microsoft tepercaya melewati firewall. Untuk daftar layanan Microsoft tepercaya untuk Azure Bus Layanan, lihat bagian Layanan Microsoft Tepercaya.

    • Jaringan yang dipilih. Opsi ini memungkinkan akses publik ke namespace layanan menggunakan kunci akses dari jaringan yang dipilih.

      Penting

      Jika Anda memilih Jaringan yang dipilih, tambahkan setidaknya satu aturan firewall IP atau jaringan virtual yang akan memiliki akses ke namespace. Pilih Nonaktif jika Anda ingin membatasi semua lalu lintas ke ruang nama ini melalui titik akhir privat saja.

    • Semua jaringan (default). Opsi ini memungkinkan akses publik dari semua jaringan menggunakan kunci akses. Jika Anda memilih opsi Semua jaringan, Azure Service Bus menerima koneksi dari semua alamat IP (menggunakan kunci akses). Pengaturan ini setara dengan aturan yang menerima rentang alamat IP 0.0.0.0/0.

  4. Untuk mengizinkan akses dari hanya alamat IP yang ditentukan, pilih opsi Jaringan yang dipilih jika belum dipilih. Di bagian Firewall, ikuti langkah-langkah berikut:

    1. Pilih opsi Tambahkan alamat IP klien Anda untuk memberikan akses ke namespace layanan kepada IP klien Anda saat ini.

    2. Untuk rentang alamat, masukkan alamat IPv4 tertentu atau rentang alamat IPv4 dalam notasi CIDR.

    3. Tentukan apakah Anda ingin membolehkan layanan Microsoft tepercaya melewati firewall ini. Untuk daftar layanan Microsoft tepercaya untuk Azure Bus Layanan, lihat bagian Layanan Microsoft Tepercaya.

      Peringatan

      Jika Anda memilih opsi Jaringan terpilih dan tidak menambahkan setidaknya satu aturan firewall IP atau jaringan virtual di halaman ini, namespace dapat diakses melalui internet publik (menggunakan kunci akses).

      Screenshot of the Azure portal Networking page. The option to allow access from Selected networks is selected and the Firewall section is highlighted.

  5. Pilih Simpan pada toolbar untuk menyimpan pengaturan. Tunggu beberapa menit hingga konfirmasi muncul di pemberitahuan portal.

    Catatan

    Untuk membatasi akses ke jaringan virtual tertentu, lihat Mengizinkan akses dari jaringan tertentu.

Layanan Microsoft Tepercaya

Saat Anda mengaktifkan pengaturan Izinkan layanan Microsoft terpercaya untuk melewati firewall ini, layanan berikut akan diberikan akses ke sumber daya Microsoft Azure Service Bus Anda.

Layanan tepercaya Skenario penggunaan yang didukung
Azure Event Grid Izinkan Azure Event Grid mengirim acara ke antrean atau topik di namespace layanan Microsoft Azure Service Bus. Anda juga perlu melakukan langkah-langkah berikut:
  • Aktifkan identitas yang ditetapkan sistem untuk topik atau domain
  • Tambahkan identitas ke peran Pengirim Data Microsoft Azure Service Bus Azure pada rnamespace layanan Microsoft Azure Service Bus
  • Lalu, konfigurasikan langganan kejadian yang menggunakan antrian atau topik Microsoft Azure Service Bus sebagai titik akhir untuk menggunakan identitas yang ditetapkan sistem.

Untuk informasi selengkapnya, lihat Pengiriman acara dengan identitas terkelola

Azure Stream Analytics Memungkinkan pekerjaan Azure Stream Analytics menghasilkan data ke Bus Layanan antrean ke topik.

Penting: Pekerjaan Azure Stream Analytics harus dikonfigurasi untuk menggunakan identitas terkelola untuk mengakses namespace Bus Layanan. Tambahkan identitas ke peran Pengirim Data Azure Service Bus pada namespace Bus Layanan.

Azure IoT Hub Mengizinkan hub IoT untuk mengirim pesan ke antrean atau topik di namespace layanan Azure Service Bus Anda. Anda juga perlu melakukan langkah-langkah berikut:
Azure API Management

Layanan API Management memungkinkan Anda mengirim pesan ke antrean/topik Microsoft Azure Service Bus di namespace layanan Microsoft Azure Service Bus.

Azure IoT Central

Memungkinkan IoT Central mengekspor data ke antrean Bus Layanan atau topik di ruang nama Bus Layanan Anda. Anda juga perlu melakukan langkah-langkah berikut:

  • Aktifkan identitas yang ditetapkan sistem untuk aplikasi IoT Central Anda
  • Tambahkan identitas ke peran Pengirim Data Azure Service Bus pada namespace Bus Layanan.
  • Kemudian, konfigurasikan tujuan ekspor Bus Layanan di aplikasi IoT Central Anda untuk menggunakan autentikasi berbasis identitas.
Azure Digital Twins Memungkinkan Azure Digital Twins untuk keluarkan data untuk Bus Layanan topik di namespace Bus Layanan Anda. Anda juga perlu melakukan langkah-langkah berikut:

  • Aktifkan identitas yang ditetapkan sistem untuk instans Azure Digital Twins Anda.
  • Tambahkan identitas ke peran Pengirim Data Azure Service Bus pada namespace Bus Layanan.
  • Kemudian, konfigurasikan titik akhir Azure Digital Twins atau koneksi riwayat data Azure Digital Twins yang menggunakan identitas yang ditetapkan sistem untuk mengautentikasi. Untuk informasi selengkapnya tentang mengonfigurasi titik akhir dan rute peristiwa ke Bus Layanan sumber daya dari Azure Digital Twins, lihat Merutekan peristiwa Azure Digital Twins dan Membuat titik akhir di Azure Digital Twins.
Azure Monitor (Pengaturan Diagnostik dan Grup Aksi) Memungkinkan Azure Monitor mengirim informasi diagnostik dan pemberitahuan pemberitahuan ke Bus Layanan di namespace Bus Layanan Anda. Azure Monitor dapat membaca dari dan menulis data ke namespace Bus Layanan.
Azure Synapse Memungkinkan Azure Synapse tersambung ke bus layanan menggunakan Identitas Terkelola Ruang Kerja Synapse. Tambahkan peran Pengirim Data, Penerima, atau Pemilik Azure Bus Layanan ke identitas di namespace Bus Layanan.

Layanan tepercaya lainnya untuk Azure Bus Layanan dapat ditemukan di bawah ini:

  • Azure Data Explorer
  • Azure Health Data Services
  • Azure Arc
  • Azure Kubernetes
  • Pembelajaran Mesin Azure
  • Microsoft Purview

Gunakan templat Azure Resource Manager

Bagian ini memiliki contoh templat Azure Resource Manager yang menambahkan jaringan virtual dan aturan firewall ke namespace Service Bus yang sudah ada.

ipMask adalah satu alamat IPv4 atau blok alamat IP dalam notasi CIDR. Misalnya, dalam notasi CIDR 70.37.104.0/24 mewakili 256 alamat IPv4 dari 70.37.104.0 hingga 70.37.104.255, dengan 24 menunjukkan jumlah bit awalan yang signifikan untuk rentang tersebut.

Catatan

Nilai default dari defaultAction adalah Allow. Saat menambahkan aturan jaringan virtual atau firewall, tetapkan nilai defaultAction ke Deny.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "namespace_name": {
            "defaultValue": "mypremiumnamespace",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.ServiceBus/namespaces",
            "apiVersion": "2022-10-01-preview",
            "name": "[parameters('namespace_name')]",
            "location": "East US",
            "sku": {
                "name": "Premium",
                "tier": "Premium",
                "capacity": 1
            },
            "properties": {
                "premiumMessagingPartitions": 1,
                "minimumTlsVersion": "1.2",
                "publicNetworkAccess": "Enabled",
                "disableLocalAuth": false,
                "zoneRedundant": true
            }
        },
        {
            "type": "Microsoft.ServiceBus/namespaces/networkRuleSets",
            "apiVersion": "2022-10-01-preview",
            "name": "[concat(parameters('namespace_name'), '/default')]",
            "location": "East US",
            "dependsOn": [
                "[resourceId('Microsoft.ServiceBus/namespaces', parameters('namespace_name'))]"
            ],
            "properties": {
                "publicNetworkAccess": "Enabled",
                "defaultAction": "Deny",
                "virtualNetworkRules": [],
                "ipRules": [
                    {
                        "ipMask": "10.1.1.1",
                        "action": "Allow"
                    },
                    {
                        "ipMask": "11.0.0.0/24",
                        "action": "Allow"
                    }
                ]
            }
        }
    ]
}

Untuk menerapkan templat, ikuti instruksi untuk Azure Resource Manager.

Penting

Jika tidak ada IP dan aturan jaringan virtual, semua lalu lintas mengalir ke namespace bahkan jika Anda mengatur defaultAction ke deny. Namespace dapat diakses melalui internet umum (menggunakan kunci akses). Tentukan paling sedikit satu aturan IP atau aturan jaringan virtual untuk namespace yang mengizinkan lalu lintas hanya dari alamat IP atau subnet yang ditentukan dari jaringan virtual.

Gunakan Azure CLI

Gunakan az servicebus namespace network-rule-set perintah tambahkan, daftar, perbarui, dan hapus untuk mengelola aturan firewall IP untuk namespace Bus Layanan.

Menggunakan Azure PowerShell

Gunakan perintah Azure PowerShell berikut untuk menambahkan, mencantumkan, menghapus, memperbarui, dan menghapus aturan firewall IP.

Tindakan default dan akses jaringan publik

REST API

Nilai default defaultAction properti adalah Deny untuk API versi pratinjau 2021-01-01 dan sebelumnya. Namun, aturan penolakan tidak diberlakukan kecuali Anda menetapkan filter IP atau aturan jaringan virtual (VNet). Artinya, jika Anda tidak memiliki filter IP atau aturan Vnet, itu diperlakukan sebagai Allow.

Dari API versi 2021-06-01-preview dan seterusnya, nilai default defaultAction properti adalah Allow, untuk secara akurat mencerminkan penegakan sisi layanan. Jika tindakan default diatur ke Deny, filter IP dan aturan VNet diberlakukan. Jika tindakan default diatur ke Allow, filter IP dan aturan VNet tidak diberlakukan. Layanan ini mengingat aturan saat Anda mematikannya dan kemudian kembali lagi.

Versi API 2021-06-01-preview dan seterusnya juga memperkenalkan properti baru bernama publicNetworkAccess. Jika diatur ke Disabled, operasi dibatasi hanya untuk tautan pribadi. Jika diatur ke Enabled, operasi diizinkan melalui internet publik.

Untuk informasi selengkapnya tentang properti ini, lihat Membuat atau Memperbarui Kumpulan Aturan Jaringan dan Membuat atau Memperbarui Koneksi Titik Akhir Privat.

Catatan

Tidak ada pengaturan di atas yang melewati validasi klaim melalui SAS atau autentikasi Microsoft Entra. Pemeriksaan autentikasi selalu berjalan setelah layanan memvalidasi pemeriksaan jaringan yang dikonfigurasi oleh defaultAction, publicNetworkAccess, privateEndpointConnectionspengaturan.

Portal Azure

Portal Azure selalu menggunakan versi API terbaru untuk mendapatkan dan mengatur properti. Jika sebelumnya Anda telah mengonfigurasi ruang nama Anda menggunakan pratinjau 2021-01-01 dan sebelumnya dengan defaultAction set ke Deny, dan menentukan nol filter IP dan aturan VNet, portal sebelumnya akan memeriksa Jaringan Terpilih di halaman Jaringan ruang nama Anda. Sekarang, ia memeriksa opsi Semua jaringan.

Screenshot of the Azure portal Networking page. The option to allow access from All networks is selected on the Firewalls and virtual networks tab.

Langkah berikutnya

Untuk membatasi akses pada Service Bus ke jaringan virtual Azure, lihat tautan berikut ini: