Perbolehkan akses ke namespace layanan Azure Event Hubs dari alamat atau rentang IP tertentu

Secara default, ruang nama Azure Event Hubs dapat diakses dari internet selama permintaan dilengkapi dengan autentikasi dan otorisasi yang valid. Dengan firewall IP, Anda dapat membatasinya lebih jauh hanya ke sekumpulan alamat atau rentang alamat IPv4 dan IPv6 dalam notasi CIDR (Perutean Antar-Domain Tanpa Kelas).

Fitur ini sangat membantu dalam skenario di mana Azure Event Hubs seharusnya hanya dapat diakses dari situs terkenal tertentu. Aturan firewall memungkinkan Anda mengonfigurasi aturan untuk menerima lalu lintas yang berasal dari alamat IPv4 dan IPv6 tertentu. Misalnya, jika Anda menggunakan Azure Event Hubs dengan Azure Express Route, Anda dapat membuat aturan firewall untuk mengizinkan lalu lintas hanya dari alamat IP infrastruktur lokal Anda.

Aturan firewall IP

Anda menentukan aturan firewall IP di tingkat namespace Layanan Azure Event Hubs. Jadi, aturan berlaku untuk semua koneksi dari klien menggunakan protokol yang didukung. Setiap upaya koneksi dari alamat IP yang tidak cocok dengan aturan IP yang diizinkan pada ruang nama Azure Event Hubs 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

  • Fitur ini tidak didukung di tingkat dasar.
  • Mengaktifkan aturan firewall untuk kumpulan nama Pusat Aktivitas memblokir permintaan masuk secara default, kecuali permintaan berasal dari layanan yang beroperasi dari alamat IP publik yang diizinkan. Permintaan yang diblokir termasuk permintaan dari layanan Azure lainnya, dari portal Azure, dari layanan pengelogan dan metrik, dan sebagainya. Sebagai pengecualian, Anda dapat mengizinkan akses ke sumber Pusat Aktivitas dari layanan tepercaya tertentu bahkan ketika pemfilteran IP diaktifkan. Untuk daftar layanan tepercaya, lihat Layanan Microsoft tepercaya.
  • 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).

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 Namespace Layanan Pusat Aktivitas. 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 Azure untuk membuat aturan firewall IP untuk namespace layanan Azure Event Hubs.

  1. Navigasikan ke namespace Pusat Aktivitas di portal Azure.

  2. Pilih Jaringan di bagian Pengaturan di menu sebelah kiri.

  3. Pada halaman Jaringan , untuk Akses jaringan publik, pilih Opsi jaringan yang dipilih untuk mengizinkan akses hanya dari alamat IP tertentu.

    Berikut adalah detail selengkapnya tentang opsi yang tersedia di halaman Akses jaringan publik:

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

    • 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, pusat aktivitas menerima koneksi dari alamat IP (menggunakan kunci akses). Pengaturan ini setara dengan aturan yang menerima rentang alamat IP 0.0.0.0/0.

  4. Untuk membatasi akses ke alamat IP tertentu, pilih Opsi jaringan yang dipilih, lalu ikuti langkah-langkah berikut:

    1. Di bagian Firewall, pilih opsi Tambahkan alamat IP klien Anda untuk memberikan IP klien Anda saat ini akses ke namespace.

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

      Penting

      Ketika layanan mulai mendukung koneksi IPv6 di masa mendatang dan klien secara otomatis beralih menggunakan IPv6, klien Anda akan berhenti jika Anda hanya memiliki alamat IPv4, bukan alamat IPv6. Oleh karena itu, kami sarankan Anda menambahkan alamat IPv6 ke daftar alamat IP yang diizinkan sekarang sehingga klien Anda tidak berhenti ketika layanan akhirnya beralih ke mendukung IPv6.

    3. Tentukan apakah Anda ingin membolehkan layanan Microsoft tepercaya melewati firewall ini. Lihat Layanan Microsoft tepercaya untuk rinciannya.

      Firewall section highlighted in the Public access tab of the Networking page.

  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 tepercaya untuk melewati firewall ini, layanan berikut dalam penyewa yang sama akan diberikan akses ke sumber daya Event Hubs.

