Memberikan identitas terkelola akses ke tujuan Event Grid

Bagian ini menjelaskan cara menambahkan identitas untuk topik sistem, topik kustom, atau domain Anda ke peran Azure.

Prasyarat

Tetapkan identitas terkelola yang ditetapkan sistem menggunakan instruksi dari artikel berikut:

Tujuan yang didukung dan peran Azure

Setelah Anda mengaktifkan identitas untuk topik atau domain kustom Event Grid, Azure secara otomatis membuat identitas di ID Microsoft Entra. Tambahkan identitas ini ke peran Azure yang sesuai sehingga topik atau domain kustom dapat meneruskan peristiwa ke tujuan yang didukung. Misalnya, tambahkan identitas ke peran Pengirim Data Azure Event Hubs untuk namespace Azure Event Hubs sehingga topik kustom Event Grid dapat meneruskan peristiwa ke hub peristiwa di namespace tersebut.

Saat ini, Azure Event Grid mendukung topik atau domain kustom yang dikonfigurasi dengan identitas terkelola yang ditetapkan sistem untuk meneruskan peristiwa ke tujuan berikut. Tabel ini juga memberi Anda peran yang harus memiliki identitas sehingga topik kustom dapat meneruskan peristiwa.

Tujuan Peran Azure
Antrean dan topik Azure Service Bus Azure Service Bus Data Sender
Azure Event Hubs Azure Service Bus Data Sender
Azure Blob Storage Data blob penyimpanan kontributor
Azure Queue storage Storage Queue Data Message Sender

Menggunakan portal Azure

Anda dapat menggunakan portal Microsoft Azure untuk menetapkan topik kustom atau identitas domain ke peran yang sesuai sehingga topik atau domain kustom dapat meneruskan peristiwa ke tujuan.

Contoh berikut menambahkan identitas terkelola untuk topik kustom Event Grid bernama msitesttopic ke peran Pengirim Data Azure Bus Layanan untuk namespace Bus Layanan yang berisi antrean atau sumber daya topik. Saat Anda menambahkan peran di tingkat namespace, topik kustom Event Grid dapat meneruskan peristiwa ke semua entitas dalam namespace layanan.

  1. Buka namespace Service Bus di portal Microsoft Azure.

  2. Pilih Kontrol akses di panel kiri.

  3. Pilih Tambahkan di bagian Tambahkan penetapan peran (Pratinjau).

    Image showing the selection of Add role assignment (Preview) menu

  4. Pada halaman Tambahkan penetapan peran, pilih Pengirim Data Azure Service Bus, dan pilih Berikutnya.

    Image showing the selection of the Azure Service Bus Data Sender role

  5. Di tab Anggota, ikuti langkah-langkah berikut:

    1. Pilih Gunakan, grup, atau perwakilan layanan, lalu klik + Pilih anggota. Opsi Identitas terkelola belum mendukung identitas Event Grid.

    2. Di jendela Pilih anggota, telusuri dan pilih perwakilan layanan dengan nama yang sama dengan topik kustom Anda. Dalam contoh berikut, itu adalah spcustomtopic0728.

      Image showing the selection of the User, group, or service principal option

    3. Di jendela Pilih anggota, klik Pilih.

      Image showing the selection of the Managed identity option

  6. Sekarang, kembali ke tab Anggota, pilih Berikutnya.

    Image showing the selection of the Next button on the Members page

  7. Pada halaman Tinjau + tetapkan, pilih Tinjau + tetapkan setelah meninjau setelan.

Langkah-langkah ini mirip dengan yang digunakan untuk menambahkan identitas ke peran lain yang disebutkan dalam tabel.

Menggunakan Azure CLI

Contoh di bagian ini menunjukkan kepada Anda cara menggunakan Azure CLI untuk menambahkan identitas ke peran Azure. Perintah sampel adalah untuk topik kustom Event Grid. Perintah untuk domain Event Grid serupa.

Dapatkan ID prinsipal untuk identitas sistem topik kustom

Pertama, dapatkan ID utama identitas yang dikelola sistem topik kustom dan tetapkan identitas ke peran yang sesuai.

topic_pid=$(az ad sp list --display-name "$<TOPIC NAME>" --query [].objectId -o tsv)

Membuat penetapan peran untuk hub peristiwa di berbagai lingkup

Contoh CLI berikut ini menunjukkan cara menambahkan identitas topik kustom ke peran Azure Event Hubs Data Sender di tingkat namespace atau di tingkat hub peristiwa. Jika Anda membuat penetapan peran di tingkat namespace, topik kustom dapat meneruskan peristiwa ke semua hub peristiwa di namespace tersebut. Jika Anda membuat penetapan peran di tingkat hub peristiwa, topik kustom hanya dapat meneruskan peristiwa ke hub peristiwa tertentu tersebut.

role="Azure Event Hubs Data Sender" 
namespaceresourceid=$(az eventhubs namespace show -n $<EVENT HUBS NAMESPACE NAME> -g <RESOURCE GROUP of EVENT HUB> --query "{I:id}" -o tsv) 
eventhubresourceid=$(az eventhubs eventhub show -n <EVENT HUB NAME> --namespace-name <EVENT HUBS NAMESPACE NAME> -g <RESOURCE GROUP of EVENT HUB> --query "{I:id}" -o tsv) 

# create role assignment for the whole namespace 
az role assignment create --role "$role" --assignee "$topic_pid" --scope "$namespaceresourceid" 

# create role assignment scoped to just one event hub inside the namespace 
az role assignment create --role "$role" --assignee "$topic_pid" --scope "$eventhubresourceid" 

Membuat penetapan peran untuk topik Service Bus di berbagai lingkup

Contoh CLI berikut menunjukkan cara menambahkan identitas topik kustom Event Grid ke peran Pengirim Data Azure Bus Layanan di tingkat namespace layanan atau di tingkat topik Bus Layanan. Jika Anda membuat penetapan peran di tingkat namespace layanan, topik Event Grid dapat meneruskan peristiwa ke semua entitas (Bus Layanan antrean atau topik) dalam namespace tersebut. Jika Anda membuat penetapan peran di tingkat antrean atau topik Bus Layanan, topik kustom Event Grid hanya dapat meneruskan peristiwa ke antrean atau topik Bus Layanan tertentu tersebut.

role="Azure Service Bus Data Sender" 
namespaceresourceid=$(az servicebus namespace show -n $RG\SB -g "$RG" --query "{I:id}" -o tsv 
sbustopicresourceid=$(az servicebus topic show -n topic1 --namespace-name $RG\SB -g "$RG" --query "{I:id}" -o tsv) 

# create role assignment for the whole namespace 
az role assignment create --role "$role" --assignee "$topic_pid" --scope "$namespaceresourceid" 

# create role assignment scoped to just one hub inside the namespace 
az role assignment create --role "$role" --assignee "$topic_pid" --scope "$sbustopicresourceid" 

Langkah berikutnya

Setelah Anda menetapkan identitas yang ditetapkan sistem ke topik sistem, topik kustom, atau domain, dan menambahkan identitas ke peran yang sesuai pada tujuan, lihat Menyampaikan peristiwa menggunakan identitas terkelola dalam menyampaikan peristiwa ke tujuan menggunakan identitas.