Bagikan melalui


Cara provisi Microsoft Entra terintegrasi dengan Workday

Layanan provisi pengguna Microsoft Entra terintegrasi dengan Workday HCM untuk mengelola siklus hidup identitas pengguna. MICROSOFT Entra ID menawarkan tiga integrasi bawaan:

Artikel ini menjelaskan cara kerja integrasi dan bagaimana Anda dapat menyesuaikan perilaku provisi untuk skenario HM yang berbeda.

Membangun konektivitas

Membatasi akses API Workday ke titik akhir Microsoft Entra

Layanan provisi Microsoft Entra menggunakan autentikasi dasar untuk menyambungkan ke titik akhir API Workday Web Services.

Untuk lebih mengamankan konektivitas antara layanan provisi Microsoft Entra dan Workday, Anda dapat membatasi akses sehingga pengguna sistem integrasi yang ditunjuk hanya mengakses API Workday dari rentang IP Microsoft Entra yang diizinkan. Minta administrator Workday Anda untuk menyelesaikan konfigurasi berikut di penyewa Workday Anda.

  1. Unduh Rentang IP terbaru untuk Azure Public Cloud.
  2. Buka file dan cari tag AzureActiveDirectory.
  3. Salin semua rentang alamat IP yang tercantum dalam addressPrefixes elemen dan gunakan rentang untuk membangun daftar alamat IP Anda.
  4. Masuk ke portal admin Workday.
  5. Akses tugas Pertahankan Rentang IP untuk membuat rentang IP baru untuk pusat data Azure. Tentukan rentang IP (menggunakan notasi CIDR) sebagai daftar yang dipisahkan koma.
  6. Akses tugas Kelola Kebijakan Autentikasi untuk membuat kebijakan autentikasi baru. Dalam kebijakan autentikasi, gunakan daftar izin autentikasi untuk menentukan rentang IP Microsoft Entra dan grup keamanan yang diizinkan akses dari rentang IP ini. Simpan perubahan.
  7. Akses tugas Aktifkan Semua Perubahan Kebijakan Autentikasi Tertunda untuk mengonfirmasi perubahan.

Membatasi akses ke data pekerja di Workday menggunakan grup keamanan terbatas

Langkah-langkah default untuk mengonfigurasi pengguna sistem integrasi Workday memberikan akses untuk mengambil semua pengguna di penyewa Workday Anda. Dalam skenario integrasi tertentu, Anda mungkin ingin membatasi akses. Misalnya, hanya mengembalikan pengguna di organisasi pengawas tertentu dari Get_Workers panggilan API.

Anda dapat membatasi akses dengan bekerja dengan admin Workday Anda dan mengonfigurasi grup keamanan sistem integrasi yang dibatasi. Untuk informasi selengkapnya, tinjau bagian Get_Workers keamanan kontekstual dalam dokumen Workday Ini Konsep: Dapatkan Panduan Layanan Web SOAP Pekerja (Akses Komunitas Workday diperlukan untuk artikel ini).

Strategi membatasi akses menggunakan ISSG (Kelompok Keamanan Sistem Integrasi) terbatas ini sangat berguna dalam skenario berikut:

  • Skenario peluncuran bertahap: Anda memiliki penyewa Workday besar dan berencana untuk melakukan peluncuran bertahap Workday ke provisi otomatis MICROSOFT Entra ID. Dalam skenario ini, daripada mengecualikan pengguna yang tidak berada dalam cakupan fase saat ini dengan filter cakupan ID Microsoft Entra, kami sarankan untuk mengonfigurasi ISSG yang dibatasi sehingga hanya pekerja dalam cakupan yang terlihat oleh ID Microsoft Entra.
  • Beberapa skenario pekerjaan provisi: Anda memiliki penyewa Workday besar dan beberapa domain AD yang masing-masing mendukung unit bisnis/divisi/perusahaan yang berbeda. Untuk mendukung topologi ini, Anda ingin menjalankan beberapa pekerjaan provisi Workday ke Microsoft Entra dengan setiap pekerjaan yang menyediakan sekumpulan pekerja tertentu. Dalam skenario ini, daripada menggunakan filter cakupan ID Microsoft Entra untuk mengecualikan data pekerja, sebaiknya konfigurasikan ISSG yang dibatasi sehingga hanya data pekerja yang relevan yang terlihat oleh ID Microsoft Entra.

Kueri koneksi uji coba Workday

Untuk menguji konektivitas ke Workday, MICROSOFT Entra ID mengirimkan permintaan Get_Workers Workday Web Services berikut.

<!-- Test connection query tries to retrieve one record from the first page -->
<!-- Replace version with Workday Web Services version present in your connection URL -->
<!-- Replace timestamps with the UTC time corresponding to the test connection event -->
<Get_Workers_Request p1:version="v21.1" xmlns:p1="urn:com.workday/bsvc" xmlns="urn:com.workday/bsvc">
  <p1:Request_Criteria>
    <p1:Transaction_Log_Criteria_Data>
      <p1:Transaction_Date_Range_Data>
        <p1:Updated_From>2021-01-19T02:28:50.1491022Z</p1:Updated_From>
        <p1:Updated_Through>2021-01-19T02:28:50.1491022Z</p1:Updated_Through>
      </p1:Transaction_Date_Range_Data>
    </p1:Transaction_Log_Criteria_Data>
    <p1:Exclude_Employees>true</p1:Exclude_Employees>
    <p1:Exclude_Contingent_Workers>true</p1:Exclude_Contingent_Workers>
    <p1:Exclude_Inactive_Workers>true</p1:Exclude_Inactive_Workers>
  </p1:Request_Criteria>
  <p1:Response_Filter>
    <p1:As_Of_Effective_Date>2021-01-19T02:28:50.1491022Z</p1:As_Of_Effective_Date>
    <p1:As_Of_Entry_DateTime>2021-01-19T02:28:50.1491022Z</p1:As_Of_Entry_DateTime>
    <p1:Page>1</p1:Page>
    <p1:Count>1</p1:Count>
  </p1:Response_Filter>
  <p1:Response_Group>
    <p1:Include_Reference>1</p1:Include_Reference>
    <p1:Include_Personal_Information>1</p1:Include_Personal_Information>
  </p1:Response_Group>
