次の方法で共有


ライフサイクル ワークフローの属性を同期する方法

ワークフローには特定のタスクが含まれており、指定した実行条件に基づいてユーザーに対して自動的に実行できます。 自動ワークフローのスケジュールは、Microsoft Entra ID の employeeHireDate および employeeLeaveDateTime ユーザー属性に基づいてサポートされます。

ライフサイクル ワークフローを最大限に活用するには、ユーザー プロビジョニングを自動化し、スケジュール関連の属性を同期する必要があります。

スケジュール関連の属性

次の表では、スケジュール (トリガー) 関連の属性と、サポートされている同期の方法を示します。

属性 HR インバウンド プロビジョニングでのサポート Microsoft Entra Connect クラウド同期でのサポート Microsoft Entra Connect 同期でのサポート
従業員採用日 DateTimeOffset (日付と時刻のオフセット) はい はい はい
従業員退勤日時 DateTimeOffset (日付と時刻のオフセット) はい はい はい

メモ

クラウド専用ユーザーに対して employeeLeaveDateTime を手動で設定するには、特別なアクセス許可が必要です。 詳細については、「ユーザーの employeeLeaveDateTime プロパティを構成する」を参照してください。

このドキュメントでは、オンプレミスの Microsoft Entra Connect クラウド同期または Microsoft Entra Connect からの必要な属性の同期を設定する方法について説明します。

メモ

Active Directory には、EmployeeHireDate または EmployeeLeaveDateTime に対応する属性はありません。 オンプレミスの AD から同期する場合は、AD で使用できる属性を確認する必要があります。 この属性は、文字列である必要があります。

EmployeeHireDate と EmployeeLeaveDateTime の書式設定について

EmployeeHireDate と EmployeeLeaveDateTime には、特定の方法で書式設定する必要がある日付と時刻が含まれます。 つまり、式を使って、ソース属性の値を EmployeeHireDate または EmployeeLeaveDateTime が受け入れる書式に変換する必要がある場合があります。 次の表では、想定される書式の概要を示し、値の変換方法に関する式の例を示します。

シナリオ 式/書式 ターゲット 詳細情報
Workday から Active Directory へのユーザー プロビジョニング FormatDateTime([ステータス雇用日], ,"yyyy-MM-ddzzz", "yyyyMMddHHmmss.fZ") オンプレミスの AD の文字列属性 Workday の属性マッピング
Active Directory ユーザー プロビジョニングに対する SuccessFactors FormatDateTime([終了日], ,"M/d/yyyy hh:mm:ss tt","yyyyMMddHHmmss.fZ") オンプレミスの AD の文字列属性 SAP 成功要因の属性マッピング
Active Directory へのカスタム インポート "yyyyMMddHHmmss.fZ" の形式である必要があります オンプレミスの AD の文字列属性 他のレコード システムの属性マッピング
Microsoft Graph ユーザー API "YYYY-MM-DDThh:mm:ssZ" の形式である必要があります 従業員採用日と従業員退職日時
Workday からの Microsoft Entra へのユーザー プロビジョニング 直接マッピングを使用できます。 式は必要ありませんが、EmployeeHireDate と EmployeeLeaveDateTime の時刻部分を調整するために使用できます 従業員採用日と従業員退職日時
SuccessFactors から Microsoft Entra へのユーザー プロビジョニング 直接マッピングを使用できます。 式は必要ありませんが、EmployeeHireDate と EmployeeLeaveDateTime の時刻部分を調整するために使用できます 従業員採用日と従業員退職日時

式の詳細については、 Microsoft Entra ID での属性マッピングの式の記述に関するリファレンスを参照してください。

表の式の例では、SAP には endDate を、Workday には StatusHireDate を使用しています。 ただし、異なる属性を使うこともできます。

たとえば、StatusHireDate の代わりに StatusContinuousFirstDayOfWork を Workday に使用できます。 その場合、式は次のようになります。

FormatDateTime([StatusContinuousFirstDayOfWork], , "yyyy-MM-ddzzz", "yyyyMMddHHmmss.fZ")

次の表では、推奨される属性とそのシナリオの推奨事項の一覧を示します。

