Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menjelaskan cara mengaktifkan identitas layanan terkelola untuk topik sistem Azure Event Grid, topik kustom, dan domain. Ini juga menjelaskan cara menggunakan identitas terkelola untuk mengirimkan acara ke tujuan yang didukung, seperti antrean Bus Layanan dan topik, hub acara, dan akun penyimpanan.
Prasyarat
Tetapkan identitas yang ditetapkan sistem atau identitas yang ditetapkan pengguna ke topik sistem, topik kustom, atau domain.
- Untuk topik dan domain kustom, lihat Mengaktifkan identitas terkelola untuk topik dan domain kustom.
- Untuk topik sistem, lihat Mengaktifkan identitas terkelola untuk topik sistem.
Tambahkan identitas ke peran yang sesuai, seperti Pengirim Data Bus Layanan, pada tujuan, seperti antrean Bus Layanan. Untuk langkah-langkah mendetail, lihat Menambahkan identitas ke peran Azure di tujuan.
Nota
Saat ini, Anda tidak dapat mengirimkan event dengan menggunakan endpoint privat. Untuk informasi selengkapnya, lihat bagian Titik akhir privat di akhir artikel ini.
Buat langganan acara yang menggunakan identitas
Setelah Anda menyiapkan topik kustom Event Grid, topik sistem, atau domain dengan identitas terkelola dan menambahkan identitas ke peran yang sesuai di tujuan, Anda siap untuk membuat langganan yang menggunakan identitas.
Gunakan portal Azure
Saat Anda membuat langganan peristiwa, Anda akan melihat opsi untuk mengaktifkan identitas yang ditetapkan sistem atau yang ditetapkan pengguna untuk titik akhir pada bagian DETAIL TITIK AKHIR.
Contoh ini menunjukkan cara mengaktifkan identitas yang ditetapkan sistem saat membuat langganan peristiwa dengan antrean Bus Layanan sebagai tujuan.
Anda juga dapat mengaktifkan identitas yang ditetapkan sistem untuk dead-lettering pada tab Fitur Tambahan .
Aktifkan identitas terkelola pada langganan peristiwa setelah dibuat. Pada halaman Langganan Peristiwa untuk langganan peristiwa, beralihlah ke tab Fitur Tambahan untuk melihat opsi . Anda juga dapat mengaktifkan identitas untuk dead-lettering di halaman ini.
Jika Anda mengaktifkan identitas yang ditetapkan pengguna untuk topik tersebut, Anda akan melihat opsi identitas yang ditetapkan pengguna diaktifkan di daftar drop-down untuk Jenis Identitas Terkelola. Jika Anda memilih Pengguna yang Ditetapkan untuk Jenis Identitas Terkelola, Anda kemudian dapat memilih identitas yang ditetapkan pengguna yang ingin Anda gunakan untuk mengirimkan peristiwa.
Gunakan antrean Azure CLI - Bus Layanan
Di bagian ini, Anda belajar cara menggunakan Azure CLI untuk mengaktifkan identitas yang ditetapkan sistem agar dapat mengirimkan event ke antrean Bus Layanan. Identitas harus menjadi anggota peran Pengirim Data Azure Service Bus dan peran Kontributor Data Blob Penyimpanan pada akun penyimpanan yang digunakan untuk dead-lettering.
Tentukan variabel
subid="<AZURE SUBSCRIPTION ID>"
rg="<RESOURCE GROUP of EVENT GRID CUSTOM TOPIC>"
topicname="<EVENT GRID TOPIC NAME>"
# get the service bus queue resource id
queueid=$(az servicebus queue show --namespace-name <SERVICE BUS NAMESPACE NAME> --name <QUEUE NAME> --resource-group <RESOURCE GROUP NAME> --query id --output tsv)
sb_esname="<Specify a name for the event subscription>"
Membuat langganan peristiwa dengan menggunakan identitas terkelola untuk pengiriman
Perintah ini membuat langganan acara untuk topik kustom Event Grid dengan jenis titik akhir yang diatur ke antrean Bus Layanan.
az eventgrid event-subscription create \
--source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname \
--delivery-identity-endpoint-type servicebusqueue \
--delivery-identity systemassigned \
--delivery-identity-endpoint $queueid \
-n $sb_esname
Membuat langganan peristiwa dengan menggunakan identitas terkelola untuk pengiriman dan dead-lettering
Contoh perintah ini membuat langganan peristiwa untuk topik kustom Event Grid dengan jenis titik akhir yang diatur ke antrean Bus Layanan. Juga ditentukan bahwa Event Grid menggunakan identitas terkelola yang ditetapkan sistem untuk dead-lettering.
storageid=$(az storage account show --name demoStorage --resource-group gridResourceGroup --query id --output tsv)
deadletterendpoint="$storageid/blobServices/default/containers/<BLOB CONTAINER NAME>"
az eventgrid event-subscription create \
--source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname \
--delivery-identity-endpoint-type servicebusqueue \
--delivery-identity systemassigned \
--delivery-identity-endpoint $queueid \
--deadletter-identity-endpoint $deadletterendpoint \
--deadletter-identity systemassigned \
-n $sb_esname
Menggunakan Azure CLI - Event Hubs
Di bagian ini, Anda belajar cara menggunakan Azure CLI untuk mengaktifkan identitas yang diberikan sistem agar event dapat dikirim ke event hub. Identitas harus menjadi bagian dari peran Pengirim Data Azure Event Hubs. Akun tersebut juga harus menjadi anggota peran Storage Blob Data Contributor pada akun penyimpanan yang Anda gunakan untuk dead-lettering.
Tentukan variabel
subid="<AZURE SUBSCRIPTION ID>"
rg="<RESOURCE GROUP of EVENT GRID CUSTOM TOPIC>"
topicname="<EVENT GRID CUSTOM TOPIC NAME>"
hubid=$(az eventhubs eventhub show --name <EVENT HUB NAME> --namespace-name <NAMESPACE NAME> --resource-group <RESOURCE GROUP NAME> --query id --output tsv)
eh_esname="<SPECIFY EVENT SUBSCRIPTION NAME>"
Membuat langganan peristiwa dengan menggunakan identitas terkelola untuk pengiriman
Contoh perintah ini membuat langganan peristiwa untuk topik kustom Event Grid dengan jenis titik akhir yang diatur ke Event Hubs.
az eventgrid event-subscription create \
--source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname \
--delivery-identity-endpoint-type eventhub \
--delivery-identity systemassigned \
--delivery-identity-endpoint $hubid \
-n $eh_esname
Membuat langganan peristiwa dengan menggunakan identitas terkelola untuk pengiriman dan dead-lettering
Contoh perintah ini membuat langganan peristiwa untuk topik kustom Event Grid dengan jenis titik akhir yang diatur ke Event Hubs. Juga ditentukan bahwa identitas terkelola yang ditugaskan sistem menangani dead-lettering.
storageid=$(az storage account show --name demoStorage --resource-group gridResourceGroup --query id --output tsv)
deadletterendpoint="$storageid/blobServices/default/containers/<BLOB CONTAINER NAME>"
az eventgrid event-subscription create \
--source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname \
--delivery-identity-endpoint-type eventhub \
--delivery-identity systemassigned \
--delivery-identity-endpoint $hubid \
--deadletter-identity-endpoint $deadletterendpoint \
--deadletter-identity systemassigned \
-n $eh_esname
Menggunakan Azure CLI - Antrean Azure Storage
Di bagian ini, Anda belajar cara menggunakan Azure CLI untuk mengaktifkan identitas yang ditetapkan sistem agar dapat mengirimkan event ke antrean Azure Storage. Identitas harus menjadi anggota peran Pengirim Pesan Data Antrean Penyimpanan di akun penyimpanan. Akun tersebut juga harus menjadi anggota peran Storage Blob Data Contributor pada akun penyimpanan yang Anda gunakan untuk dead-lettering.
Tentukan variabel
subid="<AZURE SUBSCRIPTION ID>"
rg="<RESOURCE GROUP of EVENT GRID CUSTOM TOPIC>"
topicname="<EVENT GRID CUSTOM TOPIC NAME>"
# get the storage account resource id
storageid=$(az storage account show --name <STORAGE ACCOUNT NAME> --resource-group <RESOURCE GROUP NAME> --query id --output tsv)
# build the resource id for the queue
queueid="$storageid/queueservices/default/queues/<QUEUE NAME>"
sa_esname="<SPECIFY EVENT SUBSCRIPTION NAME>"
Membuat langganan peristiwa dengan menggunakan identitas terkelola untuk pengiriman
az eventgrid event-subscription create \
--source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname \
--delivery-identity-endpoint-type storagequeue \
--delivery-identity systemassigned \
--delivery-identity-endpoint $queueid \
-n $sa_esname
Membuat langganan peristiwa dengan menggunakan identitas terkelola untuk pengiriman dan dead-lettering
storageid=$(az storage account show --name demoStorage --resource-group gridResourceGroup --query id --output tsv)
deadletterendpoint="$storageid/blobServices/default/containers/<BLOB CONTAINER NAME>"
az eventgrid event-subscription create \
--source-resource-id /subscriptions/$subid/resourceGroups/$rg/providers/Microsoft.EventGrid/topics/$topicname \
--delivery-identity-endpoint-type storagequeue \
--delivery-identity systemassigned \
--delivery-identity-endpoint $queueid \
--deadletter-identity-endpoint $deadletterendpoint \
--deadletter-identity systemassigned \
-n $sa_esname
Titik akhir pribadi
Saat ini, Anda tidak dapat mengirimkan event dengan menggunakan endpoint privat. Artinya, tidak ada dukungan jika Anda memiliki persyaratan isolasi jaringan yang ketat di mana lalu lintas peristiwa yang Anda sampaikan tidak boleh meninggalkan ruang IP privat.
Namun, jika kebutuhan Anda membutuhkan cara aman untuk mengirim event dengan menggunakan saluran terenkripsi dan identitas pengirim yang diketahui (dalam hal ini, Event Grid) menggunakan ruang IP publik, Anda dapat mengirimkan event ke Event Hubs, Bus Layanan, atau Azure Storage service dengan menggunakan topik khusus Azure Event Grid atau domain dengan identitas terkelola seperti yang ditunjukkan dalam artikel ini. Anda kemudian dapat menggunakan tautan privat yang dikonfigurasi di Azure Functions atau webhook yang disebarkan di jaringan virtual Anda untuk menarik peristiwa. Lihat tutorial: Menghubungkan ke titik akhir privat dengan Azure Functions.
Dalam konfigurasi ini, lalu lintas melewati IP/internet publik dari Event Grid ke Event Hubs, Bus Layanan, atau Azure Storage, tetapi Anda dapat mengenkripsi saluran dan menggunakan identitas terkelola dari Event Grid. Jika Anda mengonfigurasi Azure Functions atau webhook yang disebarkan ke jaringan virtual Anda untuk menggunakan Azure Event Hubs, Bus Layanan, atau Azure Storage melalui tautan privat, bagian lalu lintas tersebut tetap berada dalam Azure.
Konten terkait
Untuk mempelajari tentang identitas terkelola, lihat apa itu identitas terkelola untuk sumber daya Azure.