</Get_Workers_Request>

Cara kerja sinkronisasi penuh

Sinkronisasi penuh dalam konteks provisi berbasis Workday mengacu pada proses pengambilan semua identitas dari Workday dan menentukan aturan provisi apa yang akan diterapkan ke setiap objek pekerja. Sinkronisasi penuh terjadi saat Anda mengaktifkan provisi untuk pertama kalinya dan juga saat Anda memulai ulang provisi baik dari pusat admin Microsoft Entra atau menggunakan API Graph.

MICROSOFT Entra ID mengirimkan permintaan Layanan Web Get_Workers Workday berikut untuk mengambil data pekerja. Kueri mencari log transaksi Workday untuk semua entri pekerja bertanggal efektif pada waktu yang sesuai dengan proses sinkronisasi penuh.

<!-- Workday full sync query -->
<!-- Replace version with Workday Web Services version present in your connection URL -->
<!-- Replace timestamps with the UTC time corresponding to full sync run -->
<!-- Count specifies the number of records to return in each page -->
<!-- Response_Group flags derived from provisioning attribute mapping -->

<Get_Workers_Request p1:version="v21.1" xmlns:p1="urn:com.workday/bsvc" xmlns="urn:com.workday/bsvc">
  <p1:Request_Criteria>
    <p1:Transaction_Log_Criteria_Data>
      <p1:Transaction_Type_References>
        <p1:Transaction_Type_Reference>
          <p1:ID p1:type="Business_Process_Type">Hire Employee</p1:ID>
        </p1:Transaction_Type_Reference>
        <p1:Transaction_Type_Reference>
          <p1:ID p1:type="Business_Process_Type">Contract Contingent Worker</p1:ID>
        </p1:Transaction_Type_Reference>
      </p1:Transaction_Type_References>
    </p1:Transaction_Log_Criteria_Data>
  </p1:Request_Criteria>
  <p1:Response_Filter>
    <p1:As_Of_Effective_Date>2021-01-19T02:29:16.0094202Z</p1:As_Of_Effective_Date>
    <p1:As_Of_Entry_DateTime>2021-01-19T02:29:16.0094202Z</p1:As_Of_Entry_DateTime>
    <p1:Count>30</p1:Count>
  </p1:Response_Filter>
  <p1:Response_Group>
    <p1:Include_Reference>1</p1:Include_Reference>
    <p1:Include_Personal_Information>1</p1:Include_Personal_Information>
    <p1:Include_Employment_Information>1</p1:Include_Employment_Information>
    <p1:Include_Organizations>1</p1:Include_Organizations>
    <p1:Exclude_Organization_Support_Role_Data>1</p1:Exclude_Organization_Support_Role_Data>
    <p1:Exclude_Location_Hierarchies>1</p1:Exclude_Location_Hierarchies>
    <p1:Exclude_Cost_Center_Hierarchies>1</p1:Exclude_Cost_Center_Hierarchies>
    <p1:Exclude_Company_Hierarchies>1</p1:Exclude_Company_Hierarchies>
    <p1:Exclude_Matrix_Organizations>1</p1:Exclude_Matrix_Organizations>
    <p1:Exclude_Pay_Groups>1</p1:Exclude_Pay_Groups>
    <p1:Exclude_Regions>1</p1:Exclude_Regions>
    <p1:Exclude_Region_Hierarchies>1</p1:Exclude_Region_Hierarchies>
    <p1:Exclude_Funds>1</p1:Exclude_Funds>
    <p1:Exclude_Fund_Hierarchies>1</p1:Exclude_Fund_Hierarchies>
    <p1:Exclude_Grants>1</p1:Exclude_Grants>
    <p1:Exclude_Grant_Hierarchies>1</p1:Exclude_Grant_Hierarchies>
    <p1:Exclude_Business_Units>1</p1:Exclude_Business_Units>
    <p1:Exclude_Business_Unit_Hierarchies>1</p1:Exclude_Business_Unit_Hierarchies>
    <p1:Exclude_Programs>1</p1:Exclude_Programs>
    <p1:Exclude_Program_Hierarchies>1</p1:Exclude_Program_Hierarchies>
    <p1:Exclude_Gifts>1</p1:Exclude_Gifts>
    <p1:Exclude_Gift_Hierarchies>1</p1:Exclude_Gift_Hierarchies>
    <p1:Include_Management_Chain_Data>1</p1:Include_Management_Chain_Data>
    <p1:Include_Transaction_Log_Data>1</p1:Include_Transaction_Log_Data>
    <p1:Include_Additional_Jobs>1</p1:Include_Additional_Jobs>
  </p1:Response_Group>
</Get_Workers_Request>

Simpul Response_Group digunakan untuk menentukan atribut pekerja mana yang akan diambil dari Workday. Untuk deskripsi setiap bendera dalam simpul Response_Group , lihat dokumentasi Workday Get_Workers API.

