Praktik terbaik keamanan untuk properti aplikasi di ID Microsoft Entra

Keamanan adalah konsep penting saat mendaftarkan aplikasi di MICROSOFT Entra ID dan merupakan bagian penting dari penggunaan bisnisnya dalam organisasi. Setiap kesalahan konfigurasi aplikasi dapat mengakibatkan downtime atau kompromi. Bergantung pada izin yang ditambahkan ke aplikasi, mungkin ada efek di seluruh organisasi.

Karena aplikasi yang aman sangat penting bagi organisasi, waktu henti apa pun bagi mereka karena masalah keamanan dapat memengaruhi bisnis atau beberapa layanan penting yang bergantung pada bisnis. Jadi, penting untuk mengalokasikan waktu dan sumber daya untuk memastikan aplikasi selalu tetap dalam keadaan sehat dan aman. Lakukan penilaian keamanan dan kesehatan berkala aplikasi, seperti penilaian Model Ancaman Keamanan untuk kode. Untuk perspektif yang lebih luas tentang keamanan untuk organisasi, lihat siklus hidup pengembangan keamanan (SDL).

Artikel ini menjelaskan praktik terbaik keamanan untuk properti aplikasi berikut ini:

  • URI Pengalihan
  • Token akses (digunakan untuk alur implisit)
  • Sertifikat dan rahasia
  • URI ID Aplikasi
  • Kepemilikan aplikasi

URI Pengalihan

Penting untuk selalu memperbarui URI Pengalihan aplikasi Anda. Di bawah Autentikasi untuk aplikasi di portal Azure, platform harus dipilih untuk aplikasi dan kemudian properti Redirect URI dapat ditentukan.

Screenshot that shows where the redirect U R I property is located.

Pertimbangkan panduan berikut untuk mengalihkan URI:

  • Pertahankan kepemilikan semua URI. Selang dalam kepemilikan salah satu URI pengalihan dapat menyebabkan kompromi aplikasi.
  • Pastikan semua catatan DNS diperbarui dan dipantau secara berkala untuk perubahan.
  • Jangan gunakan URL balasan wildcard atau skema URI yang tidak aman seperti http, atau URN.
  • Pertahankan daftar yang sederhana. Pangkas URI yang tidak perlu. Jika memungkinkan, perbarui URL dari Http ke Https.

Token akses (digunakan untuk alur implisit)

Skenario yang memerlukan alur implisit saat ini dapat menggunakan alur kode Auth untuk mengurangi risiko kompromi yang terkait dengan penyalahgunaan alur implisit. Di bawah Autentikasi untuk aplikasi di portal Azure, platform harus dipilih untuk aplikasi dan kemudian properti Token akses (digunakan untuk alur implisit) dapat diatur.

Screenshot that shows where the implicit flow property is located.

Pertimbangkan panduan berikut yang terkait dengan alur implisit:

  • Pahami jika aliran implisit diperlukan. Jangan gunakan alur implisit kecuali diperlukan secara eksplisit.
  • Jika aplikasi dikonfigurasi untuk menerima token akses menggunakan alur implisit, tetapi tidak menggunakannya secara aktif, nonaktifkan pengaturan untuk melindungi dari penyalahgunaan.
  • Gunakan aplikasi terpisah untuk skenario alur implisit yang valid.

Sertifikat dan rahasia

Sertifikat dan rahasia, juga dikenal sebagai informasi masuk, adalah bagian penting dari aplikasi ketika digunakan sebagai klien rahasia. Di bawah Sertifikat dan rahasia untuk aplikasi di portal Azure, sertifikat dan rahasia dapat ditambahkan atau dihapus.

Screenshot that shows where the certificates and secrets are located.

Pertimbangkan panduan berikut yang terkait dengan sertifikat dan rahasia:

  • Selalu gunakan informasi masuk sertifikat jika memungkinkan dan jangan menggunakan informasi masuk kata sandi, yang juga dikenal sebagai rahasia. Meskipun lebih mudah menggunakan rahasia kata sandi sebagai informasi masuk, jika memungkinkan gunakan sertifikat x509 sebagai satu-satunya jenis informasi masuk untuk mendapatkan token untuk aplikasi.
    • Konfigurasikan kebijakan metode autentikasi aplikasi untuk mengatur penggunaan rahasia dengan membatasi masa pakainya atau memblokir penggunaannya sama sekali.
  • Gunakan Key Vault dengan identitas terkelola untuk mengelola kredensial untuk aplikasi.
  • Jika aplikasi hanya digunakan sebagai Aplikasi Klien Publik (memungkinkan pengguna untuk masuk menggunakan titik akhir publik), pastikan bahwa tidak ada informasi masuk yang ditentukan pada objek aplikasi.
  • Tinjau informasi masuk yang digunakan dalam aplikasi untuk kesegaran penggunaan dan kedaluwarsanya. Kredensial yang tidak digunakan pada aplikasi dapat mengakibatkan pelanggaran keamanan. Informasi masuk rollover sering dan tidak berbagi info masuk di seluruh aplikasi. Tidak memiliki banyak informasi masuk pada satu aplikasi.
  • Pantau alur produksi Anda untuk mencegah informasi masuk dalam bentuk apa pun agar tidak dimasukkan ke dalam repositori kode.
  • Pemindai Informasi Masuk adalah alat analisis statik yang dapat digunakan untuk mendeteksi informasi masuk (dan konten sensitif lainnya) dalam kode sumber dan membangun output.

