Okta で アプリカタログ のアプリケーションにより SCIM プロビジョニング連携するする方法を説明します。
以下のプロビジョニング機能が利用できます。
アプリカタログ から LINE WORKS アプリを作成すると、既定の属性マッピングが提供されます。属性マッピングは、SCIM プロビジョニングを構成した後に、プロビジョニング タブで確認できます。
SCIM userName 属性は WORKS の email (アカウント) とマッピングされ、mails[type eq "alias"].value 属性は、WORKS の aliasEmails (サブメールアドレス) とマッピングされます。
このため、この属性は電子メール形式でなければならず、ドメインパートは WORKS に登録したドメインと同一でなければなりません。
既定の Okta ユーザープロファイルに設定された値の中から SCIM userName に使用できる適切な属性を選択するか、式を作成してカスタムの値を使用します。
サインオン タブで選択する アプリケーションユーザー名の形式 に従って、WORKS アカウントに連動する値を指定します。
カスタム (推奨).
toLowerCase(String.substringBefore(user.login, '@')) + "@{domainPart}".works.com の場合には、toLowerCase(String.substringBefore(user.login, '@')) + "@works.com" を指定します。Oktaユーザー名
メールアドレス
emails[type eq "alias"].value にマッピングすることはできません。アプリカタログ の LINE WORKS アプリ が提供する既定の属性マッピングは以下の通りです。
アプリケーションユーザー名の形式 でカスタムを選択し、式を入力することを想定します。
既定の属性マッピングは、使用する環境にあわせて修正することができます。
アプリケーションユーザー名の形式 でメールアドレスを選択する場合には、サブメールアドレスはマッピングから削除する必要があります。 WORKS が提供する SCIM 属性情報と制約条件は、属性マッピング を参考にしてください。
| Okta Property | WORKS Property | Description |
|---|---|---|
| username (アプリケーションユーザー名の形式 設定により異なる) | WORKS ログインアカウント (ドメイン部分はWORKSドメインと一致する必要があります。) | |
| user.lastName | lastName | 姓 (姓と名のいずれか 1 つは必須) |
| user.givenName | firstName | 名 (姓と名のいずれか 1 つは必須) |
| user.nickName | nickName | ニックネーム |
| user.preferredLanguage | locale | 多言語コード |
| user.timezone | timeZone | タイムゾーン |
| user.email | aliasEmails | サブメールアドレス (ドメイン部分はWORKSドメインと一致する必要があります。) |
| user.secondEmail | privateEmail | 個人メールアドレス |
| user.primaryPhone | telephone | 電話番号 |
| user.mobilePhone | cellPhone | 携帯電話番号 |


統合を追加 ボタンをクリックして Application を追加する。

サインオン タブで アプリケーションユーザー名の形式 を設定します。この値は WORKS のアカウント (email) として使用され、制限事項に従う必要があります。属性マッピング を参考にして、使用環境にあった適切な値を設定します。

アプリケーションユーザー名の形式 で カスタム を選択し、以下の表を参考に 式 (expression) を入力することをおすすめします。
| アカウントのローカルパートの使用方法 | 例 |
|---|---|
| Okta Login のローカルパートを使用する場合 (推奨) | 式: toLowerCase(String.substringBefore(user.login, '@')) + '@{enter your domain}'{enter your domain} 部分には、使用中の WORKS のドメインを入力する |
| Okta User Profile に設定した Primary email の localpart を使用する場合 | 式: toLowerCase(String.substringBefore(user.email, '@')) + '@{enter your domain}'{enter your domain} 部分には、使用中の WORKS のドメインを入力する |
| Okta User Profile(Default) の他の属性を使用する場合 | 式: toLowerCase(user.$attribute) + '@{enter your domain}'{enter your domain} 部分には、使用中の WORKS のドメインを入力する$attribute は、Okta User Profile のプロパティに合わせて変更する |
プロビジョニング タブで 設定 > 統合 をクリックして移動します。API統合を構成 をクリックしてAPI統合を有効化 をチェックします。

長期トークン を参考に、Access Token を取得します。
再び Okta にアクセスし、API Token に 3. で取得した Token を入力します。API資格情報をテスト をクリックし、正常に連動していることを確認し 保存 をクリックします。

SCIM プロビジョニング設定は プロビジョニング タブで行います。
アプリへ で、Okta から WORKS へのユーザーのプロビジョニングを行う操作を設定できます。

emails[type eq "other"].value) を設定する必要があります。アプリへ で、Okta から WORKS へプロビジョニングを行う際の属性マッピングを設定できます。

割り当て タブで、ユーザーのプロビジョニング状態を確認します。

サインオン タブで、連携に必要な情報を取得し、Developer Console の SSO > WORKS as SP で設定します。
サインオンURL の値を取得し、Developer Console の Web Login URL に貼り付けます。サインアウトURL の値を取得し、Developer Console の Logout URL に貼り付けます。IdP-issued Certificate からアップロードします。 

サインオン タブで 編集 をクリックし、高度なサインオン設定 の Domain name に使用中の WORKS ドメインを入力します。