Nilai bendera tertentu yang ditentukan dalam simpul Response_Group dihitung berdasarkan atribut yang dikonfigurasi dalam aplikasi provisi Workday Microsoft Entra. Lihat bagian tentang Entitas yang didukung untuk kriteria yang digunakan untuk mengatur nilai bendera.

Respons Get_Workers dari Workday untuk kueri di atas menyertakan jumlah rekaman pekerja dan jumlah halaman.

  <wd:Response_Results>
    <wd:Total_Results>509</wd:Total_Results>
    <wd:Total_Pages>17</wd:Total_Pages>
    <wd:Page_Results>30</wd:Page_Results>
    <wd:Page>1</wd:Page>
  </wd:Response_Results>

Untuk mengambil halaman berikutnya dari kumpulan hasil, kueri Get_Workers berikutnya menentukan nomor halaman sebagai parameter dalam Response_Filter.

  <p1:Response_Filter>
    <p1:As_Of_Effective_Date>2021-01-19T02:29:16.0094202Z</p1:As_Of_Effective_Date>
    <p1:As_Of_Entry_DateTime>2021-01-19T02:29:16.0094202Z</p1:As_Of_Entry_DateTime>
    <p1:Page>2</p1:Page>
    <p1:Count>30</p1:Count>
  </p1:Response_Filter>

Layanan provisi Microsoft Entra memproses setiap halaman dan melakukan iterasi melalui semua pekerja yang efektif selama sinkronisasi penuh. Untuk setiap entri pekerja yang diimpor dari Workday:

  • Ekspresi XPATH diterapkan untuk mengambil nilai atribut dari Workday.
  • Pemetaan atribut dan aturan pencocokan diterapkan dan
  • Layanan menentukan operasi apa yang harus dilakukan dalam target (Microsoft Entra ID / Active Directory).

Setelah pemrosesan selesai, tanda waktu yang terkait dengan awal sinkronisasi penuh disimpan sebagai cap air. Tanda air ini berfungsi sebagai titik awal untuk siklus sinkronisasi bertahap.

Cara kerja sinkronisasi bertahap

Setelah sinkronisasi penuh, layanan provisi Microsoft Entra mempertahankan LastExecutionTimestamp dan menggunakannya untuk membuat kueri delta untuk mengambil perubahan inkremental. Selama sinkronisasi inkremental, MICROSOFT Entra ID mengirimkan jenis kueri berikut ke Workday:

Kueri untuk pembaruan manual

Kueri permintaan Get_Workers berikut untuk pembaruan manual yang terjadi antara eksekusi terakhir dan waktu eksekusi saat ini.

<!-- Workday incremental sync query for manual updates -->
<!-- Replace version with Workday Web Services version present in your connection URL -->
<!-- Replace timestamps with the UTC time corresponding to last execution and current execution time -->
<!-- Count specifies the number of records to return in each page -->
<!-- Response_Group flags derived from provisioning attribute mapping -->

<Get_Workers_Request p1:version="v21.1" xmlns:p1="urn:com.workday/bsvc" xmlns="urn:com.workday/bsvc">
  <p1:Request_Criteria>
    <p1:Transaction_Log_Criteria_Data>
      <p1:Transaction_Date_Range_Data>
        <p1:Updated_From>2021-01-19T02:29:16.0094202Z</p1:Updated_From>
        <p1:Updated_Through>2021-01-19T02:49:06.290136Z</p1:Updated_Through>
      </p1:Transaction_Date_Range_Data>
    </p1:Transaction_Log_Criteria_Data>
  </p1:Request_Criteria>
  <p1:Response_Filter>
    <p1:As_Of_Effective_Date>2021-01-19T02:49:06.290136Z</p1:As_Of_Effective_Date>
    <p1:As_Of_Entry_DateTime>2021-01-19T02:49:06.290136Z</p1:As_Of_Entry_DateTime>
    <p1:Count>30</p1:Count>
  </p1:Response_Filter>
  <p1:Response_Group>
    <p1:Include_Reference>1</p1:Include_Reference>
    <p1:Include_Personal_Information>1</p1:Include_Personal_Information>
    <p1:Include_Employment_Information>1</p1:Include_Employment_Information>
    <p1:Include_Organizations>1</p1:Include_Organizations>
    <p1:Exclude_Organization_Support_Role_Data>1</p1:Exclude_Organization_Support_Role_Data>
    <p1:Exclude_Location_Hierarchies>1</p1:Exclude_Location_Hierarchies>
    <p1:Exclude_Cost_Center_Hierarchies>1</p1:Exclude_Cost_Center_Hierarchies>
    <p1:Exclude_Company_Hierarchies>1</p1:Exclude_Company_Hierarchies>
    <p1:Exclude_Matrix_Organizations>1</p1:Exclude_Matrix_Organizations>
    <p1:Exclude_Pay_Groups>1</p1:Exclude_Pay_Groups>
    <p1:Exclude_Regions>1</p1:Exclude_Regions>
    <p1:Exclude_Region_Hierarchies>1</p1:Exclude_Region_Hierarchies>
    <p1:Exclude_Funds>1</p1:Exclude_Funds>
    <p1:Exclude_Fund_Hierarchies>1</p1:Exclude_Fund_Hierarchies>
    <p1:Exclude_Grants>1</p1:Exclude_Grants>
    <p1:Exclude_Grant_Hierarchies>1</p1:Exclude_Grant_Hierarchies>
    <p1:Exclude_Business_Units>1</p1:Exclude_Business_Units>
    <p1:Exclude_Business_Unit_Hierarchies>1</p1:Exclude_Business_Unit_Hierarchies>
    <p1:Exclude_Programs>1</p1:Exclude_Programs>
    <p1:Exclude_Program_Hierarchies>1</p1:Exclude_Program_Hierarchies>
    <p1:Exclude_Gifts>1</p1:Exclude_Gifts>
    <p1:Exclude_Gift_Hierarchies>1</p1:Exclude_Gift_Hierarchies>
    <p1:Include_Management_Chain_Data>1</p1:Include_Management_Chain_Data>
    <p1:Include_Additional_Jobs>1</p1:Include_Additional_Jobs>
  </p1:Response_Group>
</Get_Workers_Request>

Kueri untuk pembaruan dan penghentian tanggal efektif

Kueri permintaan Get_Workers berikut untuk pembaruan tanggal efektif yang terjadi antara eksekusi terakhir dan waktu eksekusi saat ini.

<!-- Workday incremental sync query for effective-dated updates -->
<!-- Replace version with Workday Web Services version present in your connection URL -->
<!-- Replace timestamps with the UTC time corresponding to last execution and current execution time -->
<!-- Count specifies the number of records to return in each page -->
<!-- Response_Group flags derived from provisioning attribute mapping -->

<Get_Workers_Request p1:version="v21.1" xmlns:p1="urn:com.workday/bsvc" xmlns="urn:com.workday/bsvc">
  <p1:Request_Criteria>
    <p1:Transaction_Log_Criteria_Data>
      <p1:Transaction_Date_Range_Data>
        <p1:Effective_From>2021-01-19T02:29:16.0094202Z</p1:Effective_From>
        <p1:Effective_Through>2021-01-19T02:49:06.290136Z</p1:Effective_Through>
      </p1:Transaction_Date_Range_Data>
    </p1:Transaction_Log_Criteria_Data>
  </p1:Request_Criteria>
  <p1:Response_Filter>
    <p1:As_Of_Effective_Date>2021-01-19T02:49:06.290136Z</p1:As_Of_Effective_Date>
    <p1:As_Of_Entry_DateTime>2021-01-19T02:49:06.290136Z</p1:As_Of_Entry_DateTime>
    <p1:Page>1</p1:Page>
    <p1:Count>30</p1:Count>
  </p1:Response_Filter>
  <p1:Response_Group>
    <p1:Include_Reference>1</p1:Include_Reference>
    <p1:Include_Personal_Information>1</p1:Include_Personal_Information>
    <p1:Include_Employment_Information>1</p1:Include_Employment_Information>
    <p1:Include_Organizations>1</p1:Include_Organizations>
    <p1:Exclude_Organization_Support_Role_Data>1</p1:Exclude_Organization_Support_Role_Data>
    <p1:Exclude_Location_Hierarchies>1</p1:Exclude_Location_Hierarchies>
    <p1:Exclude_Cost_Center_Hierarchies>1</p1:Exclude_Cost_Center_Hierarchies>
    <p1:Exclude_Company_Hierarchies>1</p1:Exclude_Company_Hierarchies>
    <p1:Exclude_Matrix_Organizations>1</p1:Exclude_Matrix_Organizations>
    <p1:Exclude_Pay_Groups>1</p1:Exclude_Pay_Groups>
    <p1:Exclude_Regions>1</p1:Exclude_Regions>
    <p1:Exclude_Region_Hierarchies>1</p1:Exclude_Region_Hierarchies>
    <p1:Exclude_Funds>1</p1:Exclude_Funds>
    <p1:Exclude_Fund_Hierarchies>1</p1:Exclude_Fund_Hierarchies>
    <p1:Exclude_Grants>1</p1:Exclude_Grants>
    <p1:Exclude_Grant_Hierarchies>1</p1:Exclude_Grant_Hierarchies>
    <p1:Exclude_Business_Units>1</p1:Exclude_Business_Units>
    <p1:Exclude_Business_Unit_Hierarchies>1</p1:Exclude_Business_Unit_Hierarchies>
    <p1:Exclude_Programs>1</p1:Exclude_Programs>
    <p1:Exclude_Program_Hierarchies>1</p1:Exclude_Program_Hierarchies>
    <p1:Exclude_Gifts>1</p1:Exclude_Gifts>
    <p1:Exclude_Gift_Hierarchies>1</p1:Exclude_Gift_Hierarchies>
    <p1:Include_Management_Chain_Data>1</p1:Include_Management_Chain_Data>
    <p1:Include_Additional_Jobs>1</p1:Include_Additional_Jobs>
  </p1:Response_Group>
</Get_Workers_Request>

Kueri untuk rekrutan tanggal mendatang

Jika salah satu kueri di atas mengembalikan sewa tanggal mendatang, permintaan Get_Workers berikut digunakan untuk mengambil informasi tentang karyawan baru yang akan datang. Atribut WID dari perekrutan baru digunakan untuk melakukan pencarian dan tanggal efektif diatur ke tanggal dan waktu sewa.

Catatan

Karyawan masa depan di Workday memiliki bidang Aktif yang diatur ke "0" dan berubah menjadi "1" pada tanggal perekrutan. Konektor dirancang untuk mengkueri informasi perekrutan di masa depan efektif pada tanggal perekrutan dan itulah sebabnya konektor tersebut selalu mendapatkan profil Pekerja perekrutan di masa depan dengan bidang Aktif diatur ke "1". Ini memungkinkan Anda menyiapkan profil Microsoft Entra untuk karyawan di masa mendatang terlebih dahulu dengan semua informasi yang tepat yang telah diisi sebelumnya. Jika Anda ingin menunda pengaktifan akun Microsoft Entra untuk karyawan di masa mendatang, gunakan fungsi transformasi DateDiff.

