Tutorial: Menggunakan identitas terkelola yang ditetapkan sistem komputer virtual Windows untuk mengakses Azure Key Vault

Identitas terkelola untuk sumber daya Azure adalah fitur ID Microsoft Entra. Setiap layanan Azure yang mendukung identitas terkelola untuk sumber daya Azure tunduk pada garis waktu mereka masing-masing. Pastikan Anda meninjau status ketersediaan identitas terkelola untuk sumber daya dan masalah yang diketahui sebelum Anda memulai.

Tutorial ini menunjukkan kepada Anda bagaimana komputer virtual Windows (komputer virtual) dapat menggunakan identitas terkelola yang ditetapkan sistem untuk mengakses Azure Key Vault. Key Vault memungkinkan aplikasi klien Anda menggunakan rahasia untuk mengakses sumber daya yang tidak diamankan oleh ID Microsoft Entra. Identitas terkelola dikelola secara otomatis oleh Azure. Mereka memungkinkan Anda mengautentikasi ke layanan yang mendukung autentikasi Microsoft Entra, tanpa menyertakan informasi autentikasi dalam kode Anda.

Anda akan mempelajari cara untuk:

  • Memberikan akses komputer virtual Anda ke rahasia yang disimpan di Key Vault
  • Mendapatkan token akses menggunakan identitas komputer virtual dan menggunakannya untuk mengambil rahasia dari Key Vault

Prasyarat

Membuat Key Vault

Tip

Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.

Bagian ini menunjukkan cara memberi komputer virtual Anda akses ke rahasia yang disimpan di Key Vault. Saat Anda menggunakan identitas terkelola untuk sumber daya Azure, kode Anda bisa mendapatkan token akses untuk mengautentikasi ke sumber daya yang mendukung autentikasi Microsoft Entra.  Namun, tidak semua layanan Azure mendukung autentikasi Microsoft Entra. Untuk menggunakan identitas terkelola pada sumber daya Azure dengan layanan tersebut, simpan kredensial layanan di Azure Key Vault, dan gunakan identitas terkelola komputer virtual untuk mengakses Key Vault guna mengambil kredensial.

Pertama, kita perlu membuat Key Vault dan memberikan akses identitas terkelola yang ditetapkan sistem komputer virtual kita ke Key Vault.

  1. Masuk ke portal Azure.

  2. Di bagian atas bilah navigasi kiri, pilih Buat sumber daya.

  3. Di kotak Telusuri Marketplace ketikkan Key Vault dan tekan Enter.

  4. Pilih Key Vault dari hasil.

  5. Pilih Buat.

  6. Berikan Nama untuk brankas kunci baru.

    Buat layar Key vault.

  7. Isi semua informasi yang diperlukan. Pastikan Anda memilih langganan dan grup sumber daya yang Anda gunakan untuk tutorial ini.

  8. Pilih Tinjau+ buat

  9. Pilih Buat

Buat rahasia

Selanjutnya, tambahkan rahasia ke Key Vault, sehingga Anda dapat mengambilnya nanti menggunakan kode yang berjalan di komputer virtual Anda. Untuk tutorial ini, kita menggunakan PowerShell tetapi konsepnya sama berlaku untuk setiap kode apa pun yang dijalankan di mesin virtual ini.

  1. Arahkan ke Key Vault yang baru Anda buat.

  2. Pilih Rahasia, dan pilih Tambahkan.

  3. Pilih Buat/Impor

  4. Pada layar Buat rahasia dari opsi Unggah, pilih Manual.

  5. Masukkan nama dan nilai untuk rahasia tersebut.  Nilainya bisa dalam bentuk apa pun yang Anda inginkan. 

  6. Biarkan tanggal aktivasi dan tanggal kedaluwarsa jelas, dan biarkan opsi Diaktifkan diatur ke Ya

  7. Pilih Buat untuk membuat rahasia.

    Cuplikan layar memperlihatkan cara membuat rahasia.

Memberikan akses

