Mengamankan perwakilan layanan di ID Microsoft Entra

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

Screenshot of Application or Client ID and Object ID on the New App page.

Autentikasi perwakilan layanan

Ada dua mekanisme untuk autentikasi, saat menggunakan perwakilan layanan—sertifikat klien dan rahasia klien.

Screenshot of Certificates and Client secrets under New App, Certificates and secrets.

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.

Tantangan 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:

Tantangan 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

Pelajari lebih lanjut:

Langkah berikutnya

Pelajari selengkapnya tentang perwakilan layanan:

Akun layanan aman:

Akses Bersyarat:

Gunakan Akses Bersyarah untuk memblokir perwakilan layanan dari lokasi yang tidak tepercaya.

Lihat, Membuat kebijakan Akses Bersyarah berbasis lokasi