Bagikan melalui


Kerangka kerja model aplikasi yang aman

Microsoft memperkenalkan kerangka kerja yang aman dan dapat diskalakan untuk mengautentikasi mitra penyedia solusi cloud (CSP) dan Control Panel Vendors (CPV) melalui arsitektur autentikasi multifaktor (MFA) Microsoft Azure. Mitra CSP dan Vendor Panel Kontrol dapat mengandalkan model baru untuk meningkatkan keamanan untuk panggilan integrasi API Pusat Mitra. Ini membantu semua pihak termasuk Microsoft, mitra CSP, dan Vendor Panel Kontrol untuk melindungi infrastruktur dan data pelanggan mereka dari risiko keamanan.

Penting

Grafik Azure Active Directory (Azure AD) tidak digunakan lagi per 30 Juni 2023. Ke depannya, kami tidak melakukan investasi lebih lanjut di Azure AD Graph. API Azure AD Graph tidak memiliki komitmen SLA atau pemeliharaan di luar perbaikan terkait keamanan. Investasi dalam fitur dan fungsionalitas baru hanya akan dilakukan di Microsoft Graph.

Kami akan menghentikan Azure AD Graph dalam langkah-langkah bertahap sehingga Anda memiliki waktu yang cukup untuk memigrasikan aplikasi Anda ke MICROSOFT Graph API. Di kemudian hari yang akan kami umumkan, kami akan memblokir pembuatan aplikasi baru apa pun menggunakan Azure AD Graph.

Untuk mempelajari selengkapnya, lihat Catatan Penting: Penghentian Azure AD Graph dan Penghentian Modul PowerShell.

Ruang lingkup

Artikel ini berlaku untuk mitra berikut:

  • Vendor Panel Kontrol (CPV) adalah vendor perangkat lunak independen yang mengembangkan aplikasi untuk digunakan oleh mitra CSP untuk diintegrasikan dengan API Pusat Mitra. CPV bukan mitra CSP dengan akses langsung ke dasbor atau API mitra. Mereka adalah perusahaan yang mengembangkan aplikasi (biasanya aplikasi web) yang memungkinkan CSP menjual produk mereka melalui marketplace terpadu.
  • penyedia tidak langsung CSP dan mitra langsung CSP yang menggunakan autentikasi pengguna dengan ID aplikasi dan langsung berintegrasi dengan API Partner Center.

Nota

Agar memenuhi syarat sebagai CPV, Anda harus bergabung dengan Pusat Mitra sebagai CPV terlebih dahulu. Jika Anda adalah mitra CSP yang sudah ada yang juga merupakan CPV, prasyarat ini juga berlaku untuk Anda.

Pengembangan aplikasi yang aman

Dalam proses menempatkan pesanan untuk produk Microsoft atas nama CSP, aplikasi marketplace dari CPV berinteraksi dengan Microsoft API untuk melakukan pesanan dan menyediakan sumber daya bagi pelanggan.

Beberapa API ini meliputi:

  • API di Partner Center yang menerapkan operasi perdagangan seperti pemesanan dan pengelolaan siklus hidup langganan.
  • API-API Microsoft Graph yang menerapkan manajemen identitas untuk penyewa CSP dan penyewa pelanggan CSP.
  • API Azure Resource Manager (ARM) yang menerapkan fungsionalitas penyebaran Azure.

Mitra CSP diberdayakan dengan hak istimewa yang didelegasikan untuk bertindak atas nama pelanggan mereka saat memanggil API Microsoft. Hak istimewa yang didelegasikan memungkinkan mitra CSP menyelesaikan skenario pembelian, penyebaran, dan dukungan untuk pelanggan mereka.

Aplikasi Marketplace dirancang untuk membantu mitra CSP mencantumkan solusi mereka untuk pelanggan. Untuk mencapai hal ini, aplikasi marketplace perlu meniru hak istimewa mitra CSP untuk memanggil API Microsoft.

Karena hak istimewa mitra CSP tinggi dan memberikan akses ke semua pelanggan mitra, penting untuk memahami bagaimana aplikasi ini harus dirancang untuk menahan vektor eksploitasi keamanan. Serangan keamanan pada aplikasi sensitif ini dapat menyebabkan penyusupan data pelanggan. Oleh karena itu, pemberian izin dan peniruan hak istimewa mitra harus dirancang untuk mengikuti prinsip hak istimewa paling sedikit. Prinsip dan praktik terbaik berikut memastikan bahwa aplikasi marketplace berkelanjutan dan dapat menahan kompromi.