<!-- Workday incremental sync query to get new hire data effective as on hire date/first day of work -->
<!-- Replace version with Workday Web Services version present in your connection URL -->
<!-- Replace timestamps hire date/first day of work -->
<!-- Count specifies the number of records to return in each page -->
<!-- Response_Group flags derived from provisioning attribute mapping -->

<Get_Workers_Request p1:version="v21.1" xmlns:p1="urn:com.workday/bsvc" xmlns="urn:com.workday/bsvc">
  <p1:Request_References>
    <p1:Worker_Reference>
      <p1:ID p1:type="WID">7bf6322f1ea101fd0b4433077f09cb04</p1:ID>
    </p1:Worker_Reference>
  </p1:Request_References>
  <p1:Response_Filter>
    <p1:As_Of_Effective_Date>2021-02-01T08:00:00+00:00</p1:As_Of_Effective_Date>
    <p1:As_Of_Entry_DateTime>2021-02-01T08:00:00+00:00</p1:As_Of_Entry_DateTime>
    <p1:Count>30</p1:Count>
  </p1:Response_Filter>
  <p1:Response_Group>
    <p1:Include_Reference>1</p1:Include_Reference>
    <p1:Include_Personal_Information>1</p1:Include_Personal_Information>
    <p1:Include_Employment_Information>1</p1:Include_Employment_Information>
    <p1:Include_Organizations>1</p1:Include_Organizations>
    <p1:Exclude_Organization_Support_Role_Data>1</p1:Exclude_Organization_Support_Role_Data>
    <p1:Exclude_Location_Hierarchies>1</p1:Exclude_Location_Hierarchies>
    <p1:Exclude_Cost_Center_Hierarchies>1</p1:Exclude_Cost_Center_Hierarchies>
    <p1:Exclude_Company_Hierarchies>1</p1:Exclude_Company_Hierarchies>
    <p1:Exclude_Matrix_Organizations>1</p1:Exclude_Matrix_Organizations>
    <p1:Exclude_Pay_Groups>1</p1:Exclude_Pay_Groups>
    <p1:Exclude_Regions>1</p1:Exclude_Regions>
    <p1:Exclude_Region_Hierarchies>1</p1:Exclude_Region_Hierarchies>
    <p1:Exclude_Funds>1</p1:Exclude_Funds>
    <p1:Exclude_Fund_Hierarchies>1</p1:Exclude_Fund_Hierarchies>
    <p1:Exclude_Grants>1</p1:Exclude_Grants>
    <p1:Exclude_Grant_Hierarchies>1</p1:Exclude_Grant_Hierarchies>
    <p1:Exclude_Business_Units>1</p1:Exclude_Business_Units>
    <p1:Exclude_Business_Unit_Hierarchies>1</p1:Exclude_Business_Unit_Hierarchies>
    <p1:Exclude_Programs>1</p1:Exclude_Programs>
    <p1:Exclude_Program_Hierarchies>1</p1:Exclude_Program_Hierarchies>
    <p1:Exclude_Gifts>1</p1:Exclude_Gifts>
    <p1:Exclude_Gift_Hierarchies>1</p1:Exclude_Gift_Hierarchies>
    <p1:Include_Management_Chain_Data>1</p1:Include_Management_Chain_Data>
    <p1:Include_Additional_Jobs>1</p1:Include_Additional_Jobs>
  </p1:Response_Group>
</Get_Workers_Request>

Mengambil atribut data pekerja

API Get_Workers dapat mengembalikan himpunan data yang berbeda yang terkait dengan pekerja. Bergantung pada ekspresi XPATH API yang dikonfigurasi dalam skema provisi, layanan provisi Microsoft Entra menentukan himpunan data mana yang akan diambil dari Workday. Oleh karena itu, bendera Response_Group diatur dalam permintaan Get_Workers .

Tabel ini menyediakan panduan tentang konfigurasi pemetaan yang akan digunakan untuk mengambil himpunan data tertentu.