Identitas terkelola yang digunakan oleh mesin virtual harus diberi akses untuk membaca rahasia yang akan disimpan di Key Vault.

  1. Arahkan ke Key Vault yang baru Anda buat

  2. Pilih Kebijakan Akses dari menu di sebelah kiri.

  3. Pilih Tambahkan Kebijakan Akses

    Cuplikan layar memperlihatkan layar Kebijakan akses brankas kunci.

  4. Di bagian Tambahkan kebijakan akses, di bagian Konfigurasikan dari templat (opsional), pilih Manajemen Rahasia dari menu pull-down.

  5. Pilih Pilih Utama, dan di bidang pencarian masukkan nama komputer virtual yang Anda buat sebelumnya.  Pilih komputer virtual dalam daftar hasil dan pilih Pilih.

  6. Pilih Tambahkan

  7. Pilih Simpan.

Mengakses data

Bagian ini menunjukkan cara mendapatkan token akses menggunakan identitas komputer virtual dan menggunakannya untuk mengambil rahasia dari Key Vault. Jika Anda belum menginstal PowerShell 4.3.1 atau yang lebih baru, Anda harus mengunduh dan menginstal versi terbaru.

Pertama, kami menggunakan identitas terkelola yang ditetapkan sistem VM untuk mendapatkan token akses untuk mengautentikasi ke Key Vault:

  1. Pada portal, navigasikan ke Virtual Machines dan buka mesin virtual Windows Anda dan pada Gambaran Umum, pilih Sambungkan.
  2. Masukkan Nama Pengguna dan Kata Sandi yang Anda tambahkan saat membuat komputer virtual Windows.  
  3. Sekarang, setelah Anda membuat Koneksi Desktop Jauh dengan mesin virtual, buka PowerShell di sesi jarak jauh.  
  4. Di PowerShell, panggil permintaan web pada penyewa guna mendapatkan token untuk host lokal di port khusus untuk komputer virtual.  

Permintaan PowerShell:

$Response = Invoke-RestMethod -Uri 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fvault.azure.net' -Method GET -Headers @{Metadata="true"} 

Anda dapat melihat seperti apa responsnya di bawah ini:

Cuplikan layar memperlihatkan permintaan dengan respons token.

Selanjutnya, ekstrak token akses dari respons tersebut.  

   $KeyVaultToken = $Response.access_token

Terakhir, gunakan perintah Invoke-WebRequest PowerShell untuk mengambil rahasia yang Anda buat sebelumnya di Key Vault, meneruskan token akses di header Otorisasi.  Anda akan memerlukan URL Key Vault, yang ada di bagian Penting dari halaman Gambaran Umum Key Vault.  

Invoke-RestMethod -Uri https://<your-key-vault-URL>/secrets/<secret-name>?api-version=2016-10-01 -Method GET -Headers @{Authorization="Bearer $KeyVaultToken"}

Respons akan terlihat seperti ini:

  value       id                                                                                    attributes
  -----       --                                                                                    ----------
  'My Secret' https://mi-lab-vault.vault.azure.net/secrets/mi-test/50644e90b13249b584c44b9f712f2e51 @{enabled=True; created=16…

Setelah mengambil rahasia dari Key Vault, Anda dapat menggunakannya untuk mengautentikasi ke layanan yang memerlukan nama dan kata sandi.

Membersihkan sumber daya

Saat Anda ingin membersihkan sumber daya, masuk ke portal Azure, pilih Grup sumber daya, temukan, dan pilih grup sumber daya yang dibuat dalam proses tutorial ini (seperti mi-test), lalu gunakan perintah Hapus grup sumber daya.

Atau Anda juga dapat membersihkan sumber daya melalui PowerShell atau CLI

Langkah berikutnya

Di tutorial ini, Anda mempelajari cara menggunakan identitas terkelola yang ditetapkan sistem komputer virtual Windows untuk mengakses Azure Key Vault. Untuk mempelajari lebih lanjut tentang Azure Key Vault, lihat: