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.
Identitas terkelola untuk sumber daya Azure adalah fitur lintas Azure yang memungkinkan Anda membuat identitas aman yang terkait dengan penyebaran di mana kode aplikasi Anda berjalan. Anda kemudian dapat mengaitkan identitas tersebut dengan peran kontrol akses yang memberikan izin kustom untuk mengakses sumber daya Azure tertentu yang dibutuhkan aplikasi Anda.
Dengan identitas terkelola, platform Azure mengelola identitas runtime ini. Anda tidak perlu menyimpan dan melindungi kunci akses dalam kode atau konfigurasi aplikasi Anda, baik untuk identitas itu sendiri, ataupun untuk sumber daya yang perlu Anda akses. Aplikasi klien Relay yang berjalan di dalam aplikasi Azure App Service atau di komputer virtual dengan entitas terkelola yang diaktifkan untuk dukungan sumber daya Azure tidak perlu menghandel aturan dan kunci SAS, atau token akses lainnya. Aplikasi klien hanya memerlukan alamat titik akhir dari namespace Relay. Saat aplikasi terhubung, Relay akan mengikat konteks entitas terkelola ke klien dalam operasi yang ditampilkan dalam contoh nanti di artikel ini. Setelah dikaitkan dengan identitas terkelola, klien Relay Anda dapat melakukan semua operasi yang diotorisasi. Otorisasi diberikan dengan mengaitkan entitas terkelola dengan peran Relay.
Catatan
Fitur ini umumnya tersedia di semua wilayah termasuk Microsoft Azure yang dioperasikan oleh 21Vianet.
Gambaran Umum
Jika perwakilan keamanan (pengguna, grup, aplikasi) berupaya mengakses entitas Relay, permintaan harus diotorisasi. Dengan ID Microsoft Entra, akses ke sumber daya adalah proses dua langkah.
- Pertama, identitas perwakilan keamanan diautentikasi, dan token OAuth 2.0 ditampilkan. Nama sumber daya untuk meminta token adalah
https://relay.azure.net
. Jika aplikasi berjalan dalam entitas Azure seperti Azure VM, set skala komputer virtual, atau aplikasi Azure Function, aplikasi tersebut dapat menggunakan identitas terkelola untuk mengakses sumber daya. - Selanjutnya, token diteruskan sebagai bagian dari permintaan ke layanan Relay, untukmengotorisasi akses ke sumber daya yang ditentukan (koneksi hibrid, relai WCF). Microsoft Entra mengotorisasi hak akses ke sumber daya aman melalui kontrol akses berbasis peran Azure (Azure RBAC). Azure Relay menentukan serangkaian peran bawaan Azure yang mencakup serangkaian izin umum yang digunakan untuk mengakses entitas Relay. Anda juga dapat menentukan peran kustom untuk mengakses data. Untuk daftar peran bawaan yang didukung oleh Azure Relay, lihat Peran bawaan Azure untuk Azure Relay. Aplikasi asli dan aplikasi web yang membuat permintaan ke Relay juga dapat diotorisasi dengan ID Microsoft Entra.
Peran bawaan Azure untuk Azure Relay
Untuk Azure Relay, pengelolaan namespace layanan dan semua sumber daya terkait melalui portal Azure dan API pengelolaan sumber daya Azure sudah dilindungi menggunakan model Azure RBAC. Azure dilengkapi dengan peran bawaan Azure untuk mengotorisasi akses ke namespace layanan Azure Relay:
Peran | Deskripsi |
---|---|
Pemilik Azure Relay | Gunakan peran ini untuk memberikan akses penuh ke sumber daya Azure Relay. |
Listener Azure Relay | Gunakan peran ini untuk memberikan akses dengar dan baca entitas ke sumber daya Azure Relay. |
Pengirim Azure Relay | Gunakan peran ini untuk memberikan akses kirim dan baca entitas ke sumber daya Azure Relay. |
Cakupan sumber daya
Sebelum Anda menetapkan peran Azure ke perwakilan keamanan, tentukan cakupan akses yang harus dimiliki perwakilan keamanan. Praktik terbaik memerintahkan bahwa yang terbaik selalu hanya memberikan cakupan sesempit mungkin.
Daftar berikut menjelaskan tingkat di mana Anda dapat mencakup akses ke sumber daya Azure Relay, dimulai dengan cakupan tersempit:
- Entitas Relay: Penetapan peran berlaku untuk entitas Relay tertentu seperti koneksi hibrid atau relai WCF.
- Namespace layanan Relay: Penetapan peran berlaku untuk semua entitas Relay dengan namespace layanan.
- Grup sumber daya: Penetapan peran berlaku untuk semua sumber daya Relay dengan grup sumber daya.
- Langganan: Penetapan peran berlaku untuk semua sumber daya Relay di semua grup sumber daya dalam langganan.
Catatan
Ingatlah bahwa penetapan peran Azure mungkin membutuhkan waktu hingga lima menit untuk disebarluaskan. Untuk informasi selengkapnya tentang bagaimana peran bawaan ditentukan, lihat Memahami definisi peran. Untuk informasi tentang membuat peran kustom Azure, lihat Peran kustom Azure.
Aktifkan identitas terkelola
Pertama, aktifkan identitas terkelola untuk sumber daya Azure yang perlu mengakses entitas Azure Relay (koneksi hibrid atau relai WCF). Misalnya, jika aplikasi klien Relay Anda berjalan di Komputer Virtual Azure, aktifkan identitas terkelola untuk Komputer Virtual dengan mengikuti petunjuk dari artikel Mengonfigurasi identitas terkelola untuk Komputer Virtual Azure. Setelah Anda mengaktifkan pengaturan ini, identitas layanan terkelola baru dibuat di ID Microsoft Entra Anda.
Untuk daftar layanan yang mendukung identitas terkelola, lihat Layanan yang mendukung identitas terkelola untuk sumber daya Azure.
Menetapkan peran Azure Relay ke identitas yang dikelola
Setelah mengaktifkan identitas terkelola, tetapkan salah satu peran Azure Relay (Pemilik Azure Relay, Pendengar Azure Relay, atau Pengirim Azure Relay) ke identitas pada cakupan yang sesuai. Saat peran Azure ditetapkan ke identitas terkelola, identitas terkelola diberikan akses ke entitas Relay pada cakupan yang sesuai.
Bagian berikut ini menggunakan aplikasi sederhana yang berjalan di bagian identitas terkelola pada instans Komputer Virtual Azure dan mengakses sumber daya Relay.
Sampel aplikasi pada Komputer Virtual yang mengakses entitas Relay
Unduh Aplikasi konsol sampel Koneksi Hibrid ke komputer Anda dari GitHub.
Membuat Komputer Virtual Azure. Untuk sampel ini, gunakan gambar Windows 10.
Aktifkan identitas yang ditetapkan sistem atau identitas yang ditetapkan pengguna untuk Komputer Virtual Azure. Untuk petunjuknya, lihat Mengaktifkan identitas untuk Komputer Virtual.
Tetapkan salah satu peran Relay ke identitas layanan terkelola pada cakupan yang diinginkan (Entitas relai, namespace Relay, grup sumber daya, langganan). Untuk langkah-langkah mendetail, lihat Menetapkan peran Azure menggunakan portal Azure.
Bangun aplikasi konsol secara lokal di komputer lokal Anda sesuai petunjuk dari dokumen README.
Salin file yang dapat dieksekusi di bawah <folder jalur> lokal\RoleBasedAccessControl\bin\Debug ke VM. Anda dapat menggunakan RDP untuk terhubung ke Komputer Virtual Azure Anda. Untuk informasi lebih lanjut, lihat Cara menyambungkan dan masuk ke komputer virtual Azure yang menjalankan Windows.
Jalankan RoleBasedAccessControl.exe pada Komputer Virtual Azure sesuai instruksi dari dokumen README.
Catatan
Ikuti langkah-langkah yang sama untuk menjalankan aplikasi konsol untuk WCF Relays.
Kode yang disoroti dari sampel
Berikut adalah kode dari sampel yang menunjukkan cara menggunakan autentikasi Microsoft Entra untuk menyambungkan ke layanan Azure Relay.
Buat objek TokenProvider dengan menggunakan metode
TokenProvider.CreateManagedIdentityTokenProvider
.- Jika Anda menggunakan identitas terkelola yang ditetapkan sistem:
TokenProvider.CreateManagedIdentityTokenProvider();
- Jika Anda menggunakan identitas terkelola yang ditetapkan pengguna, dapatkan ID Klien untuk identitas yang ditetapkan pengguna dari halaman Identitas Terkelola di portal Azure. Untuk petunjuknya, lihat Daftar identitas terkelola yang ditetapkan pengguna.
var managedCredential = new ManagedIdentityCredential(clientId); tokenProvider = TokenProvider.CreateManagedIdentityTokenProvider(managedCredential);
- Jika Anda menggunakan identitas terkelola yang ditetapkan sistem:
Buat objek HybridConnectionListener atau HybridConnectionClient dengan meneruskan URI koneksi hibrid dan penyedia token yang Anda buat di langkah sebelumnya.
Pendengar:
var listener = new HybridConnectionListener(hybridConnectionUri, tokenProvider);
Pengirim:
var sender = new HybridConnectionClient(hybridConnectionUri, tokenProvider);
Sampel
- Koneksi Hibrid: .NET, Java, JavaScript
- WCF Relay: .NET
Langkah berikutnya
Untuk mempelajari selengkapnya tentang Azure Relay, lihat artikel berikut ini.