HR 属性 HR システム シナリオ Microsoft Entra 属性
ステータス採用日 勤務日 就職者 従業員採用日
業務開始継続初日状態 勤務日 就職者 従業員採用日
労働力参入日付 勤務日 就職者 従業員採用日
ステータス元の採用日 勤務日 就職者 従業員採用日
雇用終了日ステータス 勤務日 退職者 従業員休暇日時
状態-退職日 勤務日 退職者 従業員休暇日時
ステータス退職日 勤務日 退職者 従業員休暇日時
ステータス終了日 勤務日 退職者 従業員休暇日時
開始日 SAP SFの 就職者 従業員採用日
最初に働いた日 SAP SFの 就職者 従業員採用日
lastDateWorked(最終日ワーク) SAP SFの 退職者 従業員休暇日時
終了日 SAP SFの 退職者 従業員休暇日時

その他の属性については、 Workday 属性リファレンスSAP SuccessFactors 属性リファレンスを参照してください

時刻の重要性

ワークフローのタイミングを正確にスケジュールするには、以下を考慮することが重要です。

  • 属性の時刻部分を適切に設定する必要があります。たとえば、employeeHireDate には午前 1 時や午前 5 時のような 1 日の開示時刻を設定し、employeeLeaveDateTime には午後 9 時や午後 11 時のような 1 日の終了時刻を設定する必要があります
  • ワークフローは属性で指定された時間より早く実行されませんが、 テナント スケジュール (既定の 3h) によってワークフローの実行が遅れる可能性があります。 たとえば、employeeHireDate を午前 8 時に設定しても、テナント スケジュールが午前 9 時まで実行されない場合、ワークフローはそれまで処理されません。 新入社員が午前 8 時に勤務を開始する場合は、時刻を (開始時刻 - テナント スケジュール) などのように設定して、従業員が到着する前に実行されるようにします。
  • 一時アクセス パス (TAP) を使っている場合は、最大有効期間を 24 時間に設定することをお勧めします。 このようにすると、異なるタイムゾーンにいる可能性のある従業員に送信された後で TAP の有効期限が切れないようにすることができます。 詳細については、「パスワードレス認証方法を登録するように Microsoft Entra ID で一時アクセス パスを構成する」を参照してください。
  • データをインポートするときは、正確なタイミングにするためにユーザーが調整できるよう、ソースからタイム ゾーン情報が提供されるかどうか、およびその方法を、理解しておく必要があります。

Microsoft Entra Connect クラウド同期で EmployeeHireDate 用のカスタム同期ルールを作成する

次の手順では、クラウド同期を使用して同期ルールを作成する手順について説明します。

  1. Microsoft Entra 管理センターで、 >Hybrid 管理>Microsoft Entra Connect に移動します。
  2. [ Microsoft Entra Connect クラウド同期の管理] を選択します。
  3. [ 構成] で、構成を選択します。
  4. 「マッピングを編集する」をクリックを選択します。 このリンクをクリックすると、[ 属性マッピング ] 画面が開きます。
  5. [ 属性の追加] を選択します
  6. 次の情報を入力します。
    • マッピングの種類: 直接
    • ソース属性: msDS-cloudExtensionAttribute1
    • 既定値: 空白のまま
    • ターゲット属性: employeeHireDate
    • このマッピングを適用する: クラウド属性マッピングの常にスクリーンショット。
  7. [ 適用] を選択します。
  8. [属性マッピング] 画面に戻ると、新しい属性マッピングが表示されます。
  9. [ スキーマの保存] を選択します

属性の詳細については、「Microsoft Entra Connect クラウド同期の属性マッピング」を参照してください。

Microsoft Entra Connect で EmployeeHireDate 用のカスタム同期ルールを作成する方法

