Menggunakan SCIM dan Microsoft Graph bersama-sama untuk memprovisikan pengguna dan memperkaya aplikasi Anda dengan data yang dibutuhkan

Audiens target: Artikel ini ditargetkan untuk pengembang yang membangun aplikasi untuk diintegrasikan dengan ID Microsoft Entra. Jika Anda ingin menggunakan aplikasi yang sudah terintegrasi dengan MICROSOFT Entra ID, seperti Zoom, ServiceNow, dan DropBox, Anda dapat melewati artikel ini dan meninjau tutorial spesifik aplikasi atau meninjau cara kerja layanan provisi.

Skenario umum

MICROSOFT Entra ID menyediakan layanan out of the box untuk provisi dan platform yang dapat diperluas untuk membangun aplikasi Anda. Pohon keputusan menguraikan cara pengembang akan menggunakan SCIM dan Microsoft Graph untuk mengotomatiskan provisi.

  • Membuat pengguna di aplikasi saya secara otomatis
  • Otomatis menghapus pengguna dari aplikasi saya saat mereka tidak boleh memiliki akses lagi
  • Mengintegrasikan aplikasi saya dengan beberapa penyedia identitas untuk provisi
  • Perkaya aplikasi saya dengan data dari layanan Microsoft seperti Teams, Outlook, dan Office.
  • Membuat, memperbarui, dan menghapus pengguna dan grup secara otomatis di MICROSOFT Entra ID dan Active Directory

SCIM Graph decision tree

Skenario 1: Otomatis membuat pengguna di aplikasi saya

Hari ini, admin IT memprovisikan pengguna dengan membuat akun pengguna secara manual atau mengunggah file CSV ke aplikasi saya secara berkala. Proses ini memakan waktu bagi pelanggan dan memperlambat adopsi aplikasi saya. Untuk membuat pengguna, yang saya butuhkan hanyalah informasi pengguna dasar seperti nama, email, dan userPrincipalName.

Rekomendasi:

  • Jika pelanggan Anda menggunakan berbagai IdP dan Anda tidak ingin mempertahankan mesin sinkronisasi untuk diintegrasikan dengan masing-masing IdP tersebut, dukung titik akhir /Pengguna yang mematuhi SCIM. Pelanggan Anda akan dapat dengan mudah menggunakan titik akhir ini untuk berintegrasi dengan layanan provisi Microsoft Entra dan secara otomatis membuat akun pengguna saat mereka membutuhkan akses. Anda dapat membuat titik akhir sekali dan titik akhir akan kompatibel dengan semua IdP. Lihat contoh permintaan di bawah untuk mengetahui cara pengguna akan dibuat menggunakan SCIM.
  • Jika Anda memerlukan data pengguna yang ditemukan pada objek pengguna di ID Microsoft Entra dan data lain dari seluruh Microsoft, pertimbangkan untuk membangun titik akhir SCIM untuk provisi dan panggilan pengguna ke Microsoft Graph untuk mendapatkan data lainnya.
POST /Users
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
    "externalId": "0a21f0f2-8d2a-4f8e-bf98-7363c4aed4ef",
    "userName": "BillG",
    "active": true,
    "meta": {
        "resourceType": "User"
    },
    "name": {
        "formatted": "Bill Gates",
        "familyName": "Gates",
        "givenName": "Bill"
    },
    "roles": []
}

Skenario 2: Menghapus pengguna dari aplikasi saya secara otomatis

Pelanggan yang menggunakan aplikasi saya berfokus pada keamanan dan memiliki persyaratan tata kelola untuk menghapus akun saat karyawan tidak membutuhkannya lagi. Bagaimana cara mengotomatiskan pembatalan provisi dari aplikasi saya?

Rekomendasi: Mendukung titik akhir /Pengguna yang mematuhi SCIM. Layanan provisi Microsoft Entra akan mengirim permintaan untuk menonaktifkan dan menghapus saat pengguna tidak boleh memiliki akses lagi. Sebaiknya dukung penonaktifan dan penghapusan pengguna. Lihat contoh di bawah untuk tampilan permintaan penonaktifan dan penghapusan.

Menonaktifkan pengguna

PATCH /Users/5171a35d82074e068ce2 HTTP/1.1
{
    "Operations": [
        {
            "op": "Replace",
            "path": "active",
            "value": false
        }
    ],
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ]
}

Menghapus pengguna

DELETE /Users/5171a35d82074e068ce2 HTTP/1.1

Skenario 3: Mengotomatiskan pengelolaan keanggotaan grup di aplikasi saya

Aplikasi saya bergantung pada grup untuk akses ke berbagai sumber daya, dan pelanggan ingin menggunakan kembali grup yang mereka miliki di ID Microsoft Entra. Bagaimana cara mengimpor grup dari ID Microsoft Entra dan memperbaruinya saat keanggotaan berubah?

Rekomendasi: Mendukung titik akhir /Grup yang mematuhi SCIM. Layanan provisi Microsoft Entra akan mengurus pembuatan grup dan mengelola pembaruan keanggotaan di aplikasi Anda.

Skenario 4: Memperkaya aplikasi saya dengan data dari layanan Microsoft seperti Teams, Outlook, dan OneDrive

Aplikasi saya disertakan dalam Microsoft Teams dan bergantung pada data pesan. Selain itu, kami menyimpan file untuk pengguna di OneDrive. Bagaimana cara memperkaya aplikasi saya dengan data dari layanan ini dan di seluruh Microsoft?

Rekomendasi:Microsoft Graph adalah titik masuk Anda untuk mengakses data Microsoft. Setiap beban kerja mengekspos API dengan data yang Anda butuhkan. Grafik Microsoft dapat digunakan bersama dengan provisi SCIM untuk skenario di atas. Anda dapat menggunakan SCIM untuk memprovisikan atribut pengguna dasar ke dalam aplikasi Anda sambil memanggil grafik untuk mendapatkan data lain yang Anda butuhkan.

Skenario 5: Melacak perubahan dalam layanan Microsoft seperti Teams, Outlook, dan MICROSOFT Entra ID

Saya harus dapat melacak perubahan pada pesan Teams dan Outlook dan bereaksi terhadapnya secara real time. Bagaimana cara mendorong perubahan ini ke aplikasi saya?

Rekomendasi: Microsoft Graph menyediakan pemberitahuan perubahan dan pelacakan perubahan untuk berbagai sumber daya. Perhatikan batasan pemberitahuan perubahan berikut:

  • Jika penerima peristiwa mengetahui suatu peristiwa, tetapi gagal menindaklanjutinya karena alasan apa pun, peristiwa tersebut mungkin hilang.
  • Urutan penerimaan perubahan tidak dijamin bersifat kronologis.
  • Pemberitahuan perubahan tidak selalu berisi data sumber daya Untuk alasan di atas, pengembang sering menggunakan pemberitahuan perubahan bersama dengan pelacakan perubahan untuk skenario sinkronisasi.

Skenario 6: Memprovisikan pengguna dan grup di ID Microsoft Entra

Aplikasi saya membuat informasi tentang pengguna yang dibutuhkan pelanggan di ID Microsoft Entra. Ini bisa menjadi aplikasi SDM daripada mengelola perekrutan, aplikasi komunikasi yang membuat nomor telepon untuk pengguna, atau beberapa aplikasi lain yang menghasilkan data yang akan berharga di ID Microsoft Entra. Bagaimana cara mengisi rekaman pengguna di MICROSOFT Entra ID dengan data tersebut?

Rekomendasi Grafik Microsoft mengekspos titik akhir /Pengguna dan /Grup yang dapat Anda integrasikan dengan hari ini untuk memprovisikan pengguna ke id Microsoft Entra. Harap dicatat bahwa MICROSOFT Entra ID tidak mendukung penulisan pengguna tersebut kembali ke Direktori Aktif.

Catatan

Microsoft memiliki layanan provisi yang menarik data dari aplikasi HR seperti Workday dan SuccessFactors. Integrasi ini dibuat dan dikelola oleh Microsoft. Untuk onboarding aplikasi HR baru ke layanan kami, Anda dapat memintanya di UserVoice.