Prinsip keamanan untuk peniruan kredensial

  • Aplikasi marketplace tidak boleh menyimpan kredensial apa pun dari mitra CSP.

  • Kata sandi pengguna mitra CSP tidak boleh dibagikan.

  • Kunci aplikasi web penyewa mitra CSP tidak boleh dibagikan dengan Vendor Panel Kontrol.

  • Aplikasi marketplace harus menyajikan identitas aplikasi bersama dengan informasi mitra dibandingkan hanya menggunakan kredensial mitra saat melakukan panggilan yang meniru identitas mitra CSP.

  • Akses ke aplikasi marketplace harus didasarkan pada prinsip hak istimewa paling sedikit dan diartikulasikan dengan jelas dalam izin.

  • Otorisasi untuk aplikasi marketplace harus ditautkan ke beberapa kredensial.

  • Kredensial aplikasi dan kredensial mitra harus disediakan bersama untuk mendapatkan akses.

    Penting

    Penting bahwa tidak ada satu titik kompromi.

  • Akses harus dibatasi untuk audiens atau API tertentu.

  • Akses harus mengidentifikasi tujuan peniruan.

  • Izin akses untuk aplikasi marketplace harus terikat waktu. Mitra CSP harus dapat memperbarui atau mencabut akses ke aplikasi marketplace.

  • Proses kontrol cepat atau remediasi harus diberlakukan untuk menangani kompromi kredensial aplikasi marketplace.

  • Semua akun pengguna harus menggunakan autentikasi dua faktor (2FA).

  • Model aplikasi harus ramah terhadap ketentuan keamanan ekstra, seperti akses bersyarat ke model keamanan yang lebih ditingkatkan.

Nota

Penyedia tidak langsung CSP dan mitra langsung CSP yang menggunakan ID aplikasi + autentikasi pengguna dan langsung berintegrasi dengan API Pusat Mitra diperlukan untuk mengikuti prinsip-prinsip di atas untuk mengamankan aplikasi marketplace mereka sendiri.

Identitas dan konsep aplikasi

Aplikasi multipenyewa

Aplikasi multipenyewa umumnya adalah aplikasi software as a service (SaaS). Anda dapat mengonfigurasi aplikasi untuk menerima masuk dari penyewa Microsoft Entra mana pun dengan menetapkan jenis aplikasi sebagai multipenyewa di dashboard Azure. Pengguna di penyewa Microsoft Entra mana pun akan dapat masuk ke aplikasi Anda setelah menyetujui untuk menggunakan akun mereka dengan aplikasi Anda.

Untuk mempelajari selengkapnya tentang cara membuat aplikasi multipenyewa, lihat Login pengguna Microsoft Entra dengan pola aplikasi multipenyewa.

Agar pengguna dapat masuk ke aplikasi dalam Microsoft Entra ID, aplikasi harus diwakili dalam tenant pengguna, yang memungkinkan organisasi tersebut untuk melakukan hal-hal seperti menerapkan kebijakan unik saat pengguna dari tenant mereka masuk ke aplikasi. Untuk aplikasi penyewa tunggal, pendaftaran ini sederhana: ini terjadi saat Anda mendaftarkan aplikasi di dasbor Azure.

Untuk aplikasi multipenyewa, pendaftaran awal aplikasi disimpan di penyewa Microsoft Entra yang digunakan oleh pengembangnya. Ketika pengguna dari penyewa yang berbeda masuk ke aplikasi untuk pertama kalinya, ID Microsoft Entra meminta mereka untuk menyetujui izin yang diminta oleh aplikasi. Apabila mereka memberikan izin, maka sebuah representasi dari aplikasi yang disebut sebagai service principal dibuat di tenant pengguna, dan proses masuk dapat dilanjutkan. Delegasi juga dibuat di direktori yang mencatat persetujuan pengguna terhadap aplikasi.

Nota

Penyedia tidak langsung CSP dan mitra langsung CSP yang menggunakan ID aplikasi + autentikasi pengguna dan langsung berintegrasi dengan API Pusat Mitra harus memberikan persetujuan untuk aplikasi marketplace mereka menggunakan kerangka kerja persetujuan yang sama.

Pengalaman persetujuan dipengaruhi oleh izin yang diminta oleh aplikasi. MICROSOFT Entra ID mendukung dua jenis izin, khusus aplikasi, dan didelegasikan.

  • Izin khusus aplikasi diberikan langsung ke identitas aplikasi. Misalnya, Anda dapat memberikan izin aplikasi untuk membaca daftar pengguna di penyewa, terlepas dari siapa yang masuk ke aplikasi.
  • Izin yang didelegasikan memberi aplikasi kemampuan untuk bertindak sebagai pengguna yang telah masuk untuk subset dari aktivitas yang dapat dilakukan pengguna. Misalnya, Anda dapat memberikan izin yang didelegasikan kepada aplikasi untuk membaca kalender pengguna yang masuk.