URI ID Aplikasi

Properti URI ID Aplikasi dari aplikasi menentukan URI unik global yang digunakan untuk mengidentifikasi API web. Ini adalah awalan untuk cakupan dan dalam token akses, ini juga merupakan nilai klaim audiens dan harus menggunakan domain milik pelanggan terverifikasi. Untuk aplikasi multi-penyewa, nilainya juga harus unik secara global. Ini juga disebut sebagai URI pengidentifikasi. Di bawah Ekspos API untuk aplikasi di portal Azure, properti URI ID Aplikasi dapat ditentukan.

Screenshot that shows where the Application I D U R I is located.

Pertimbangkan panduan berikut yang terkait dengan menentukan URI ID Aplikasi:

  • Skema URI api atau https direkomendasikan. Atur properti dalam format yang didukung untuk menghindari tabrakan URI di organisasi Anda. Jangan menggunakan wildcard.
  • Gunakan domain terverifikasi di aplikasi Lini Bisnis (LoB).
  • Simpan inventaris URI di organisasi Anda untuk membantu menjaga keamanan.
  • Gunakan URI ID Aplikasi untuk mengekspos WebApi di organisasi. Jangan gunakan URI ID Aplikasi untuk mengidentifikasi aplikasi, dan sebagai gantinya gunakan properti ID Aplikasi (klien).

Format URI ID aplikasi berbasis skema API dan HTTP berikut ini didukung. Ganti nilai placeholder seperti yang dijelaskan dalam daftar yang mengikuti tabel.

ID aplikasi yang didukung
Format URI
URI ID aplikasi contoh
api://<appId> api://fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed
api://<tenantId>/<appId> api://a8573488-ff46-450a-b09a-6eca0c6a02dc/fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed
api://<tenantId>/<string> api://a8573488-ff46-450a-b09a-6eca0c6a02dc/api
api://<string>/<appId> api://productapi/fc4d2d73-d05a-4a9b-85a8-4f2b3a5f38ed
https://<tenantInitialDomain>.onmicrosoft.com/<string> https://contoso.onmicrosoft.com/productsapi
https://<verifiedCustomDomain>/<string> https://contoso.com/productsapi
https://<string>.<verifiedCustomDomain> https://product.contoso.com
https://<string>.<verifiedCustomDomain>/<string> https://product.contoso.com/productsapi
  • <appId> - Properti pengidentifikasi aplikasi (appId) objek aplikasi.
  • <string> - Nilai string untuk host atau segmen jalur api.
  • <tenantId> - GUID yang dihasilkan oleh Azure untuk mewakili penyewa di dalam Azure.
  • <tenantInitialDomain> - <tenantInitialDomain>.onmicrosoft.com, ketika <tenantInitialDomain> adalah nama domain awal yang ditentukan oleh pembuat penyewa saat pembuatan penyewa.
  • <verifiedCustomDomain> - Domain kustom terverifikasi yang dikonfigurasi untuk penyewa Microsoft Entra Anda.

Catatan

Jika menggunakan skema api://, Anda menambahkan nilai string langsung setelah "api://". Misalnya, api://<string>. Nilai string dapat berupa GUID atau string arbitrer. Jika Anda menambahkan nilai GUID, nilai tersebut harus cocok dengan ID aplikasi atau ID penyewa. Nilai URI ID aplikasi harus unik untuk penyewa Anda. Apabila Anda menambahkan api://<tenantId> sebagai URI ID aplikasi, tidak ada orang lain yang dapat menggunakan URI tersebut di aplikasi lainnya. Rekomendasinya adalah menggunakan api://<appId> sebagai gantinya, atau skema HTTP.

Penting

Nilai URI ID aplikasi tidak boleh diakhiri dengan karakter garis miring "/".

Konfigurasi kepemilikan aplikasi

Pemilik dapat mengelola semua aspek aplikasi terdaftar. Penting untuk meninjau kepemilikan semua aplikasi dalam organisasi secara teratur. Untuk informasi selengkapnya, lihat Tinjauan akses Microsoft Entra. Di bawah Pemilik untuk aplikasi di portal Azure, pemilik aplikasi dapat dikelola.

Screenshot that shows where owners of the application are managed.

Pertimbangkan panduan berikut yang terkait dengan menentukan pemilik aplikasi:

  • Kepemilikan aplikasi harus disimpan untuk set minimal orang dalam organisasi.
  • Administrator harus meninjau daftar pemilik setiap beberapa bulan sekali untuk memastikan bahwa pemilik masih menjadi bagian dari organisasi dan harus tetap memiliki aplikasi.

Asisten integrasi

Asisten Integrasi di portal Azure dapat digunakan untuk memastikan bahwa aplikasi memenuhi bilah berkualitas tinggi dan untuk menyediakan integrasi yang aman. Asisten integrasi menyoroti praktik terbaik dan rekomendasi yang membantu menghindari kesalahan umum saat berintegrasi dengan platform identitas Microsoft.

Screenshot that shows where to find the integration assistant.

Langkah berikutnya