Identitas Terkelola vs Pendaftaran Aplikasi di Azure: Perbedaan Utama dan Praktik Terbaik
By Mirko Peters ·
Jika Anda membangun atau mengamankan aplikasi serius di Azure saat ini, memahami identitas terkelola dan pendaftaran aplikasi bukan lagi pilihan, melainkan syarat dasar…
Automatically translated with AI from the original post. Read the English original

Jika Anda membangun atau mengamankan aplikasi serius di Azure saat ini, memahami identitas terkelola dan pendaftaran aplikasi bukan lagi opsional, melainkan syarat dasar. Keduanya berperan besar dalam manajemen identitas dan akses untuk aplikasi, otomatisasi, dan layanan Anda. Namun, jika salah memilih model yang sesuai untuk setiap kebutuhan, Anda akan menghadapi masalah yang tidak perlu, celah keamanan, atau pengelolaan rahasia yang terlalu merepotkan.
Panduan ini menjelaskan apa itu identitas terkelola dan pendaftaran aplikasi, bagaimana keduanya terhubung dengan Entra ID (sebelumnya Azure AD), dan mengapa memilih pendekatan yang tepat penting bagi postur keamanan dan operasional harian Anda. Anda akan menemukan definisi yang lugas, skenario praktis, cara bermigrasi untuk meninggalkan rahasia, serta tips yang dapat langsung diterapkan untuk pemecahan masalah dan tata kelola. Fokusnya: membantu Anda menjalankan cloud Microsoft yang lebih ketat, aman, dan efisien, terutama ketika serangan semakin meningkat dan praktik terbaik Entra ID terus berkembang.
Memahami Identitas Terkelola dan Pendaftaran Aplikasi
Mari mulai dengan memahami secara jelas apa yang sebenarnya dilakukan identitas terkelola dan pendaftaran aplikasi di Azure dan Entra ID. Keduanya adalah cara bagi aktor non-manusia, seperti aplikasi, skrip, atau otomatisasi, untuk melakukan autentikasi dan mengakses sumber daya di cloud Microsoft. Namun, cara kerja keduanya, serta masalah sehari-hari yang mereka selesaikan (atau timbulkan), cukup berbeda.
Identitas terkelola adalah jawaban Azure untuk autentikasi tanpa rahasia. Alih-alih mengurus kata sandi aplikasi dan sertifikat, Anda dapat memberi sumber daya Azure (misalnya mesin virtual, App Service, Logic App) identitasnya sendiri di Entra ID. Identitas ini dikelola sepenuhnya secara otomatis oleh Azure: identitas dibuat saat sumber daya Anda dibuat, dihapus saat sumber daya dihapus, dan yang paling penting, Anda tidak lagi berhadapan dengan pertukaran rahasia. Identitas terkelola hadir dalam dua jenis: yang ditetapkan sistem (satu per sumber daya, terkunci ketat) dan yang ditetapkan pengguna (dapat digunakan ulang di beberapa sumber daya).
Pendaftaran aplikasi adalah pendekatan klasik. Mendaftarkan aplikasi di Entra ID akan membuat objek aplikasi dan memberi Anda client ID, dengan rahasia atau sertifikat opsional untuk autentikasi. Jika aplikasi Anda perlu masuk ke layanan Microsoft, mengakses Graph API, atau bekerja di luar Azure (atau di lebih dari satu sumber daya), Anda kemungkinan besar akan menggunakan pendaftaran aplikasi. Namun, Anda bertanggung jawab penuh atas pengelolaan rahasia, keamanan, dan siklus hidupnya, dan hal ini disertai sejumlah konsekuensi.
Memilih alat yang tepat bukan sekadar keputusan teknis. Ini adalah perhitungan risiko keamanan: rahasia adalah target empuk bagi penyerang, sedangkan identitas terkelola tanpa rahasia menghilangkan seluruh kelas kerentanan. Jika ingin melihat mengapa hal ini penting, baca pembahasan mendalam tentang penyalahgunaan persetujuan OAuth di Entra ID. Penyerang tahu cara bertahan di lingkungan yang mengabaikan hal-hal mendasar, jadi memastikan identitas sudah benar adalah langkah pertama.
Perbedaan Utama: Siklus Hidup, Keamanan, dan Integrasi Azure
Di sinilah teori bertemu kenyataan. Identitas terkelola dan pendaftaran aplikasi sama-sama memberi aplikasi atau skrip "label nama" digital, sehingga mereka dapat mengakses sumber daya. Namun, cara Anda mendapatkan label itu, merawatnya, dan membersihkannya setelah tidak dipakai lagi sangat berbeda.
Identitas terkelola adalah bentuk paling dekat dengan "atur sekali, lupakan" di dunia cloud. Buat sumber daya Azure, minta identitas terkelola, dan selesai. Azure akan membuat identitas untuk Anda, menghubungkannya ke Entra ID, dan menjaga sinkronisasinya di balik layar. Hapus sumber daya, dan identitasnya ikut hilang. Tidak ada pengelolaan rahasia, tidak ada rotasi kata sandi, dan tim keamanan bisa tidur lebih nyenyak.
Pendaftaran aplikasi membutuhkan usaha jauh lebih besar. Anda membuat pendaftaran aplikasi secara manual di Entra ID, mencatat client ID-nya, dan membuat rahasia atau sertifikat untuk autentikasi. Seiring waktu, rahasia tersebut kedaluwarsa (atau bisa bocor), dan Anda sendiri yang harus memeriksa aplikasi mana saja yang menggunakannya. Merotasi rahasia, memantau kredensial yang akan habis masa berlakunya, dan membersihkan pendaftaran yang sudah tidak terpakai adalah pekerjaan tersendiri. Itulah sebabnya tim keamanan selalu menanyakan otomatisasi siklus hidup.
Dari sisi keamanan, perbedaannya jelas: managed identity menggunakan autentikasi tanpa rahasia (secretless) yang terikat pada resource Azure, sedangkan app registration bergantung pada secret statis atau sertifikat. Itulah sebabnya managed identity lebih diutamakan di mana pun secret menjadi risiko, atau di mana otomatisasi menjadi prioritas utama.
Perbedaan siklus hidup dan keamanan ini berdampak besar pada otomatisasi, kepatuhan, dan upaya menjaga lingkungan cloud tetap rapi dan terkendali. Jika Anda ingin melihat bagaimana kebijakan tata kelola dan kontrol berperan dalam mencegah identity sprawl dan security drift, baca panduan ini tentang strategi tata kelola Azure. Panduan ini wajib dibaca bagi siapa pun yang bertanggung jawab atas lingkungan Azure berskala besar yang terus bertumbuh.
Service Principal, Peran RBAC, dan Izin Microsoft Graph
Sekarang, mari kita lihat lebih dalam. Di balik layar, baik managed identity maupun app registration sama-sama menggunakan service principal di Entra ID. Anggap service principal sebagai identitas sebenarnya yang dikenali Entra ID. Baik identitas itu berasal dari managed identity maupun app registration, objek inilah yang menerima izin dan akses di penyewa Anda.
Untuk app registration, ketika Anda mendaftarkan aplikasi baru, Entra membuat service principal yang sesuai untuk setiap penyewa tempat aplikasi tersebut Anda tetapkan. Inilah identitas yang akan Anda gunakan untuk memberikan peran RBAC Azure, seperti Contributor atau Reader, serta untuk memberikan izin Graph API, baik yang didelegasikan maupun yang berlevel aplikasi.
Managed identity sedikit berbeda, tetapi dibangun di atas fondasi yang sama. Saat Anda mengaktifkan managed identity untuk resource Azure, Entra membuat service principal khusus yang hidup dan berakhir bersama resource tersebut. Anda kemudian menetapkan peran RBAC (misalnya Key Vault Reader) langsung ke identitas ini, dan resource tersebut menerima akses token di balik layar. Tidak perlu mengubah kode, dan tidak ada secret yang beterbangan.
Pemberian izin adalah bagian yang paling menentukan. Kedua model menggunakan RBAC Azure untuk akses tingkat resource, tetapi cara memberikan izin Graph-nya berbeda. App registration memungkinkan Anda menyetujui akses Graph API melalui persetujuan eksplisit (explicit consent) atau persetujuan admin. Managed identity dapat diberi izin level aplikasi ke Graph tanpa sign-in interaktif, sehingga sangat cocok untuk otomatisasi yang perlu mengambil data pengguna, mengaudit keamanan, atau memicu alur kerja.
Namun, menetapkan akses dan memantau kepatuhan identitas-identitas ini bukanlah sesuatu yang bisa dibiarkan begitu saja. Penetapan peran RBAC yang ketat, audit berkala, dan pemanfaatan alat seperti Microsoft Defender for Cloud membantu Anda memantau siapa melakukan apa, menemukan kesalahan konfigurasi, dan menekan drift seminimal mungkin. Ingin pembahasan lebih mendalam tentang tata kelola identitas? Simak panduan tata kelola enterprise Azure ini atau penjelasan pemantauan kepatuhan di Microsoft Defender for Cloud untuk tips praktis tentang keamanan yang berkelanjutan.
Memilih Model yang Tepat: Skenario, Migrasi, dan Tata Kelola
Semua latar belakang tadi penting, tetapi inilah yang paling ingin diketahui sebagian besar tim: kapan Anda menggunakan managed identity dan kapan menggunakan app registration? Lalu, bagaimana Anda memigrasikan atau mengelola identitas-identitas ini agar tidak bermasalah saat skala bertambah?
Managed identity sangat unggul untuk workload yang berjalan langsung di dalam Azure dan hanya membutuhkan akses dalam penyewa yang sama, misalnya VM yang menjalankan skrip, App Service yang berkomunikasi dengan Key Vault, atau Logic App yang menjalankan kueri ke Microsoft Graph. Keamanannya lebih baik, penyiapannya lebih cepat, dan pengelolaan secret pun lebih sedikit. Namun, jika Anda menjalankan SaaS, solusi multi-tenant, atau pengaturan hybrid (misalnya aplikasi on-premises yang terhubung ke API cloud), app registration tetap menjadi pilihan utama karena fleksibilitas dan kompatibilitasnya yang lebih luas.
Migrasi dari app registration ke managed identity menjadi topik yang banyak dibicarakan. Prosesnya dimulai dengan asesmen kesiapan: workload mana yang benar-benar bisa beralih, dan dependensi atau keterbatasan apa yang ada? Untuk aplikasi yang sudah dibangun di atas app registration, sebaiknya terapkan secara bertahap, uji secara menyeluruh, dan siapkan rencana cadangan untuk mencegah downtime atau kejutan autentikasi.
Lingkungan hybrid dan multi-cloud membutuhkan sedikit kreativitas. Terkadang, Anda harus menggunakan kedua model sekaligus—praktik ini disebut identitas hybrid. Triknya adalah meminimalkan rahasia, membatasi izin, dan mendokumentasikan dengan jelas identitas mana yang melakukan apa. Dan ya, audit rutin wajib dilakukan untuk menemukan identitas yang sudah usang atau yatim piatu yang menimbulkan risiko tersembunyi.
Kebijakan tata kelola yang kuat menyatukan seluruh strategi. Menggunakan Azure Policy, Privileged Identity Management, dan pemeriksaan kepatuhan rutin memastikan Anda menerapkan prinsip hak akses minimum, mendeteksi penyimpangan, dan selaras dengan zero trust. Untuk melihat kenyataan tentang akun layanan versus identitas beban kerja yang sesungguhnya (dan mengapa pendekatan lama tidak memadai), pelajari analisis ini tentang risiko identitas non-manusia dan Microsoft Entra Workload Identities. Ingin panduan tata kelola menyeluruh? Sumber daya strategi tata kelola perusahaan berisi banyak praktik terbaik.