Beberapa izin disetujui oleh pengguna biasa, sementara yang lain memerlukan persetujuan administrator penyewa. Untuk informasi selengkapnya tentang kerangka kerja persetujuan Microsoft Entra, lihat Memahami pengalaman persetujuan aplikasi Microsoft Entra.

Aliran token otorisasi terbuka aplikasi multitenant (OAuth)

Dalam alur autorisasi terbuka aplikasi multipenyewa (OAuth), aplikasi diwakili sebagai aplikasi multipenyewa di rekanan CPV atau CSP.

Untuk mengakses API Microsoft (API Pusat Mitra, API Graph, dan sebagainya), mitra CSP harus masuk ke aplikasi dan persetujuan untuk memungkinkan aplikasi memanggil API atas nama mereka.

Nota

Penyedia tidak langsung CSP dan mitra langsung CSP yang menggunakan ID aplikasi dan autentikasi pengguna dan langsung berintegrasi dengan API Pusat Mitra harus memberikan persetujuan kepada aplikasi marketplace mereka untuk menggunakan kerangka kerja persetujuan yang sama.

Aplikasi mendapatkan akses ke sumber daya mitra, seperti Graph dan API Pusat Mitra, melalui persetujuan dan pemberian OAuth.

Membuat aplikasi multitenansi

Aplikasi multipenyewa harus mematuhi persyaratan berikut:

  • Ini harus berupa aplikasi web dengan ID aplikasi dan kunci rahasia.
  • Ini harus menonaktifkan mode autentikasi implisit.

Selain itu, sebaiknya ikuti praktik terbaik ini:

  • Gunakan sertifikat untuk kunci rahasia.
  • Aktifkan akses bersyarat untuk menerapkan pembatasan rentang IP. Ini mungkin memerlukan lebih banyak fungsionalitas untuk diaktifkan pada lingkungan Microsoft Entra.
  • Terapkan kebijakan seumur hidup token akses untuk aplikasi.

Saat memperoleh token, ID aplikasi dan kunci rahasia harus disajikan. Kunci rahasia dapat berupa sertifikat.

Aplikasi dapat dikonfigurasi untuk memanggil beberapa API termasuk API Azure Resource Manager. Berikut ini adalah sekumpulan izin minimum yang diperlukan untuk API Pusat Mitra:

  • Izin yang didelegasikan untuk Microsoft Entra ID: Mengakses direktori sebagai pengguna yang telah masuk
  • Izin yang didelegasikan untuk API Pusat Mitra: Akses

Aplikasi multi-penyewa harus memperoleh persetujuan dari mitra dan menggunakan persetujuan serta izin tersebut untuk melakukan panggilan lebih lanjut ke API Pusat Mitra. Persetujuan diperoleh melalui alur kode autentikasi OAuth.

Untuk memperoleh persetujuan, CPV atau mitra CSP harus membangun situs web onboarding yang dapat menerima pemberian kode autentikasi dari ID Microsoft Entra.

Untuk informasi selengkapnya, lihat platform identitas Microsoft dan alur kode otorisasi OAuth 2.0.

Berikut adalah langkah-langkah untuk aplikasi multitenant dalam menangkap persetujuan mitra CSP bersama dengan token yang dapat digunakan kembali dalam melakukan panggilan ke API Partner Center.

Gunakan langkah-langkah berikut untuk memperoleh persetujuan mitra.

  1. Bangun aplikasi web pendaftaran mitra yang dapat memuat tautan persetujuan, yang dapat diklik mitra untuk menyetujui aplikasi multi-penyewa.
  2. Mitra CSP mengklik tautan persetujuan. Misalnya, https://login.microsoftonline.com/common/oauth2/authorize?&client_id=<marketplaceappid>&response_ty
  3. Halaman masuk Microsoft Entra menjelaskan izin yang akan diberikan kepada aplikasi atas nama pengguna. Mitra CSP dapat memutuskan untuk menggunakan kredensial Agen Admin atau Agen Penjualan untuk masuk dan menyetujui persetujuan. Aplikasi diberikan izin berdasarkan peran pengguna yang digunakan untuk masuk.
  4. Setelah persetujuan diberikan, Microsoft Entra ID membuat sebuah prinsipal layanan dari aplikasi multipenyewa milik CPV ke dalam penyewa mitra CSP.
    • Aplikasi diberikan pemberian OAuth untuk bertindak atas nama pengguna. Izin ini memungkinkan aplikasi multipenyewa untuk memanggil API Pusat Mitra atas nama mitra bisnis.
    • Pada titik ini, halaman masuk Microsoft Entra akan dialihkan ke aplikasi web onboarding mitra. Aplikasi web menerima kode otorisasi dari ID Microsoft Entra. Aplikasi web onboarding mitra harus menggunakan kode otorisasi bersama dengan ID aplikasi dan kunci rahasia untuk memanggil MICROSOFT Entra ID Tokens API untuk mendapatkan token refresh.
  5. Simpan token refresh dengan aman. Token refresh adalah bagian dari kredensial mitra yang digunakan untuk mendapatkan akses ke API Pusat Mitra atas nama mitra. Setelah token refresh diperoleh, enkripsi dan simpan di penyimpanan kunci rahasia, seperti brankas kunci Azure.

