Tutorial: Gunakan identitas terkelola yang ditetapkan sistem komputer virtual Linux 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 Linux (VM) dapat menggunakan identitas terkelola yang ditetapkan sistem untuk mengakses Azure Key Vault. Key Vault memungkinkan aplikasi klien Anda untuk kemudian menggunakan rahasia untuk mengakses sumber daya yang tidak diamankan oleh ID Microsoft Entra. Identitas Layanan Terkelola dikelola secara otomatis oleh Azure dan 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
- Dapatkan token akses menggunakan identitas VM dan gunakan untuk mengambil rahasia dari Key Vault
Prasyarat
- Pemahaman dasar tentang Identitas terkelola. Jika Anda tidak terbiasa dengan fitur identitas terkelola untuk sumber daya Azure, lihat gambaran umum ini.
- Akun Azure, daftar untuk mendapatkan akun gratis.
- Izin "Pemilik" pada cakupan yang sesuai (langganan atau grup sumber daya Anda) untuk melakukan langkah-langkah pembuatan sumber daya dan pengelolaan peran yang diperlukan. Jika Anda memerlukan bantuan terkait penetapan peran, lihat Menetapkan peran Azure untuk mengelola akses ke sumber daya langganan Azure Anda.
- Anda juga memerlukan komputer Virtual Linux yang mengaktifkan identitas terkelola yang ditetapkan sistem.
- Jika perlu membuat mesin virtual untuk tutorial ini, Anda dapat mengikuti artikel berjudul Membuat mesin virtual Linux dengan portal Microsoft Azure
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. 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 Azure Key Vault dan memberikan akses identitas terkelola yang ditetapkan sistem komputer virtual kita ke Azure Key Vault.
Masuk ke portal Azure.
Di bagian atas bilah navigasi kiri, pilih Buat sumber daya.
Di kotak Telusuri Marketplace ketikkan Key Vault dan tekan Enter.
Pilih Key Vault dari hasil.
Pilih Buat.
Berikan Nama untuk brankas kunci baru.
Isi semua informasi yang diperlukan, pastikan Anda memilih grup langganan dan sumber daya tempat Anda membuat komputer virtual yang Anda gunakan untuk tutorial ini.
Pilih Tinjau+ buat
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 konsep yang sama berlaku untuk setiap kode apa pun yang dijalankan di mesin virtual ini.
Arahkan ke Key Vault yang baru Anda buat.
Pilih Rahasia, dan pilih Tambahkan.
Pilih Buat/Impor
Di layar Buat rahasia dari opsi Unggah, pilih Manual.
Masukkan nama dan nilai untuk rahasia tersebut. Nilainya bisa dalam bentuk apa pun yang Anda inginkan.
Biarkan tanggal aktivasi dan tanggal kedaluwarsa jelas, dan biarkan opsi Diaktifkan diatur ke Ya.
Pilih Buat untuk membuat rahasia.
Memberikan akses
Identitas terkelola yang digunakan oleh komputer virtual memerlukan akses untuk membaca rahasia yang disimpan di Key Vault.
Arahkan ke Key Vault yang baru Anda buat
Pilih Kebijakan Akses dari menu di sebelah kiri.
Pilih Tambahkan Kebijakan Akses
Di bagian Tambahkan kebijakan akses di bagian Konfigurasikan dari templat (opsional) pilih Manajemen Rahasia dari menu pull-down.
Pilih Pilih Utama, dan di bidang pencarian masukkan nama komputer virtual yang Anda buat sebelumnya. Pilih komputer virtual dalam daftar hasil dan pilih Pilih.
Pilih Tambahkan
Pilih Simpan.
Mengakses data
Untuk menyelesaikan langkah-langkah ini, Anda memerlukan klien SSH. Jika menggunakan Windows, Anda dapat menggunakan klien SSH di Subsistem Windows untuk Linux. Jika Anda memerlukan bantuan untuk mengonfigurasi kunci klien SSH Anda, lihat Cara Menggunakan kunci SSH dengan Windows di Microsoft Azure, atau Cara membuat dan menggunakan pasangan kunci publik dan privat SSH untuk komputer virtual Linux di Microsoft Azure.
Penting
Semua Azure SDK mendukung pustaka Azure.Identity yang memudahkan untuk memperoleh token Microsoft Entra untuk mengakses layanan target. Pelajari selengkapnya tentang Azure SDK dan manfaatkan pustaka Azure.Identity.
Di portal, navigasikan ke VM Linux Anda dan di Gambaran Umum, pilih Koneksi.
Sambungkan ke komputer virtual dengan klien SSH pilihan Anda.
Di jendela terminal,gunakan CURL untuk mengajukan permintaan ke identitas terkelola lokal untuk titik akhir sumber daya Azure guna mendapatkan token akses untuk Azure Key Vault. Permintaan CURL untuk token akses di bawah ini.
curl 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https%3A%2F%2Fvault.azure.net' -H Metadata:true
Respons mencakup token akses yang Anda butuhkan untuk mengakses Resource Manager.
Respons:
{"access_token":"eyJ0eXAi...", "refresh_token":"", "expires_in":"3599", "expires_on":"1504130527", "not_before":"1504126627", "resource":"https://vault.azure.net", "token_type":"Bearer"}
Anda dapat menggunakan token akses ini untuk mengautentikasi ke Azure Key Vault. Permintaan CURL berikutnya menunjukkan cara membaca rahasia dari Key Vault menggunakan CURL dan Key Vault REST API. Anda memerlukan URL Key Vault Anda, yang ada di bagian Esensial di halaman Gambaran Umum Key Vault. Anda juga memerlukan token akses yang Anda peroleh pada panggilan sebelumnya.
curl 'https://<YOUR-KEY-VAULT-URL>/secrets/<secret-name>?api-version=2016-10-01' -H "Authorization: Bearer <ACCESS TOKEN>"
Responsnya terlihat seperti ini:
{"value":"p@ssw0rd!","id":"https://mytestkeyvault.vault.azure.net/secrets/MyTestSecret/7c2204c6093c4d859bc5b9eff8f29050","attributes":{"enabled":true,"created":1505088747,"updated":1505088747,"recoveryLevel":"Purgeable"}}
Setelah Anda 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 melakukan ini melalui PowerShell atau CLI.
Langkah berikutnya
Dalam tutorial ini, Anda mempelajari cara menggunakan identitas terkelola yang ditetapkan sistem Komputer Visual Linux untuk mengakses Azure Key Vault. Untuk mempelajari lebih lanjut tentang Azure Key Vault lihat: