Mengizinkan akses ke namespace Azure Event Hubs dari jaringan virtual tertentu

Integrasi Azure Event Hubs dengan titik akhir layanan Virtual Network (VNet) memungkinkan akses aman ke kemampuan olah pesan dari beban kerja seperti komputer virtual yang terikat ke jaringan virtual, dengan jalur lalu lintas jaringan diamankan di kedua ujungnya.

Setelah dikonfigurasi untuk terikat ke paling sedikit satu titik akhir layanan subnet jaringan virtual, namespace Pusat Aktivitas masing-masing tidak lagi menerima lalu lintas dari mana saja kecuali hanya dari subnet resmi di jaringan virtual. Dari perspektif jaringan virtual, mengikat namespace Pusat Aktivitas ke titik akhir layanan mengonfigurasi terowongan jaringan yang terisolasi dari subnet jaringan virtual ke layanan olahpesan.

Hasilnya adalah hubungan pribadi dan terisolasi antara beban kerja yang terikat ke subnet dan namespace Pusat Aktivitas masing-masing, meskipun alamat jaringan yang dapat diamati dari titik akhir layanan olahpesan berada dalam rentang IP publik. Ada pengecualian untuk perilaku tersebut. Mengaktifkan titik akhir layanan, secara default, memungkinkan denyall aturan dalam firewall IP terkait dengan jaringan virtual. Anda dapat menambahkan alamat IP tertentu di firewall IP untuk mengaktifkan akses ke titik akhir publik Azure Event Hubs.

Poin penting

  • Fitur ini tidak didukung di tingkat dasar.
  • Mengaktifkan jaringan virtual untuk namespace Pusat Aktivitas memblokir permintaan masuk secara default, kecuali permintaan berasal dari layanan yang beroperasi dari jaringan virtual yang diizinkan. Permintaan yang diblokir termasuk yang berasal dari layanan Azure lainnya, dari portal Microsoft Azure, dari layanan pembuatan log dan metrik, dan sebagainya. Sebagai pengecualian, Anda dapat mengizinkan akses ke sumber Pusat Aktivitas dari layanan tepercaya tertentu bahkan ketika jaringan virtual diaktifkan. Untuk daftar layanan tepercaya, lihat Layanan tepercaya.
  • Tentukan paling sedikit satu aturan IP atau aturan jaringan virtual untuk namespace untuk mengizinkan 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).

Skenario keamanan tingkat lanjut diaktifkan oleh integrasi VNet

Solusi yang memerlukan keamanan yang ketat dan kompartemen, dan di mana subnet jaringan virtual memberikan segmentasi antara layanan kompartemen, masih memerlukan jalur komunikasi antara layanan yang berada di kompartemen tersebut.

Setiap rute IP langsung antara kompartemen, termasuk yang membawa HTTPS melalui TCP/IP, yang membawa risiko eksploitasi kerentanan dari lapisan jaringan di atas. Layanan olahpesan menyediakan jalur komunikasi yang terisolasi, di mana pesan bahkan ditulis ke disk saat mereka bertransisi antar pihak. Beban kerja dalam dua jaringan virtual berbeda yang keduanya terikat dengan instans Pusat Aktivitas yang sama dapat berkomunikasi secara efisien dan andal melalui pesan, sementara integritas batas isolasi jaringan masing-masing dipertahankan.

Hal ini berarti solusi cloud sensitif keamanan Anda tidak hanya mendapatkan akses ke kemampuan olahpesan asinkron terdepan di industri Azure dan dapat diskalakan, tetapi sekarang dapat menggunakan olahpesan untuk membuat jalur komunikasi antara kompartemen solusi aman yang secara inheren lebih aman dari yang dapat dicapai dengan mode komunikasi peer-to-peer, termasuk HTTPS dan protokol soket aman TLS lainnya.

Mengikat pusat aktivitas ke jaringan virtual

Aturan jaringan virtual adalah fitur keamanan firewall yang mengontrol apakah namespace Azure Event Hubs Anda menerima koneksi dari subnet jaringan virtual tertentu.

Mengikat namespace Pusat Aktivitas ke jaringan virtual adalah proses dua langkah. Pertama-tama Anda perlu membuat titik akhir layanan Jaringan Virtual pada subnet jaringan virtual dan mengaktifkannya untuk Microsoft.EventHub seperti yang dijelaskan dalam artikel ringkasan titik akhir layanan. Setelah Anda menambahkan titik akhir layanan, Anda mengikat namespace Pusat Aktivitas ke dalamnya dengan aturan jaringan virtual.

Aturan jaringan virtual adalah asosiasi namespace layanan Azure Event Hubs dengan subnet jaringan virtual. Meskipun ada aturan, semua beban kerja yang terikat ke subnet diberikan akses ke namespace Pusat Aktivitas. Pusat Aktivitas sendiri tidak pernah membuat koneksi keluar, tidak perlu mendapatkan akses, dan oleh karena itu tidak pernah diberikan akses ke subnet Anda dengan mengaktifkan aturan ini.

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 menentukan jaringan tempat akses diizinkan.

Mengonfigurasi jaringan yang dipilih untuk namespace yang ada

Bagian ini memperlihatkan kepada Anda cara menggunakan portal Microsoft Azure untuk menambahkan titik akhir layanan jaringan virtual. Untuk membatasi akses, Anda perlu mengintegrasikan titik akhir layanan jaringan virtual untuk namespace Event Hub ini.

  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, Anda dapat mengatur salah satu dari tiga opsi berikut. Pilih opsi Jaringan yang dipilih untuk mengizinkan akses hanya dari jaringan virtual 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 jaringan tertentu, pilih opsi Jaringan yang Dipilih di bagian atas halaman jika belum dipilih.

  5. Di bagian halaman Jaringan virtual, pilih +Tambahkan jaringan virtual yang ada*. Pilih + Buat jaringan virtual baru jika Anda ingin membuat VNet baru.

    Selection of Add existing virtual network menu item.

    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.

  6. Pilih jaringan virtual dari daftar jaringan virtual, lalu pilih subnet. Anda harus mengaktifkan titik akhir layanan sebelum menambahkan jaringan virtual ke daftar. Jika titik akhir layanan tidak diaktifkan, portal akan meminta Anda untuk mengaktifkannya.

    Image showing the selection of a subnet.

  7. Anda akan melihat pesan sukses berikut setelah titik akhir layanan untuk subnet yang diaktifkan untuk Microsoft.EventHub. Pilih Tambahkan di bagian bawah halaman untuk menambahkan jaringan.

    Image showing the selection of a subnet and enabling an endpoint.

    Catatan

    Jika Anda tidak dapat mengaktifkan titik akhir layanan, Anda dapat mengabaikan titik akhir layanan jaringan virtual yang hilang menggunakan templat Resource Manager. Fungsionalitas ini tidak tersedia di portal.

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

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

    Image showing the saving of virtual network.

    Catatan

    Untuk membatasi akses ke alamat atau rentang IP tertentu, lihat Mengizinkan akses dari alamat atau rentang IP 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
Azure Event Grid 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

Contoh templat Resource Manager sampel berikut menambahkan aturan jaringan virtual ke namespace Pusat Aktivitas yang ada. Untuk aturan jaringan, itu menentukan ID subnet dalam jaringan virtual.

ID adalah jalur Resource Manager yang sepenuhnya memenuhi syarat untuk subnet jaringan virtual. Misalnya, /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default untuk subnet default jaringan virtual.

Saat menambahkan aturan jaringan virtual atau firewall, tetapkan nilai defaultAction ke Deny .

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
      "eventhubNamespaceName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Event Hubs namespace"
        }
      },
      "virtualNetworkName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Rule"
        }
      },
      "subnetName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Sub Net"
        }
      },
      "location": {
        "type": "string",
        "metadata": {
          "description": "Location for Namespace"
        }
      }
    },
    "variables": {
      "namespaceNetworkRuleSetName": "[concat(parameters('eventhubNamespaceName'), concat('/', 'default'))]",
      "subNetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets/', parameters('virtualNetworkName'), parameters('subnetName'))]"
    },
    "resources": [
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[parameters('eventhubNamespaceName')]",
        "type": "Microsoft.EventHub/namespaces",
        "location": "[parameters('location')]",
        "sku": {
          "name": "Standard",
          "tier": "Standard"
        },
        "properties": { }
      },
      {
        "apiVersion": "2017-09-01",
        "name": "[parameters('virtualNetworkName')]",
        "location": "[parameters('location')]",
        "type": "Microsoft.Network/virtualNetworks",
        "properties": {
          "addressSpace": {
            "addressPrefixes": [
              "10.0.0.0/23"
            ]
          },
          "subnets": [
            {
              "name": "[parameters('subnetName')]",
              "properties": {
                "addressPrefix": "10.0.0.0/23",
                "serviceEndpoints": [
                  {
                    "service": "Microsoft.EventHub"
                  }
                ]
              }
            }
          ]
        }
      },
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[variables('namespaceNetworkRuleSetName')]",
        "type": "Microsoft.EventHub/namespaces/networkruleset",
        "dependsOn": [
          "[concat('Microsoft.EventHub/namespaces/', parameters('eventhubNamespaceName'))]"
        ],
        "properties": {
          "publicNetworkAccess": "Enabled",
          "defaultAction": "Deny",
          "virtualNetworkRules": 
          [
            {
              "subnet": {
                "id": "[variables('subNetId')]"
              },
              "ignoreMissingVnetServiceEndpoint": false
            }
          ],
          "ipRules":[],
          "trustedServiceAccessEnabled": false
        }
      }
    ],
    "outputs": { }
  }

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 jaringan virtual untuk namespace Bus Layanan.

Menggunakan Azure PowerShell

Gunakan perintah Azure PowerShell berikut untuk menambahkan, mencantumkan, menghapus, memperbarui, dan menghapus aturan jaringan untuk namespace Bus Layanan.

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 that shows the Public access page with the All networks option selected.

Langkah berikutnya

Untuk informasi selengkapnya tentang jaringan virtual, lihat tautan berikut: