Bagikan melalui


Memperluas provisi berbasis API untuk menyinkronkan atribut kustom

Secara default, aplikasi provisi berbasis API mendukung atribut pemrosesan yang merupakan bagian dari skema Pengguna Inti SCIM dan Pengguna Perusahaan standar. Sistem rekaman Anda mungkin memiliki atribut kustom yang mungkin ingin Anda sertakan sebagai bagian dari provisi berbasis API. Tutorial lanjutan ini menjelaskan cara memperluas aplikasi provisi berbasis API Anda untuk memproses atribut kustom tambahan.

Catatan

Sebelum mencoba skenario lanjutan ini, sebaiknya verifikasi bahwa konfigurasi aplikasi provisi siap pakai Anda berfungsi seperti yang diharapkan menggunakan salah satu klien API berikut Graph Explorer, cURL, atau Postman.

Contoh skenario

Anda telah mengonfigurasi aplikasi provisi berbasis API. Anda memprovisikan aplikasi berhasil menggunakan atribut yang merupakan bagian dari skema Pengguna SCIM Core dan Pengguna Perusahaan standar dan memprovisikan pengguna di ID Microsoft Entra. Anda sekarang ingin mengirim dua atribut HireDate kustom dan JobCode dari sistem SDM Anda ke titik akhir API provisi masuk. Anda ingin memetakan dua atribut kustom ini ke atribut employeeHireDate Microsoft Entra dan jobTitle.

Langkah 1 - Memperluas skema aplikasi provisi

Dalam langkah ini, kita akan menambahkan dua atribut "HireDate" dan "JobCode" yang bukan bagian dari skema SCIM standar ke aplikasi provisi dan menggunakannya dalam aliran data provisi.

  1. Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Aplikasi.
  2. Telusuri aplikasi Identity>Applications>Enterprise.
  3. Buka aplikasi provisi berbasis API Anda.
  4. Buka bilah Provisi .
  5. Klik tombol Edit Provisi .
  6. Perluas bagian Pemetaan dan klik tautan pemetaan atribut.
    Screenshot of edit attribute mapping.
  7. Gulir ke bawah halaman Pemetaan Atribut. Pilih Tampilkan opsi tingkat lanjut dan klik tautan Edit atribut untuk API . Screenshot of edit API attribute list.
  8. Gulir ke bawah ke akhir halaman Edit Daftar Atribut.
  9. Tambahkan dua atribut berikut ke daftar sebagai ekstensi skema SCIM. Anda dapat menggunakan namespace skema SCIM Anda sendiri.
    urn:ietf:params:scim:schemas:extension:contoso:1.0:User:HireDate
    urn:ietf:params:scim:schemas:extension:contoso:1.0:User:JobCode
    Screenshot of adding custom attributes.
  10. Simpan perubahan Anda

Catatan

Jika Anda hanya ingin menambahkan beberapa atribut tambahan ke aplikasi provisi, gunakan pusat admin Microsoft Entra untuk memperluas skema. Jika Anda ingin menambahkan lebih banyak atribut kustom (katakanlah 20+ atribut), sebaiknya gunakan UpdateSchema mode skrip PowerShell CSV2SCIM yang mengotomatiskan proses manual di atas.

Langkah 2 - Memetakan atribut kustom

Sekarang mari kita tambahkan ekstensi ini ke pemetaan atribut aplikasi provisi.

  1. Klik tautan Tambahkan Pemetaan Baru di halaman Pemetaan atribut. Screenshot of add new mapping.

  2. Petakan atribut ke urn:ietf:params:scim:schemas:extension:contoso:1.0:User:HireDateemployeeHireDate. Klik OK.
    Screenshot of hire date mapping.

  3. Selanjutnya, pilih pemetaan yang ada untuk title dan klik untuk mengedit pemetaan.

  4. Edit pemetaan atribut ke ekspresi yang akan menyertakan urn:ietf:params:scim:schemas:extension:contoso:1.0:User:JobCode sebagai bagian jobTitle dari atribut Microsoft Entra.

      Join("", [title], "(", [urn:ietf:params:scim:schemas:extension:contoso:1.0:User:JobCode], ")")
    

    Screenshot of job title mapping.

    Dengan pemetaan ekspresi ini, jika title adalah "Tour Lead" dan JobCode"TL-1001", maka atribut jobTitle Microsoft Entra akan diatur ke "Tour Lead (TL-1001)".

  5. Simpan pemetaan atribut.

Langkah 3 - Unggah permintaan massal dengan atribut kustom

  1. Buka klien API Anda (Graph Explorer / Postman / cURL).
  2. Salin-tempel permintaan massal dengan atribut kustom.
  3. Kirim permintaan massal ke URL titik akhir API provisi Anda.
    Screenshot of bulk upload request.
  4. Setelah beberapa waktu, Anda dapat memeriksa log provisi untuk memverifikasi perubahan atribut.
    Screenshot of provisioning logs.
  5. Anda juga dapat memverifikasi perubahan di profil pengguna Microsoft Entra. Nilai untuk Employee hire date mencerminkan zona waktu penyewa Anda.
    Screenshot of user profile.

Lampiran

Permintaan massal dengan atribut kustom

Permintaan massal mencakup atribut kustom yang dikonfigurasi dalam langkah-langkah di atas.

Badan permintaan

{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:BulkRequest"],
    "Operations": [
    {
        "method": "POST",
        "bulkId": "701984",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User",
            "urn:ietf:params:scim:schemas:extension:contoso:1.0:User"],
            "externalId": "701984",
            "userName": "bjensen@example.com",
            "name": {
                "formatted": "Ms. Barbara J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Barbara",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Babs Jensen",
            "nickName": "Babs",
            "emails": [
            {
              "value": "bjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "234300 Universal City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91608",
              "country": "USA",
              "formatted": "100 Universal City Plaza\nHollywood, CA 91608 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5555",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Guide",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                "employeeNumber": "701984",
                "costCenter": "4130",
                "organization": "Universal Studios",
                "division": "Theme Park",
                "department": "Tour Operations",
                "manager": {
                  "value": "89607",
                  "displayName": "John Smith"
                 }
            },
            "urn:ietf:params:scim:schemas:extension:contoso:1.0:User": {
                "HireDate": "2021-05-01T00:00:00-05:00",
                "JobCode": "TG-1001"
            }            
        }
    },
    {
        "method": "POST",
        "bulkId": "701985",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User",
            "urn:ietf:params:scim:schemas:extension:contoso:1.0:User"],
            "externalId": "701985",
            "userName": "Kjensen@example.com",
            "name": {
                "formatted": "Ms. Kathy J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Kathy",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Kathy Jensen",
            "nickName": "Kathy",
            "emails": [
            {
              "value": "kjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Oracle City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91618",
              "country": "USA",
              "formatted": "100 Oracle City Plaza\nHollywood, CA 91618 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5545",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Lead",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
              "employeeNumber": "701984",
              "costCenter": "4130",
              "organization": "Universal Studios",
              "division": "Theme Park",
              "department": "Tour Operations",
              "manager": {
                "value": "701984",
                "displayName": "Barbara Jensen"
             }
            },
            "urn:ietf:params:scim:schemas:extension:contoso:1.0:User": {
                "HireDate": "2022-07-15T00:00:00-05:00",
                "JobCode": "TL-1003"
            }            
        }
    }
],
    "failOnErrors": null
}

Langkah berikutnya