# Entitas Workday Disertakan secara default Pola XPATH untuk ditentukan dalam pemetaan untuk mengambil entitas nondefault
1 Personal Data Ya wd:Worker_Data/wd:Personal_Data
2 Employment Data Ya wd:Worker_Data/wd:Employment_Data
3 Additional Job Data Ya wd:Worker_Data/wd:Employment_Data/wd:Worker_Job_Data[@wd:Primary_Job=0]
4 Organization Data Ya wd:Worker_Data/wd:Organization_Data
5 Management Chain Data Ya wd:Worker_Data/wd:Management_Chain_Data
6 Supervisory Organization Ya SUPERVISORY
7 Company Ya COMPANY
8 Business Unit Tidak. BUSINESS_UNIT
9 Business Unit Hierarchy Tidak. BUSINESS_UNIT_HIERARCHY
10 Company Hierarchy Tidak. COMPANY_HIERARCHY
11 Cost Center Tidak. COST_CENTER
12 Cost Center Hierarchy Tidak. COST_CENTER_HIERARCHY
13 Fund Tidak. FUND
14 Fund Hierarchy Tidak. FUND_HIERARCHY
15 Gift Tidak. GIFT
16 Gift Hierarchy Tidak. GIFT_HIERARCHY
17 Grant Tidak. GRANT
18 Grant Hierarchy Tidak. GRANT_HIERARCHY
19 Business Site Hierarchy Tidak. BUSINESS_SITE_HIERARCHY
20 Matrix Organization Tidak. MATRIX
21 Pay Group Tidak. PAY_GROUP
22 Programs Tidak. PROGRAMS
Dua puluh tiga Program Hierarchy Tidak. PROGRAM_HIERARCHY
24 Region Tidak. REGION_HIERARCHY
Dua puluh lima Location Hierarchy Tidak. LOCATION_HIERARCHY
26 Account Provisioning Data Tidak. wd:Worker_Data/wd:Account_Provisioning_Data
27 Background Check Data Tidak. wd:Worker_Data/wd:Background_Check_Data
28 Benefit Eligibility Data Tidak. wd:Worker_Data/wd:Benefit_Eligibility_Data
29 Benefit Enrollment Data Tidak. wd:Worker_Data/wd:Benefit_Enrollment_Data
30 Career Data Tidak. wd:Worker_Data/wd:Career_Data
31 Compensation Data Tidak. wd:Worker_Data/wd:Compensation_Data
32 Contingent Worker Tax Authority Data Tidak. wd:Worker_Data/wd:Contingent_Worker_Tax_Authority_Form_Type_Data
33 Development Item Data Tidak. wd:Worker_Data/wd:Development_Item_Data
34 Employee Contracts Data Tidak. wd:Worker_Data/wd:Employee_Contracts_Data
35 Employee Review Data Tidak. wd:Worker_Data/wd:Employee_Review_Data
36 Feedback Received Data Tidak. wd:Worker_Data/wd:Feedback_Received_Data
37 Worker Goal Data Tidak. wd:Worker_Data/wd:Worker_Goal_Data
38 Photo Data Tidak. wd:Worker_Data/wd:Photo_Data
39 Qualification Data Tidak. wd:Worker_Data/wd:Qualification_Data
40 Related Persons Data Tidak. wd:Worker_Data/wd:Related_Persons_Data
41 Role Data Tidak. wd:Worker_Data/wd:Role_Data
42 Skill Data Tidak. wd:Worker_Data/wd:Skill_Data
43 Succession Profile Data Tidak. wd:Worker_Data/wd:Succession_Profile_Data
44 Talent Assessment Data Tidak. wd:Worker_Data/wd:Talent_Assessment_Data
45 User Account Data Tidak. wd:Worker_Data/wd:User_Account_Data
46 Worker Document Data Tidak. wd:Worker_Data/wd:Worker_Document_Data

Catatan

Setiap entitas Workday yang tercantum dalam tabel dilindungi oleh Kebijakan Keamanan Domain di Workday. Jika Anda tidak dapat mengambil atribut apa pun yang terkait dengan entitas setelah mengatur XPATH yang tepat, tanyakan admin Workday Anda untuk memastikan bahwa kebijakan keamanan domain yang sesuai dikonfigurasi untuk pengguna sistem integrasi yang terkait dengan aplikasi provisi. Misalnya, untuk mengambil data Keterampilan, Dapatkan akses diperlukan pada domain Workday Data Pekerja: Keterampilan dan Pengalaman.

Berikut beberapa contoh tentang bagaimana Anda dapat memperluas integrasi Workday untuk memenuhi persyaratan tertentu.

Contoh 1: Mengambil informasi pusat biaya dan grup pembayaran

Misalkan Anda ingin mengambil himpunan data berikut dari Workday dan menggunakannya dalam aturan provisi Anda:

  • Pusat biaya
  • Hierarki pusat biaya
  • Grup Pembayaran

Himpunan data di atas tidak disertakan secara default. Untuk mengambil himpunan data ini:

  1. Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Aplikasi.

  2. Telusuri ke aplikasi Entra ID>Enterprise.

  3. Pilih aplikasi provisi pengguna Workday to Active Directory / Microsoft Entra Anda.

  4. Pilih Provisi.

  5. Edit pemetaan dan buka daftar atribut Workday dari bagian tingkat lanjut.

  6. Tambahkan definisi atribut berikut dan tandai sebagai "Diperlukan". Atribut ini tidak dipetakan ke atribut apa pun di Direktori Aktif atau ID Microsoft Entra. Mereka berfungsi sebagai sinyal ke konektor untuk mengambil informasi Cost Center, Cost Center Hierarchy, dan Pay Group.

    Nama Atribut Ekspresi XPATH API
    CostCenterHierarchyFlag wd:Worker/wd:Worker_Data/wd:Organization_Data/wd:Worker_Organization_Data[wd:Organization_Data/wd:Organization_Type_Reference/wd:ID[@wd:type='Organization_Type_ID']='COST_CENTER_HIERARCHY']/wd:Organization_Reference/@wd:Deskriptor
    Bendera Pusat Biaya wd:Pekerja/wd:Worker_Data/wd:Organization_Data/wd:Worker_Organization_Data[wd:Organization_Data/wd:Organization_Type_Reference/wd:ID[@wd:type='Organization_Type_ID']='COST_CENTER']/wd:Organization_Data/wd:Organization_Code/text()
    Bendera PayGroupGrup wd:Worker/wd:Worker_Data/wd:Organization_Data/wd:Worker_Organization_Data[wd:Organization_Data/wd:Organization_Type_Reference/wd:ID[@wd:type='Organization_Type_ID']='PAY_GROUP']/wd:Organization_Data/wd:Organization_Reference_ID/text()
  7. Setelah himpunan data Cost Center dan Pay Group tersedia dalam respons Get_Workers , Anda dapat menggunakan nilai XPATH untuk mengambil nama pusat biaya, kode pusat biaya, dan grup pembayaran.

    Nama Atribut Ekspresi XPATH API
    Nama Pusat Biaya wd:Worker/wd:Worker_Data/wd:Organization_Data/wd:Worker_Organization_Data/wd:Organization_Data[wd:Organization_Type_Reference/@wd:Descriptor='Cost Center']/wd:Organization_Name/text()
    Kode Pusat Biaya wd:Worker/wd:Worker_Data/wd:Organization_Data/wd:Worker_Organization_Data/wd:Organization_Data[wd:Organization_Type_Reference/@wd:Descriptor='Cost Center']/wd:Organization_Code/text()
    Grup Pembayaran wd:Worker/wd:Worker_Data/wd:Organization_Data/wd:Worker_Organization_Data/wd:Organization_Data[wd:Organization_Type_Reference/@wd:Descriptor='Pay Group']/wd:Organization_Name/text()