Layanan tepercaya Skenario penggunaan yang didukung
Kisi Aktivitas Azure Mengizinkan Azure Event Grid untuk mengirim acara ke hub acara di namespace Event Hubs Anda. Anda juga perlu melakukan langkah-langkah berikut:
  • Aktifkan identitas yang ditetapkan sistem untuk topik atau domain
  • Tambahkan identitas ke peran Azure Event Hubs Data Sender di namespace Event Hubs
  • Kemudian, konfigurasikan langganan acara yang menggunakan hub acara sebagai titik akhir untuk menggunakan identitas yang ditetapkan sistem.

Untuk informasi selengkapnya, lihat Pengiriman acara dengan identitas terkelola

Azure Stream Analytics Mengizinkan tugas Azure Stream Analytics membaca data dari (input) atau menulis data ke hub acara (output) di namespace Hub Acara Anda.

Penting: Tugas Stream Analytics harus dikonfigurasi untuk menggunakan identitas terkelola untuk mengakses hub acara. Untuk informasi selengkapnya, lihat Menggunakan identitas terkelola untuk mengakses hub peristiwa dari pekerjaan Azure Stream Analytics (Pratinjau).

Azure IoT Hub Memungkinkan IoT Hub mengirim pesan ke hub peristiwa di namespace layanan Azure Event Hubs Anda. Anda juga perlu melakukan langkah-langkah berikut:
  • Aktifkan identitas yang ditetapkan sistem untuk hub IoT Anda
  • Tambahkan identitas ke peran Pengirim Data Azure Event Hubs di namespace Azure Event Hubs.
  • Kemudian, konfigurasikan IoT Hub yang menggunakan hub acara sebagai titik akhir kustom untuk menggunakan autentikasi berbasis identitas.
Azure API Management

Layanan Manajemen API memungkinkan Anda mengirim acara ke hub acara di namespace Hub Acara Anda.

Azure Monitor (Pengaturan Diagnostik dan Grup Aksi) Memungkinkan Azure Monitor mengirim informasi diagnostik ke hub acara di namespace layanan Pusat Aktivitas Anda. Azure Monitor dapat membaca dari hub acara dan juga menulis data ke hub acara.
Azure Synapse Memungkinkan Azure Synapse tersambung ke pusat aktivitas menggunakan Identitas Terkelola Ruang Kerja Synapse. Tambahkan peran Pengirim Data, Penerima, atau Pemilik Azure Event Hubs ke identitas di namespace Layanan Azure Event Hubs.
Azure Data Explorer Memungkinkan Azure Data Explorer menerima peristiwa dari pusat aktivitas menggunakan Identitas Terkelola kluster. Anda perlu melakukan langkah-langkah berikut:
  • Mengonfigurasi Identitas Terkelola di Azure Data Explorer
  • Berikan peran Penerima Data Azure Event Hubs ke identitas, di hub peristiwa.
 
Azure IoT Central

Memungkinkan IoT Central mengekspor data ke hub peristiwa di namespace Layanan Pusat Aktivitas Anda. Anda juga perlu melakukan langkah-langkah berikut:

Azure Health Data Services Memungkinkan konektor IoT Healthcare API untuk menyerap data perangkat medis dari namespace layanan Event Hubs Anda dan menyimpan data di layanan Fast Healthcare Interoperability Resources (FHIR®) yang dikonfigurasi. Konektor IoT harus dikonfigurasi untuk menggunakan identitas terkelola untuk mengakses hub peristiwa. Untuk informasi selengkapnya, lihat Mulai menggunakan konektor IoT - API Azure Healthcare.
Azure Digital Twins Memungkinkan Azure Digital Twins untuk keluarkan data ke hub peristiwa di namespace Layanan Azure Event Hubs Anda. Anda juga perlu melakukan langkah-langkah berikut:

  • Aktifkan identitas yang ditetapkan sistem untuk instans Azure Digital Twins Anda.
  • Tambahkan identitas ke peran Azure Event Hubs Data Sender di namespace Event Hubs.
  • 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 sumber daya Azure Event Hubs dari Azure Digital Twins, lihat Merutekan peristiwa Azure Digital Twins dan Membuat titik akhir di Azure Digital Twins.

