Mengamankan prinsipal layanan di Microsoft Entra ID
Perwakilan layanan Microsoft Entra adalah representasi lokal objek aplikasi di penyewa atau direktori. Ini adalah identitas instans aplikasi. Perwakilan layanan menentukan akses aplikasi dan sumber daya yang diakses aplikasi. Perwakilan layanan dibuat di setiap penyewa tempat aplikasi digunakan dan mereferensikan objek aplikasi yang unik secara global. Penyewa mengamankan rincian masuk perwakilan layanan dan akses ke sumber daya.
Pelajari selengkapnya: Objek perwakilan aplikasi dan layanan di ID Microsoft Entra
Hubungan perwakilan layanan penyewa
Aplikasi penyewa tunggal memiliki satu perwakilan layanan di penyewa rumahnya. Aplikasi web multi-penyewa atau API memerlukan perwakilan layanan di setiap penyewa. Perwakilan layanan dibuat saat pengguna dari penyewa tersebut menyetujui penggunaan aplikasi atau API. Persetujuan ini menciptakan hubungan satu-ke-banyak antara aplikasi multi-penyewa dan perwakilan layanan terkait.
Aplikasi multi-penyewa berada di penyewa dan memiliki instans di penyewa lain. Sebagian besar aplikasi software-as-a-service (SaaS) mengakomodasi multi-penyewaan. Gunakan perwakilan layanan untuk memastikan postur keamanan yang diperlukan untuk aplikasi, dan penggunanya, dalam skenario tunggal dan multi-penyewa.
ApplicationID dan ObjectID
Instans aplikasi memiliki dua properti: ApplicationID (atau ClientID) dan ObjectID.
Catatan
Istilah aplikasi dan perwakilan layanan digunakan secara bergantian, ketika merujuk ke aplikasi dalam tugas autentikasi. Namun, mereka adalah dua representasi aplikasi di ID Microsoft Entra.
ApplicationID mewakili aplikasi global dan sama untuk instans aplikasi, di seluruh penyewa. ObjectID adalah nilai unik untuk objek aplikasi. Seperti halnya pengguna, grup, dan sumber daya lainnya, ObjectID membantu mengidentifikasi instans aplikasi di ID Microsoft Entra.
Untuk mempelajari selengkapnya, lihat Hubungan aplikasi dan perwakilan layanan di ID Microsoft Entra
Membuat aplikasi dan objek perwakilan layanannya
Anda dapat membuat aplikasi dan objek perwakilan layanannya (ObjectID) di penyewa menggunakan:
- Azure PowerShell
- Microsoft Graph PowerShell
- Antarmuka baris perintah Azure (Azure CLI)
- API Microsoft Graph
- Portal Microsoft Azure
- Alat lain
Autentikasi perwakilan layanan
Ada dua mekanisme untuk autentikasi, saat menggunakan perwakilan layanan—sertifikat klien dan rahasia klien.
Karena sertifikat lebih aman, disarankan Anda menggunakannya, jika memungkinkan. Tidak seperti rahasia klien, sertifikat klien tidak dapat disematkan dalam kode, secara tidak sengaja. Jika memungkinkan, gunakan Azure Key Vault untuk manajemen sertifikat dan rahasia untuk mengenkripsi aset dengan kunci yang dilindungi oleh modul keamanan perangkat keras:
- Kunci autentikasi
- Kunci akun penyimpanan
- Kunci enkripsi data
- file .pfx
- Kata Sandi
Untuk informasi selengkapnya tentang Azure Key Vault dan cara menggunakannya untuk sertifikat dan manajemen rahasia, lihat:
Tantangan dan mitigasi
Saat menggunakan perwakilan layanan, gunakan tabel berikut untuk mencocokkan tantangan dan mitigasi.
Latihan | Mitigasi |
---|---|
Tinjauan akses untuk perwakilan layanan yang ditetapkan ke peran istimewa | Fungsionalitas ini dalam pratinjau |
Tinjauan akses perwakilan layanan | Pemeriksaan manual daftar kontrol akses sumber daya menggunakan portal Azure |
Perwakilan layanan yang terlalu izin | Saat Anda membuat akun layanan otomatisasi, atau perwakilan layanan, berikan izin untuk tugas tersebut. Evaluasi perwakilan layanan untuk mengurangi hak istimewa. |
Mengidentifikasi modifikasi pada kredensial perwakilan layanan atau metode autentikasi | - Lihat, Buku kerja laporan operasi sensitif - Lihat posting blog Komunitas Teknologi, buku kerja Microsoft Entra untuk membantu Anda menilai risiko Solorigate |
Menemukan akun menggunakan perwakilan layanan
Untuk menemukan akun, jalankan perintah berikut menggunakan perwakilan layanan dengan Azure CLI atau PowerShell.
- Azure CLI -
az ad sp list
- PowerShell -
Get-MgServicePrincipal -All:$true
Untuk informasi selengkapnya, lihat Get-MgServicePrincipal
Menilai keamanan perwakilan layanan
Untuk menilai keamanan, evaluasi hak istimewa dan penyimpanan kredensial. Gunakan tabel berikut untuk membantu mengurangi tantangan:
Latihan | Mitigasi |
---|---|
Mendeteksi pengguna yang menyetujui aplikasi multi-penyewa, dan mendeteksi pemberian persetujuan terlaris ke aplikasi multi-penyewa | - Jalankan PowerShell berikut untuk menemukan aplikasi multi-penyewa Get-MgServicePrincipal -All:$true | ? {$_.Tags -eq "WindowsAzureActiveDirectoryIntegratedApp"} - Nonaktifkan persetujuan pengguna - Izinkan persetujuan pengguna dari penerbit terverifikasi, untuk izin yang dipilih (disarankan) - Konfigurasikan dalam konteks pengguna - Gunakan token mereka untuk memicu perwakilan layanan |
Penggunaan rahasia bersama yang dikodekan secara permanen dalam skrip menggunakan perwakilan layanan | Menggunakan sertifikat |
Melacak siapa yang menggunakan sertifikat atau rahasia | Memantau rincian masuk perwakilan layanan menggunakan log masuk Microsoft Entra |
Tidak dapat mengelola rincian masuk perwakilan layanan dengan Akses Bersyarat | Memantau rincian masuk menggunakan log masuk Microsoft Entra |
Kontributor adalah peran kontrol akses berbasis peran Azure (Azure RBAC) default | Mengevaluasi kebutuhan dan menerapkan izin sekecil mungkin |
Pelajari selengkapnya: Apa itu Akses Bersyar?
Berpindah dari akun pengguna ke perwakilan layanan
Jika Anda menggunakan akun pengguna Azure sebagai perwakilan layanan, evaluasi apakah Anda dapat pindah ke identitas terkelola atau perwakilan layanan. Jika Anda tidak dapat menggunakan identitas terkelola, berikan izin dan cakupan yang cukup kepada perwakilan layanan untuk menjalankan tugas yang diperlukan. Anda dapat membuat perwakilan layanan dengan mendaftarkan aplikasi,atau dengan PowerShell.
Saat menggunakan Microsoft Graph, periksa dokumentasi API. Pastikan jenis izin untuk aplikasi didukung.
Lihat, Membuat servicePrincipal
Selengkapnya:
- Cara menggunakan identitas terkelola untuk App Service dan Azure Functions
- Membuat aplikasi Microsoft Entra dan perwakilan layanan yang dapat mengakses sumber daya
- Menggunakan Azure PowerShell untuk membuat perwakilan layanan dengan sertifikat
Langkah berikutnya
Pelajari selengkapnya tentang perwakilan layanan:
- Membuat aplikasi Microsoft Entra dan perwakilan layanan yang dapat mengakses sumber daya
- Log masuk di Microsoft Entra ID
Akun layanan aman:
- Mengamankan akun layanan berbasis cloud
- Mengamankan identitas terkelola di ID Microsoft Entra
- Mengatur akun layanan Microsoft Entra
- Mengamankan akun layanan lokal
Akses Bersyarat:
Gunakan Akses Bersyarah untuk memblokir perwakilan layanan dari lokasi yang tidak tepercaya.