次の例では、Active Directory の属性を Microsoft Entra ID の employeeHireDate 属性に同期するカスタム同期ルールを設定する手順について説明します。

  1. 管理者として PowerShell ウィンドウを開き、Set-ADSyncScheduler -SyncCycleEnabled $false を実行してスケジューラを無効にします。
  2. Start\Microsoft Entra Connect\ に移動し、同期ルール エディターを開きます
  3. 上部の方向が [受信] に設定されていることを確認します。
  4. [ ルールの追加] を選択します。
  5. [ 受信同期規則の作成 ] 画面で、次の情報を入力し、[ 次へ] を選択します。
    • 名前: In from AD - EmployeeHireDate
    • 接続先システム: contoso.com
    • 接続先システム オブジェクトの種類: user
    • メタバース オブジェクトの種類: person
    • 優先順位: 20 受信同期規則の作成の基本のスクリーンショット。
  6. スコープ フィルター画面で、[次へ] を選択します。
  7. [ 参加ルール ] 画面で、[ 次へ] を選択します。
  8. 変換画面の変換を追加で、次の情報を入力します。
    • FlowType: 直接
    • ターゲット属性: employeeHireDate
    • ソース: msDS-cloudExtensionAttribute1 受信同期規則変換の作成のスクリーンショット。
  9. 追加を選択します。
  10. 同期規則エディターで、上部の方向が [送信] に設定されていることを確認します。
  11. [ ルールの追加] を選択します。
  12. [ 送信同期規則の作成 ] 画面で、次の情報を入力し、[ 次へ] を選択します。
    • 名前: Out to Microsoft Entra ID - EmployeeHireDate
    • 接続先システム: <<自分のテナント>>
    • 接続先システム オブジェクトの種類: user
    • メタバース オブジェクトの種類: person
    • 優先順位: 21
  13. スコープ フィルター画面で、[次へ] を選択します。
  14. [ 参加ルール ] 画面で、[ 次へ] を選択します。
  15. 変換画面の変換を追加で、次の情報を入力します。
    • FlowType: 直接
    • ターゲット属性: employeeHireDate
    • ソース: employeeHireDate 送信同期規則変換作成のスクリーンショット。
  16. 追加を選択します。
  17. 同期ルール エディターを閉じます
  18. Set-ADSyncScheduler -SyncCycleEnabled $true を実行して、再度スケジューラを有効にします。

メモ

  • msDS-cloudExtensionAttribute1 はソースの例です。
  • Microsoft Entra Connect 2.0.3.0 以降では、employeeHireDateは既定の "Out to Microsoft Entra ID" ルールに追加されるため、手順 10 から 16 は必要ありません。
  • Microsoft Entra Connect 2.1.19.0 以降では、employeeLeaveDateTimeは既定の "Out to Microsoft Entra ID" ルールに追加されるため、手順 10 から 16 は必要ありません。

詳細については、「同期規則をカスタマイズする方法」および「既定の構成に変更を加える」を参照してください。

プロビジョニング アプリケーションで属性マッピングを編集する

プロビジョニング アプリケーションを設定したら、その属性マッピングを編集できます。 アプリが作成されたら、HRM と Active Directory の間の既定のマッピングの一覧が表示されます。 その一覧で、既存のマッピングを編集したり、新しいマッピングを追加したりすることができます。

このマッピングを更新するには、次の操作を行います。

  1. Microsoft Entra 管理センターに、少なくともアプリケーション管理者としてサインインします。

  2. Entra ID>Enterprise アプリを開きます。

  3. プロビジョニングされたアプリケーションを開きます。

  4. [プロビジョニング] を選択し、[ 属性マッピングの編集] を選択します。

  5. [ 詳細オプションの表示] を選択し、[ オンプレミス Active Directory の属性リストの編集] を選択します。 オンプレミス属性の編集のスクリーンショット。

  6. String 型として作成した 1 つまたは複数のソース属性を追加し、必要に応じてチェックボックスをオンにします。 ソース API リストのスクリーンショット。

    メモ

    追加されるソース属性の数と名前は、Active Directory から同期する属性によって異なります。

  7. [保存] を選択します。

  8. そこから、追加された Active Directory 属性に HRM 属性をマップする必要があります。 これを行うには、式を使用して新しいマッピングを追加します。

  9. 式は、 Understanding EmployeeHireDate と EmployeeLeaveDateTime 書式設定セクションにある書式設定と 一致する必要があります。 属性形式の設定のスクリーンショット。

  10. [OK] を選択します。

Microsoft Entra ID でこれらの属性値を確認する方法

Microsoft Entra ID のユーザー オブジェクトでこれらのプロパティに設定されている値を確認するには、 Microsoft Graph PowerShell SDK を使用できます。 次に例を示します。

# Import Module
Import-Module Microsoft.Graph.Users

# Define the necessary scopes
$Scopes =@("User.Read.All", "User-LifeCycleInfo.Read.All")

# Connect using the scopes defined and select the Beta API Version
Connect-MgGraph -Scopes $Scopes


# Query a user, using its user ID, and return the desired properties
$user = Get-MgUser -UserID "00aa00aa-bb11-cc22-dd33-44ee44ee44ee" -Property EmployeeLeaveDateTime
$User.EmployeeLeaveDateTime

結果のスクリーンショット。

次のステップ