Layanan tepercaya lainnya untuk Azure Event Hubs dapat ditemukan di bawah ini:

  • Azure Arc
  • Azure Kubernetes
  • Pembelajaran Mesin Azure
  • Microsoft Purview

Gunakan templat Azure Resource Manager

Penting

Fitur Firewall tidak didukung di tingkat dasar.

Templat Azure Resource Manager berikut ini memungkinkan penambahan aturan filter IP ke namespace layanan Azure Event Hubs yang sudah ada.

ipMask dalam template 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": "contosoehub1333",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.EventHub/namespaces",
            "apiVersion": "2022-01-01-preview",
            "name": "[parameters('namespace_name')]",
            "location": "East US",
            "sku": {
                "name": "Standard",
                "tier": "Standard",
                "capacity": 1
            },
            "properties": {
                "minimumTlsVersion": "1.2",
                "publicNetworkAccess": "Enabled",
                "disableLocalAuth": false,
                "zoneRedundant": true,
                "isAutoInflateEnabled": false,
                "maximumThroughputUnits": 0,
                "kafkaEnabled": true
            }
        },
        {
            "type": "Microsoft.EventHub/namespaces/authorizationrules",
            "apiVersion": "2022-01-01-preview",
            "name": "[concat(parameters('namespace_name'), '/RootManageSharedAccessKey')]",
            "location": "eastus",
            "dependsOn": [
                "[resourceId('Microsoft.EventHub/namespaces', parameters('namespace_name'))]"
            ],
            "properties": {
                "rights": [
                    "Listen",
                    "Manage",
                    "Send"
                ]
            }
        },
        {
            "type": "Microsoft.EventHub/namespaces/networkRuleSets",
            "apiVersion": "2022-01-01-preview",
            "name": "[concat(parameters('namespace_name'), '/default')]",
            "location": "East US",
            "dependsOn": [
                "[resourceId('Microsoft.EventHub/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"
                    },
                    {
                        "ipMask": "172.72.157.204",
                        "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 eventhubs namespace network-rule-set perintah tambahkan, daftar, perbarui, dan hapus untuk mengelola aturan firewall IP untuk namespace Azure Event Hubs.

Menggunakan Azure PowerShell

Set-AzEventHubNetworkRuleSet Gunakan cmdlet untuk menambahkan satu atau beberapa aturan firewall IP. Contoh dari artikel:

$ipRule1 = New-AzEventHubIPRuleConfig -IPMask 2.2.2.2 -Action Allow
$ipRule2 = New-AzEventHubIPRuleConfig -IPMask 3.3.3.3 -Action Allow
$virtualNetworkRule1 = New-AzEventHubVirtualNetworkRuleConfig -SubnetId '/subscriptions/subscriptionId/resourcegroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/default'
$networkRuleSet = Get-AzEventHubNetworkRuleSet -ResourceGroupName myResourceGroup -NamespaceName myNamespace
$networkRuleSet.IPRule += $ipRule1
$networkRuleSet.IPRule += $ipRule2
$networkRuleSet.VirtualNetworkRule += $virtualNetworkRule1
Set-AzEventHubNetworkRuleSet -ResourceGroupName myResourceGroup -NamespaceName myNamespace -IPRule $ipRule1,$ipRule2 -VirtualNetworkRule $virtualNetworkRule1,$virtualNetworkRule2,$virtualNetworkRule3

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 tolak tidak diberlakukan kecuali Anda mengatur filter IP atau aturan jaringan virtual. Artinya, jika Anda tidak memiliki filter IP atau aturan jaringan virtual, 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 jaringan virtual diberlakukan. Jika tindakan default diatur ke Allow, filter IP dan aturan jaringan virtual 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 Anda telah mengonfigurasi namespace layanan Anda menggunakan pratinjau 2021-01-01 dan sebelumnya dengan defaultAction diatur ke Deny, dan nol filter IP dan aturan jaringan virtual yang ditentukan, portal sebelumnya akan memeriksa Jaringan Yang Dipilih di halaman Jaringan namespace Layanan Anda. Sekarang, ia memeriksa opsi Semua jaringan.

Screenshot that shows the Public access page with the All networks option selected.

Langkah berikutnya

Untuk membatasi akses pada Azure Event Hubs ke jaringan virtual Azure, lihat tautan berikut ini: