Workdayのリアルタイム同期
Workdayのリアルタイム同期(RTS)を利用することで、OktaはWorkdayからユーザーの作成、更新、退職イベントをリアルタイムに受信できます。Workdayでのユーザー変更は、直ちにOktaとそのダウンストリームのアプリに反映されます。
RTSはWorkdayからOktaへの更新をリアルタイムにトリガーするために使用されます。従業員の突然の退職など、タイムリーな変更が重要な場合に使用します。Oktaにこのプロセスを開始するようトリガーを送るために、Workdayで業務プロセスを構成する必要があります。RTSインポートには、基本属性、未来(または非未来)の有効期限付きカスタム属性が含まれています。
Oktaでは、RTSは1~2日間隔で実行されるスケジュールされたインポートで使用することを強く推奨します。その理由は、Workdayで一部の使用頻度の低いアクションはRTSをトリガーせず、これらのアクションを調整するためにスケジュールされたインポートが必要であるためです。
前提条件
- Workdayがプロファイルソースとしてセットアップされている。手順については、 「Workdayのプロビジョニングの構成」を参照してください。
- RTS管理者用のOktaアカウントを作成するスーパー管理者ロールをアカウントに割り当てることもできますが、カスタムロールを定義して最小限の権限を割り当てることもできます。カスタム管理者ロールを参照してください。次のようにカスタムロールを定義します。
- カスタムロールには次の権限が必要です。
- ユーザーの管理(Manage Users)(ユーザー(User)配下のすべての権限)
- グループメンバーシップの管理(Manage group membership)(グループ(Group)配下)
- アプリケーションの管理(Manage Applications)(アプリケーション(Application)配下のすべての権限)
- リソースセットを作成してロールに割り当てます。このリソースセットには、ユーザーとアプリの両方が含まれる必要があります。リソースセットを作成する(Create a resource set)を参照してください。
- カスタムロールには次の権限が必要です。
機能
次のWorkdayアクションは、RTSでサポートされません。
Second Email属性の更新はRTSをトリガーしません。Manager Username属性の更新はRTSをトリガーしません。
Manager Usernameなどの一部のワーカー属性は、RTSの一部としてOktaに入力することはできません。回避策として、Workdayフィールドの上書きにそれらの属性を追加してください。
次の表に、RTSをトリガーするために機能で基本属性の更新が必要かどうかを示します。この表の後に基本属性のリストを示しています。
|
機能 |
RTSをトリガーするために基本属性の更新が必要 |
|---|---|
| 新規ユーザーの作成 | いいえ |
| ユーザー基本属性の更新 | いいえ |
| ユーザーの退職 | いいえ |
| ユーザーカスタム属性の更新 | はい |
| 新規グループの作成 | はい |
| グループ名および説明の更新 | はい(非推奨。「Workdayプロビジョニンググループを管理する」を参照してください。 |
| グループ設定の更新 | はい |
| グループへの新規ユーザーの追加 | いいえ |
| グループのユーザー基本属性の更新 | はい |
| グループからのユーザーの削除 | はい |
次の表に基本属性を示します。
|
表示名(Display Name) |
変数名 |
タイプ |
|---|---|---|
| ユーザー名(User Name) | userName | 文字列 |
| 名(First Name) | firstName | 文字列 |
| 姓(Last Name) | lastName | 文字列 |
| Eメール(Email) | 文字列 | |
| 予備のメールϕ | secondEmail | 文字列 |
| 携帯電話(Mobile Phone) | mobilePhone | 文字列 |
| 社員ID(Employee ID) | employeeID | 文字列 |
| ワーカータイプ(Worker Type) | accountType | 文字列 |
| タイトル(Title) | businessTitle | 文字列 |
| マネージャーID(Manager ID) | managerId | 文字列 |
| 管理者ユーザー名(Manager Username) | managerUserName | 文字列 |
| 番地(Street Address) | streetAddress | 文字列 |
| 市区町村(City) | 市区町村 | 文字列 |
| 都道府県(State) | state | 文字列 |
| 郵便番号(Postal Code) | postalCode | 文字列 |
| 国:ISO-3166(Country (ISO-3166)) | countryCode | 文字列 |
| 監督機関(Supervisory Organization) | supervisoryOrd | 文字列 |
| 事業部(Business Unit) | businessUnit | 文字列 |
| 業務用電話番号(Work Phone) | workPhone | 文字列 |
| ロケーション(Location) | location | 文字列 |
ϕ Oktaでは、secondEmailの値をインポートまたは設定しません。カスタム属性を使用して、Workdayからこの値を取得できます。Workdayのカスタム属性を参照してください。
RTS非アクティブ化
- RTSはユーザーをリアルタイムでクエリするときと同じ非アクティブ化ルールに従います。「非アクティブ化」(Deactivation)を参照してください。
- 即時非アクティブ化の理由が設定されている場合、ユーザーは同期化する際にただちに非アクティブ化できます。 「即時非アクティブ化」を参照してください。
- RTSでグループ名を変更することはお勧めしません。「Workdayプロビジョニンググループを管理する」を参照してください。
WorkdayでRTSを構成する
統合システムを作成する
- Workdayに管理者としてサインインします。
- ページ左上の検索ボックスに統合システムを作成(「Create Integration System)」と入力します。
- 以下の情報を入力します。
- システム名(System Name):統合システムに相応しい名前
- テンプレート(Template):テンプレートを使用して新規作成(New using Template)を選択し、リストからOkta-Worker]を選択します。
- OK(OK.)をクリックします。
- すべてのサービスを有効化(Enable All Services)を選択し、有効化(Enabled)列の下のすべてのチェックボックスが選択されていることを確認します。
- 次のエラーが表示される場合があります。構成は次のセクションで完了するため、ここでは無視して構いません。
- 値を確定すると、統合システム(Integration System)ページが開きます。
統合システムに統合属性を追加する
- 統合システム(Integration System)の横にあるアクション(Actions)をクリックし、に移動します。
-
Okta APIエンドポイントとOkta APIトークンでプラス符号(+)をクリックし、各属性にエントリを追加します。
Okta APIエンドポイント
URL:https://<ENVIRONMENT>/api/v1/app/<Identity Provider ID>/activities/で、次の箇条書きの要素を使用します。
- 環境(Environment):例:
acme.okta.com、mycompany.okta.com - IDプロバイダー ID(Identity Provider ID):Workdayアプリのサインオン(Sign On)(View Setup Instructions)タブの下にあるセットアップ手順を表示([View Setup Instructions)] (Sign On)リンクから、セットアップ手順の発行者(Issuer)向けに生成された値を使用します。
Okta APIトークンを取得するには、次の手順を実行します。
トークンを生成するには、スーパー管理者権限のあるアカウントを使用します。
- Oktaサービスアカウントを作成します。
- スーパー管理者ロールをサービスアカウントに割り当てます。
- このユーザーとしてOktaにサインインします。
- 管理者ダッシュボードページから、に進みます。
- トークンの作成(Create Token)をクリックし、関連する名前を入力します。
- トークンをコピーし、それを形式で使用します。
統合システムにサブスクリプションを追加する
- 統合システムの横にある省略記号(…)をクリックし、の順に進みます。
-
特定のトランザクションタイプに登録(Subscribe to specific Transaction Types)の下で、必要なイベントのタイプに従って項目を選択します(トランザクションタイプの仕様については表3を参照してください)。
-
外部エンドポイント(External Endpoints)の下にあるマイナス符号(-)をクリックして外部エンドポイント(External Endpoints)の設定を削除します。
-
起動する統合を追加(Add Launch Integration)をクリックし、表1に示される値を追加します。
-
次のアラートが表示される場合があります。次のセクションで修正するため、ここでは無視できます。
表1
|
フィールド |
値タイプ |
値 |
|---|---|---|
| ワーカー(Workers) | ランタイム時に値を定義 | トランザクションターゲット |
| エントリ時(As of Entry Moment) | ランタイム時に値を定義 | トランザクション入力時 |
| 有効なデータ(Effective Data) | ランタイム時に値を定義 | トランザクション入力時 |
エラーになるときは、トランザクションターゲットではなくワーカーとしてトランザクションターゲットを入力してみてください。
統合ユーザーを統合システムに関連付ける
この統合システムユーザーは、「Workdayで統合システムユーザーを作成する」の手順に従って作成する必要があります。
-
統合システムの横にある省略記号(…)をクリックし、Workdayアカウント(Workday account)(Workday account.)を編集します。
-
Workdayアカウント(Workday Account)(Integration System User)の下で統合システムユーザー(Integration System User)(Workday Account)を選択し、追加します。これにより、統合ユーザー(Integration User)がシステム(System)に関連付けられ、統合システム(Integration System)のセットアップが完了します。
統合システムを追加するためにビジネスプロセスを編集する
- この例では新規採用(Hire)ビジネスプロセスを使用します。適切なビジネスプロセスタイプについては、表3を参照してください。
- Workday 検索フィールドに
bp: hireと入力します。 - tenantの新規採用(Hire)を選択します。(例:Acme Inc.の雇用(Hire for Acme Inc.))。デフォルトのビジネスプロセスを選択しないでください。
- 定義の編集(Edit Definition)に進みます。
-
新規採用プロセスが完了した後に呼び出すステップを追加します。完了(Complete)(Order)列がはい(Yes)となっている行で順序(Order)(Complete)列の文字を見つけます(この例では、aという文字を使って示しています)。
-
プラス符号(+)をクリックしてステップを追加します。
-
順序(Order)の値をbに設定します。aに設定されている完了ステップの後にビジネスプロセスでリアルタイム同期を起動する必要があります。
-
タイプとして統合(Integration)を選択し、OKをクリックして保存します。ビジネスプロセスのランディングページに戻ります。
-
次のエラーが表示される場合があります。次のセクションで修正するため、ここでは無視できます。
-
統合システムの構成(Configure Integration System)ボタンが表示されます。これをクリックして構成プロセスを開始します。
-
以前に作成した統合システムを選択し、OKをクリックします。
-
表2のように値を追加します。
表2
|
フィールド |
値タイプ |
値 |
|---|---|---|
| ワーカー(Workers) | ランタイム時に値を定義 | ワーカー |
| エントリ時(As of Entry Moment) | ランタイム時に値を定義 | 完了日と時刻 |
| 発効日(Effective Date) | ランタイム時に値を定義 | 発効日 |
これで、統合システムイベントをビジネスプロセスに追加する手順が完了しました。WorkdayとOktaの間で同期をとるために、ビジネスプロセスとトランザクションタイプの最適な組み合わせについて表3を参照してください。
表3
|
No. |
タイプ |
名前 |
イベント |
|---|---|---|---|
| 1 | ビジネスプロセス | 新規採用 | 新規採用 |
| 2 | ビジネスプロセス | 退職 | 退職 |
| 3 | ビジネスプロセス | 業務の変更 | 業務、監督org マネージャー |
| 4 | ビジネスプロセス | タイトル | 役職の変更 |
| 5 | トランザクションタイプ | アカウントプロビジョニング - イベントLiteタイプ | Workday IDの変更 |
| 6 | トランザクションタイプ | 連絡先の変更 - 連絡先情報 | 電話番号、メールの変更 |
| 7 | トランザクションタイプ | Workdayアカウントの編集 - Workdayアカウントの編集 | ユーザー名、従業員IDの変更 |
| 8 | トランザクションタイプ | 正式名称の変更 - 正式名称の変更イベント | 名前の変更 |
| 9 | トランザクションタイプ | ユーザーの住所変更 - イベントLiteタイプ | 住所変更(勤務先住所) |
Workdayで退職カテゴリを維持
退職者向けのカテゴリを編集または表示するには、次の2つの方法があります。
- 維持する退職カテゴリを検索ボックスで検索し、結果から退職を選択します。
- 統合IDレポートを介した退職ID:統合IDを検索して適切な値を選択します。
|
即時退職理由が一致しますか? |
雇用終了日を使用しますか? |
結果 |
|---|---|---|
| ワーカーは退職日の後に非アクティブ化される | ||
| ● | ワーカーは雇用終了日の後に非アクティブ化される | |
| ● | ワーカーは退職日の開始時に実行されるインポート中に非アクティブ化される | |
| ● | ● | ワーカーは雇用終了日の開始時に実行されるインポート中に非アクティブ化される |