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 MICROSOFT Entra ID
  3. Salin semua rentang alamat IP yang tercantum dalam elemen adressPrefixes dan gunakan rentang untuk menyusun 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 yang 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 tentang Workday, lihat Komunitas Workday (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 yang 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 yang diaktifkan Workday mengacu pada proses pengambilan semua identitas dari Workday dan menentukan aturan provisi yang akan diterapkan untuk 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 Get_Workers Workday Web Services 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 yang akan diambil dari Workday. Untuk deskripsi setiap tanda di node Response_Group, lihat dokumentasi API Get_Workers Workday.

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 mencakup jumlah data 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 jumlah 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

Permintaan Get_Workers berikut mengajukan kueri pembaruan manual yang terjadi antara waktu eksekusi terakhir dan 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

Permintaan Get_Workers berikut mengajukan kueri pembaruan tanggal efektif yang terjadi antara waktu eksekusi terakhir dan 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 menampilkan rekrutan tanggal mendatang, permintaan Get_Workers berikut digunakan untuk mengambil informasi tentang rekrutan baru yang akan datang. Atribut WID rekrutan baru digunakan untuk melakukan pencarian dan tanggal efektif diatur ke tanggal dan waktu perekrutan.

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

Get_Workers API dapat menampilkan 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. Dengan demikian, bendera Response_Group ditetapkan dalam 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 No BUSINESS_UNIT
9 Business Unit Hierarchy No BUSINESS_UNIT_HIERARCHY
10 Company Hierarchy No COMPANY_HIERARCHY
11 Cost Center No COST_CENTER
12 Cost Center Hierarchy No COST_CENTER_HIERARCHY
13 Fund No FUND
14 Fund Hierarchy No FUND_HIERARCHY
15 Gift No GIFT
16 Gift Hierarchy No GIFT_HIERARCHY
17 Grant No GRANT
18 Grant Hierarchy No GRANT_HIERARCHY
19 Business Site Hierarchy No BUSINESS_SITE_HIERARCHY
20 Matrix Organization No MATRIX
21 Pay Group No PAY_GROUP
22 Programs No PROGRAMS
23 Program Hierarchy No PROGRAM_HIERARCHY
24 Region No REGION_HIERARCHY
25 Location Hierarchy No LOCATION_HIERARCHY
26 Account Provisioning Data No wd:Worker_Data/wd:Account_Provisioning_Data
27 Background Check Data No wd:Worker_Data/wd:Background_Check_Data
28 Benefit Eligibility Data No wd:Worker_Data/wd:Benefit_Eligibility_Data
29 Benefit Enrollment Data No wd:Worker_Data/wd:Benefit_Enrollment_Data
30 Career Data No wd:Worker_Data/wd:Career_Data
31 Compensation Data No wd:Worker_Data/wd:Compensation_Data
32 Contingent Worker Tax Authority Data No wd:Worker_Data/wd:Contingent_Worker_Tax_Authority_Form_Type_Data
33 Development Item Data No wd:Worker_Data/wd:Development_Item_Data
34 Employee Contracts Data No wd:Worker_Data/wd:Employee_Contracts_Data
35 Employee Review Data No wd:Worker_Data/wd:Employee_Review_Data
36 Feedback Received Data No wd:Worker_Data/wd:Feedback_Received_Data
37 Worker Goal Data No wd:Worker_Data/wd:Worker_Goal_Data
38 Photo Data No wd:Worker_Data/wd:Photo_Data
39 Qualification Data No wd:Worker_Data/wd:Qualification_Data
40 Related Persons Data No wd:Worker_Data/wd:Related_Persons_Data
41 Role Data No wd:Worker_Data/wd:Role_Data
42 Skill Data No wd:Worker_Data/wd:Skill_Data
43 Succession Profile Data No wd:Worker_Data/wd:Succession_Profile_Data
44 Talent Assessment Data No wd:Worker_Data/wd:Talent_Assessment_Data
45 User Account Data No wd:Worker_Data/wd:User_Account_Data
46 Worker Document Data No 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, akses Get diperlukan di 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 aplikasi Identity>Applications>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:Descriptor
    CostCenterFlag 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']/wd:Organization_Data/wd:Organization_Code/text()
    PayGroupFlag 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
    CostCenterName 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()
    CostCenterCode 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()
    PayGroup 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 himpunan 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 untuk pekerja. Informasi ini tersedia sebagai bagian dari himpunan 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 WorkerID (atribut yang cocok) milik John, 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 catatan memiliki WorkerID yang sama tetapi WID 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 WorkerID (atribut yang cocok) milik John, 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. Kemudian, atur nilai XPATH yang benar di aplikasi provisi Workday.
  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

Langkah berikutnya