Contoh 2: Mengambil data kualifikasi dan keterampilan

Katakanlah Anda ingin mengambil sertifikasi yang terkait dengan pengguna. Informasi ini tersedia sebagai bagian dari kumpulan Data Kualifikasi . Untuk mendapatkan himpunan data ini sebagai bagian dari respons Get_Workers , gunakan XPATH berikut:

wd:Worker/wd:Worker_Data/wd:Qualification_Data/wd:Certification/wd:Certification_Data/wd:Issuer/text()

Contoh 3: Mengambil penetapan grup penyediaan

Katakanlah Anda ingin mengambil Grup Provisi yang ditetapkan ke pekerja. Informasi ini tersedia sebagai bagian dari kumpulan Data Provisi Akun . Untuk mendapatkan data ini, sebagai bagian dari respons Get_Workers , gunakan XPATH berikut:

wd:Worker/wd:Worker_Data/wd:Account_Provisioning_Data/wd:Provisioning_Group_Assignment_Data[wd:Status='Assigned']/wd:Provisioning_Group/text()

Menangani skenario HR yang berbeda

Bagian ini membahas cara menyesuaikan aplikasi provisi untuk skenario HR berikut:

Dukungan untuk perubahan pekerja

Bagian ini menjelaskan dukungan layanan provisi Microsoft Entra untuk skenario ketika pekerja mengonversi dari karyawan penuh waktu (FTE) ke pekerja kontingen (CW) atau sebaliknya. Tergantung pada bagaimana konversi pekerja diproses di Workday, mungkin ada beberapa aspek penerapan untuk dipertimbangkan.

Skenario 1: Konversi mundur dari FTE ke CW atau sebaliknya

Tim SDM Anda dapat mendukung transaksi konversi pekerja di Workday karena alasan bisnis yang valid. Contohnya termasuk pemrosesan penggajian, kepatuhan anggaran, persyaratan hukum, dan manajemen manfaat. Berikut adalah contoh untuk mengilustrasikan bagaimana provisi ditangani untuk skenario.

  • Ini 15 Januari 2023 dan Jane Doe dipekerjakan sebagai pekerja kontingen. HR menawarkan Jane posisi penuh waktu.
  • Ketentuan perubahan kontrak Jane memerlukan tanggal mundur transaksi sehingga selaras dengan awal bulan ini. HR memulai transaksi konversi pekerja yang didukung Workday pada 15 Januari 2023 dengan tanggal efektif per 1 Januari 2023. Sekarang ada dua profil pekerja di Workday untuk Jane. Profil CW tidak aktif, sedangkan profil FTE aktif.
  • Layanan provisi Microsoft Entra mendeteksi perubahan ini dalam log transaksi Workday pada 15 Januari 2023. Layanan secara otomatis menyediakan atribut profil FTE baru di siklus sinkronisasi berikutnya.
  • Tidak ada perubahan yang diperlukan dalam konfigurasi aplikasi provisi untuk menghandel skenario ini.

Skenario 2: Pekerja yang bekerja sebagai CW/FTE hari ini, perubahan pada FTE/CW hari ini

Skenario ini mirip dengan skenario di atas, kecuali bahwa alih-alih mendukung transaksi mundur, HR melakukan konversi pekerja yang langsung efektif. Layanan provisi Microsoft Entra mendeteksi perubahan ini dalam log transaksi Workday. Dalam siklus sinkronisasi berikutnya, layanan secara otomatis memprovisikan atribut terkait dengan profil FTE aktif. Tidak ada perubahan yang diperlukan dalam konfigurasi aplikasi provisi untuk menghandel skenario ini.

Skenario 3: Pekerja yang dipekerjakan sebagai CW/FTE diberhentikan, bergabung kembali sebagai FTE/CW setelah kesenjangan yang signifikan

Sudah umum bagi pekerja untuk mulai bekerja di sebuah perusahaan sebagai pekerja tidak tetap, meninggalkan perusahaan dan kemudian bergabung kembali setelah beberapa bulan sebagai karyawan tetap. Berikut adalah contoh untuk mengilustrasikan bagaimana provisi dihandel untuk skenario ini.

  • Ini 1 Januari 2023 dan John Smith mulai bekerja sebagai pekerja kontingen. Karena tidak ada akun AD yang terkait dengan John's WorkerID (atribut pencocokan), layanan provisi membuat akun AD baru dan menautkan WID (WorkdayID) pekerja kontingen John ke akun AD John.
  • Kontrak John berakhir pada 31 Januari 2023. Dalam siklus provisi yang berjalan setelah akhir hari 31 Januari, akun AD John dinonaktifkan.
  • John mendaftar untuk posisi lain dan memutuskan untuk bergabung kembali dengan perusahaan sebagai karyawan penuh waktu yang berlaku mulai 1 Mei 2023. HR memasukkan informasi John sebagai karyawan prasejarah pada 15 April 2023. Sekarang ada dua profil pekerja di Workday untuk John. Profil CW tidak aktif, sedangkan profil FTE aktif. Kedua rekaman memiliki WorkerID yang sama tetapi WIDyang berbeda.
  • Pada 15 April, selama siklus bertahap, layanan provisi Microsoft Entra secara otomatis mentransfer kepemilikan akun AD ke profil pekerja aktif. Dalam hal ini, ini membatalkan tautan profil pekerja kontingen dari akun AD dan membuat tautan baru antara profil pekerja karyawan aktif John dan akun AD John.
  • Tidak ada perubahan yang diperlukan dalam konfigurasi aplikasi provisi untuk menghandel skenario ini.

Skenario 4: Konversi tanggal mendatang, ketika pekerja adalah CW/FTE aktif

Terkadang, seorang pekerja mungkin sudah menjadi pekerja kontingen aktif, ketika HR memulai transaksi konversi pekerja di masa mendatang. Berikut adalah contoh untuk menggambarkan bagaimana provisi dihandel untuk skenario ini dan perubahan konfigurasi apa yang diperlukan untuk mendukung skenario ini.

  • Ini 1 Januari 2023 dan John Smith mulai bekerja sebagai pekerja kontingen. Karena tidak ada akun AD yang terkait dengan John's WorkerID (atribut pencocokan), layanan provisi membuat akun AD baru dan menautkan WID (WorkdayID) pekerja kontingen John ke akun AD John.

  • Pada 15 Januari, HR memulai transaksi untuk mengonversi John dari pekerja kontingen menjadi karyawan penuh waktu yang berlaku 1 Februari 2023.

  • Karena layanan provisi Microsoft Entra secara otomatis memproses karyawan yang akan datang, layanan ini memproses profil pekerja karyawan penuh waktu baru John pada 15 Januari, dan memperbarui profil John di AD dengan detail pekerjaan penuh waktu meskipun dia masih pekerja kontingen.

  • Untuk menghindari perilaku ini dan memastikan bahwa detail FTE John diprovisikan pada 1 Februari 2023, lakukan perubahan konfigurasi berikut.

    Perubahan konfigurasi

    1. Libatkan admin Workday Anda untuk membuat grup provisi yang disebut "Konversi tanggal mendatang".
    2. Terapkan logika di Workday untuk menambahkan catatan karyawan/pekerja kontingen dengan konversi tanggal mendatang ke grup provisi ini.
    3. Perbarui aplikasi provisi Microsoft Entra untuk membaca grup provisi ini. Lihat instruksi di sini tentang cara mengambil grup provisi
    4. Buat filter cakupan di ID Microsoft Entra untuk mengecualikan profil pekerja yang merupakan bagian dari grup provisi ini.
    5. Di Workday, terapkan logika sehingga ketika tanggal konversi efektif, Workday menghapus catatan karyawan/pekerja kontingen yang relevan dari grup provisi di Workday.
    6. Dengan konfigurasi ini, catatan pekerja karyawan/kontingen yang ada terus efektif dan perubahan provisi hanya terjadi pada hari konversi.

Catatan

Selama sinkronisasi penuh awal, Anda mungkin melihat perilaku di mana nilai atribut yang terkait dengan alur profil pekerja tidak aktif sebelumnya ke akun AD pekerja yang berubah. Ini bersifat sementara dan seiring berjalannya sinkronisasi penuh, akhirnya akan ditimpa oleh nilai atribut dari profil pekerja aktif. Setelah sinkronisasi penuh selesai dan pekerjaan provisi mencapai status stabil, ia selalu memilih profil pekerja aktif selama sinkronisasi inkremental.

Mengambil tugas pekerjaan internasional dan detail pekerjaan sekunder

Secara default, konektor Workday mengambil atribut yang terkait dengan pekerjaan utama pekerja. Konektor juga mendukung pengambilan yang Additional Job Data terkait dengan tugas pekerjaan internasional atau pekerjaan sekunder.

Gunakan langkah-langkah untuk mengambil atribut yang terkait dengan penetapan pekerjaan internasional:

  1. Atur URL koneksi Workday menggunakan Workday Web Service API versi 30.0 atau yang lebih baru. Dengan demikian, atur nilai XPATH yang benar di aplikasi provisi Workday Anda.
  2. Gunakan pemilih @wd:Primary_Job=0 di simpul Worker_Job_Data untuk mengambil atribut yang benar.
    • Contoh 1: Untuk mendapatkan SecondaryBusinessTitle, gunakan XPATH wd:Worker/wd:Worker_Data/wd:Employment_Data/wd:Worker_Job_Data[@wd:Primary_Job=0]/wd:Position_Data/wd:Business_Title/text()
    • Contoh 2: Untuk mendapatkan SecondaryBusinessLocation, gunakan XPATH wd:Worker/wd:Worker_Data/wd:Employment_Data/wd:Worker_Job_Data[@wd:Primary_Job=0]/wd:Position_Data/wd:Business_Site_Summary_Data/wd:Location_Reference/@wd:Descriptor

Pembatasan yang diketahui

Bagian ini mencantumkan batasan saat ini yang diketahui yang mungkin dialami pelanggan dalam integrasi Workday mereka.

  1. Konektor tidak mendukung pengambilan bidang terhitung Workday.
  2. Konektor tidak mendukung sinkronisasi foto dari Workday.
  3. Konektor tidak mendukung pengambilan lanjutan pekerja yang hari terakhir pekerjaannya jatuh tempo.
  4. Konektor tidak didukung di penyewa Microsoft yang dioperasikan oleh 21Vianet (Tiongkok).
  5. Selama sinkronisasi inkremental, mungkin ada keterlambatan dalam memproses peristiwa penghentian untuk pekerja yang terletak di wilayah Asia Pasifik dan Australia/Selandia Baru.

Langkah berikutnya