Menggunakan identitas terkelola untuk mengakses Azure Cosmos DB dari pekerjaan Azure Stream Analytics

Azure Stream Analytics mendukung autentikasi identitas terkelola untuk output Azure Cosmos DB. Identitas terkelola menghilangkan batasan metode autentikasi berbasis pengguna, seperti kebutuhan untuk mengautentikasi ulang karena perubahan kata sandi atau kedaluwarsa token pengguna yang terjadi setiap 90 hari. Saat Anda menghapus kebutuhan untuk mengautentikasi secara manual, penerapan Analisis Aliran dapat sepenuhnya otomatis. 

Identitas terkelola adalah aplikasi terkelola yang terdaftar di ID Microsoft Entra yang mewakili pekerjaan Azure Stream Analytics tertentu. Aplikasi terkelola digunakan untuk mengautentikasi ke sumber daya yang ditargetkan. Untuk informasi selengkapnya tentang identitas terkelola untuk Azure Stream Analytics, lihat Identitas terkelola untuk Azure Stream Analytics.

Artikel ini memperlihatkan kepada Anda cara mengaktifkan identitas terkelola yang ditetapkan sistem untuk output Azure Cosmos DB dari pekerjaan Azure Stream Analytics melalui portal Azure. Sebelum dapat mengaktifkan identitas terkelola yang ditetapkan sistem, Anda harus terlebih dahulu memiliki pekerjaan Azure Stream Analytics dan sumber daya Azure Cosmos DB.

Membuat identitas terkelola

Pertama, Anda membuat identitas terkelola untuk pekerjaan Azure Stream Analytics Anda. 

  1. Di portal Microsoft Azure, buka pekerjaan Azure Stream Analytics Anda. 

  2. Dari menu navigasi kiri, pilih Identitas Terkelola yang terletak di bawah Konfigurasikan. Lalu, centang kotak di samping Gunakan Identitas Terkelola yang ditetapkan sistem dan pilih Simpan.

    System assigned managed identity

  3. Perwakilan layanan untuk identitas pekerjaan Azure Stream Analytics dibuat di ID Microsoft Entra. Siklus hidup identitas yang baru dibuat dikelola oleh Azure. Saat pekerjaan Azure Stream Analytics dihapus, identitas terkait (yaitu, perwakilan layanan) secara otomatis dihapus oleh Microsoft Azure. 

    Saat Anda menyimpan konfigurasi, ID Objek (OID) perwakilan layanan tercantum sebagai ID Utama seperti yang ditunjukkan di bawah ini:

    Principal ID

    Perwakilan layanan memiliki nama yang sama dengan tugas Stream Analytics. Misalnya, jika nama pekerjaan Anda adalah MyASAJob, nama perwakilan layanan juga MyASAJob. 

Memberikan izin tugas Azure Stream Analytics untuk mengakses akun Azure Cosmos DB

Agar pekerjaan Azure Stream Analytics mengakses Azure Cosmos DB Anda menggunakan identitas terkelola, perwakilan layanan yang Anda buat harus memiliki izin khusus ke akun Azure Cosmos DB Anda. Dalam langkah ini, Anda dapat menetapkan peran ke identitas terkelola yang ditetapkan sistem pekerjaan analisis aliran Anda. Azure Cosmos DB memiliki beberapa peran bawaan yang dapat Anda tetapkan ke identitas terkelola. Untuk solusi ini, Anda akan menggunakan peran berikut:

Peran bawaan
Kontributor Data Bawaan Cosmos DB

Penting

Kontrol akses berbasis peran (RBAC) bawaan sarana data Azure Cosmos DB tidak diekspos melalui Portal Microsoft Azure. Untuk menetapkan peran Kontributor Data Bawaan Cosmos DB, Anda harus memberikan izin melalui Azure PowerShell. Untuk informasi selengkapnya tentang kontrol akses berbasis peran dengan ID Microsoft Entra untuk akun Azure Cosmos DB Anda, silakan lihat mengonfigurasi kontrol akses berbasis peran dengan ID Microsoft Entra untuk dokumentasi akun Azure Cosmos DB Anda.

Perintah berikut dapat digunakan untuk mengautentikasi pekerjaan ASA Anda dengan Azure Cosmos DB. $accountName dan $resourceGroupName adalah untuk akun Azure Cosmos DB Anda, dan $principalId adalah nilai yang diperoleh pada langkah sebelumnya, di tab Identitas pekerjaan ASA Anda. Anda harus memiliki akses "Kontributor" ke akun Azure Cosmos DB Anda agar perintah ini berfungsi dengan baik.

New-AzCosmosDBSqlRoleAssignment -AccountName $accountName -ResourceGroupName $resourceGroupName -RoleDefinitionId '00000000-0000-0000-0000-000000000002' -Scope "/" -PrincipalId $principalId

Catatan

Karena replikasi global atau latensi penembolokan, dapat terjadi keterlambatan ketika izin dicabut atau diberikan. Perubahan harus tercermin dalam waktu 10 menit. Meskipun koneksi pengujian dapat lulus pada awalnya, pekerjaan mungkin gagal ketika dimulai sebelum izin sepenuhnya disebarluaskan.

Penting

Jika akun CosmosDB tidak dikonfigurasi untuk menerima koneksi dari Semua jaringan, Anda harus memilih Terima koneksi dari dalam pusat data Azure publik.

Menambahkan Azure Cosmos DB sebagai output

Setelah identitas terkelola dikonfigurasi, Anda siap untuk menambahkan sumber daya Azure Cosmos DB sebagai output ke pekerjaan Azure Stream Analytics Anda. 

  1. Buka tugas Stream Analytics Anda dan arahkan ke halaman Output di bawah Topologi Pekerjaan.

  2. Pilih Tambahkan > Azure Cosmos DB. Di jendela properti output, cari dan pilih akun Azure Cosmos DB Anda dan pilih Identitas Terkelola: Sistem yang ditetapkan dari menu drop-down Mode autentikasi.

  3. Isi properti lainnya dan pilih Simpan.

Langkah berikutnya