Alur panggilan permintaan token

Aplikasi mitra CPV atau CSP harus memperoleh token akses sebelum melakukan panggilan ke API Pusat Mitra. API ini diwakili di URL sumber daya https://api.partnercenter.microsoft.com.

Aplikasi CPV harus mengidentifikasi akun mitra mana yang harus ditiru untuk memanggil API Pusat Mitra berdasarkan proses masuk produk atau federasi. Aplikasi mengambil token refresh terenkripsi untuk penyewa mitra tersebut dari penyimpanan kunci rahasia. Token refresh harus didekripsi sebelum digunakan.

Untuk mitra CSP di mana hanya ada satu penyewa yang memberikan persetujuan, akun mitra mengacu pada penyewa mitra CSP.

Token refresh adalah token yang dapat digunakan oleh banyak audiens. Itu berarti token refresh dapat digunakan untuk mendapatkan token untuk beberapa audiens berdasarkan persetujuan yang diberikan. Misalnya, jika persetujuan mitra diberikan untuk API Pusat Mitra dan API Microsoft Graph, token refresh dapat digunakan untuk meminta token akses untuk kedua API. Token akses memiliki pemberian "atas nama" dan memungkinkan aplikasi marketplace untuk meniru mitra yang menyetujui saat memanggil API ini.

Token akses dapat diperoleh untuk satu audiens pada satu waktu. Jika aplikasi perlu mengakses beberapa API, aplikasi harus meminta beberapa token akses untuk audiens yang ditargetkan. Untuk meminta token akses, aplikasi perlu memanggil MICROSOFT Entra ID Token API. Atau, dapat juga menggunakan Microsoft Entra SDK AuthenticationContext.AcquireTokenAsync dan memberikan informasi berikut:

  • URL Sumber Daya, yang merupakan URL titik akhir untuk aplikasi yang akan dipanggil. Misalnya, URL untuk resource API Microsoft Partner Center adalah https://api.partnercenter.microsoft.com.
  • Kredensial aplikasi yang terdiri dari ID aplikasi web dan kunci rahasia.
  • Token pembaruan

Token akses yang dihasilkan memungkinkan aplikasi untuk melakukan panggilan ke API yang disebutkan dalam sumber daya. Aplikasi tidak dapat meminta token akses untuk API yang tidak diberikan izin sebagai bagian dari permintaan persetujuan. Nilai atribut UserPrincipalName (UPN) adalah nama pengguna Microsoft Entra untuk akun pengguna.

Pertimbangan lainnya

Akses bersyarat

Dalam hal mengelola sumber daya cloud Anda, aspek utama keamanan cloud adalah identitas dan akses. Di dunia seluler-pertama, cloud-first, pengguna dapat mengakses sumber daya organisasi Anda menggunakan berbagai perangkat dan aplikasi dari mana saja. Hanya berfokus pada siapa yang dapat mengakses sumber daya tidak lagi cukup. Untuk menguasai keseimbangan antara keamanan dan produktivitas, Anda juga perlu mempertimbangkan bagaimana sumber daya diakses. Dengan menggunakan Akses Bersyarat Microsoft Entra, Anda dapat mengatasi persyaratan ini. Dengan akses bersyarat, Anda dapat menerapkan keputusan kontrol akses otomatis untuk mendapatkan akses ke aplikasi cloud Anda berdasarkan kondisi tertentu.

Untuk informasi selengkapnya, lihat Apa itu akses bersyarat di ID Microsoft Entra?

Pembatasan berbasis rentang IP

Anda hanya dapat membatasi token untuk dikeluarkan ke rentang alamat IP tertentu. Fitur ini membantu membatasi area permukaan serangan ke jaringan tertentu saja.

Autentikasi multifaktor

Memberlakukan autentikasi multifaktor membantu membatasi situasi penyusupan kredensial dengan memberlakukan verifikasi kredensial ke dua formulir atau lebih. Fitur ini memungkinkan MICROSOFT Entra ID memvalidasi identitas pemanggil melalui saluran sekunder yang aman, seperti seluler atau email, sebelum mengeluarkan token.

Untuk informasi selengkapnya, lihat Cara kerjanya: Azure Multi.