Okta のユーザープロビジョニング機能を使って cybozu.com にユーザー情報を同期する
概要
Okta のユーザープロビジョニング機能を使うと、Okta で管理しているユーザー情報を cybozu.com に同期できます。
この記事では、Okta のユーザープロビジョニング機能を cybozu.com で利用する方法を説明します。
ユーザープロビジョニング機能でできること
Okta で管理しているユーザー情報と利用サービスの情報を cybozu.com に同期できます。
たとえば、Okta にユーザーを追加すると、自動で cybozu.com にユーザーが追加され、kintone や Garoon などを利用できます。
プロビジョニング機能は、次の操作に対応しています。
- ユーザーの追加
- ユーザー情報の更新
-
ユーザーの使用停止
- ユーザーの利用サービスの編集
同期できるユーザー情報の項目は、以下のとおりです。
- ログイン名
- 表示名
- 姓
- 名
- Email アドレス
- 使用状態
すでに cybozu.com にユーザーを登録している場合でも、プロビジョニング機能を利用できます。
必要な環境
事前に SAML 認証の設定を実施してください。
- Okta を使って SAML 認証を設定する方法は、 Okta と cybozu.com を SAML 認証する を参照してください。
- SAML 認証を利用する場合は、次の注意事項も確認してください。
ユーザープロビジョニング機能を利用するには、次の権限が必要です。
- cybozu.com:cybozu.com 共通管理者
- Okta:次のいずれかの Administrators 権限
- 「Organization Administrator」および「Application Administrator」
- 「Super Admin」
制限事項
- 組織、役職、グループ(ロール)は同期できません。
- 同期した後に cybozu.com からユーザーを削除すると、再度同期しても cybozu.com にユーザーは再作成されません。
cybozu.com にユーザーを再作成するには、cybozu.com の設定で「プロビジョニングの反映」を無効にした後もう一度有効にして、同期してください。 - 同期したユーザーのログイン名の変更はできません。
cybozu.com でユーザーを削除した後、Okta でユーザーを作り直して同期してください。 - その他の制限事項は、
ヘルプサイト
を参照してください。
注意事項
- 本番運用している cybozu.com で設定をする前に、必ず、本番とは別の cybozu.com の環境で事前に検証をしてください。
お試し環境の申し込み方法は、 お試しはできますか?お試し方法を教えてください。を参照してください。
- cybozu.com に対するアクセスを IP アドレスで制限したい場合には、Okta でのアクセス制限を検討してください。
Okta の IP アドレスは変更される可能性があり、cybozu.com の IP アドレス許可リストに Okta の IP アドレスを設定することは推奨しません。
設定手順
設定の流れ
Okta のプロビジョニングを利用するまでの流れは、次のとおりです。
STEP1:cybozu.com の設定
プロビジョニングを有効化し、API トークンを発行します。
- アプリケーションの追加
- cybozu.com との接続設定
- 未契約のサービスに関する項目を削除
-
ユーザーの割り当てとプロビジョニングの開始
ユーザー単位、グループ単位で同期できます。
STEP1:cybozu.com の設定
- https://{sample}.cybozu.com/ にアクセスします。
サブドメイン名は、お客様の環境によって異なります。
サブドメイン名がわからない場合には、 契約内容を確認するを参照してください。
- cybozu.com 共通管理者のアカウントでログインします。
- [cybozu.com 共通管理]をクリックします。
- [プロビジョニング]をクリックします。
- [API トークンの発行]をクリックします。
- [有効期間]と[API トークンの概要]を入力し、[発行]をクリックします。
- 発行された API トークンと SCIM エンドポイントをメモに控えます。
ダイアログを閉じると、発行された値を確認できなくなります。
- [閉じる]をクリックします。
- [プロビジョニングの反映]を[有効]にします。
STEP2:Okta の設定
1. アプリケーションの追加
- https://{サブドメイン名}.okta.com/ にアクセスします。
- 管理者権限のユーザーでログインします。
- サイドメニューの[Applications]をクリックし、[Applications]を選択します。
- [Browse App Catalog]をクリックします。
- 検索ボックスで「cybozu」を検索し、[Cybozu(cybozu.com)]を選択します。
- [Add]をクリックします。
- [Domain Name]に同期する cybozu.com のサブドメイン名を入力します。
cybozu.com の URL が https://example.cybozu.com/ の場合は「example」と入力してください。
- [Done]をクリックします。
2. cybozu.com との接続設定
-
[Provisioning]を選択します。
-
[Configure API Integration]をクリックします。
-
必要な情報を入力します。
- Enable API integration:チェックを入れる。
- API Token:STEP1 で発行した API トークンを入力する。
-
[Test API Credentials]をクリックして、テスト接続します。
エラーメッセージが表示されテスト接続に失敗する場合には、 トラブルシューティング を参照してください。
以下は、エラーメッセージの例です。1
Error authenticating: Forbidden. Errors reported by remote server: Invalid JSON: Unexpected character
-
successfully! と表示されたら、[Save]をクリックします。
-
[Provisioning to App]の[Edit]をクリックします。
-
次の項目の[Enable]をチェックします。
- Create Users
- Update User Attributes
- Deactivate Users
-
[Save]をクリックします。
3. 未契約のサービスに関する項目を削除
契約していない、cybozu.com のサービスに関する項目を削除します。
契約しているサービスに関する項目を削除してしまった場合には、設定を中断し、
プロビジョニングの停止 および
プロビジョニングを再開 を実施してください。
- [Cybozu(cybozu.com)Attribute Mappings]の[Go to Profile Editor]をクリックします。
- [Attributes]に表示されるサービスのうち、契約していないサービスをすべて削除します。
- 削除対象のサービス名の横にある「×」をクリックします。
- 確認画面が表示されたら、[Delete Attribute]をクリックします。
- 削除対象のサービス名の横にある「×」をクリックします。
4. ユーザーの割り当てとプロビジョニングの開始
ユーザー単位で同期する場合
- [Assignments]を選択します。
- [Assign]をクリックし、[Assign to People]を選択します。
- 同期対象のユーザーの横にある[Assign]をクリックします。
- cybozu.com のログイン名を入力します。
ログイン名の初期値には、 ログイン名の初期値の設定 で設定した値が設定されます。
あとからログイン名の変更はできません。
ログイン名を変更したい場合には、Okta でユーザーを再作成して同期し直す必要があります。 - ユーザーが利用するサービスを設定します。
利用を許可するサービスには[Enable]を選択します。
- [Save and Go Back]をクリックします。
- 同期する対象のユーザーをすべて設定し終えたら、[Done]をクリックします。
グループ単位で設定する場合
グループに所属するユーザーのログイン名には、
ログイン名の初期値の設定 で設定した値が設定されます。
あとからログイン名の変更はできません。
- [Assignments]を選択します。
- [Assign]をクリックし、[Assign to Group]を選択します。
- 同期対象のグループの横にある[Assign]をクリックします。
- 選択したグループに所属するユーザーが利用するサービスを設定します。
利用を許可するサービスには[Enable]を選択します。
- [Save and Go Back]をクリックします。
- 同期する対象のグループをすべて設定し終えたら、[Done]をクリックします。
その他の設定
ログイン名の初期値の設定
-
[Sign On]を選択します。
-
[Settings]の[Edit]をクリックします。
-
[Application username format]に初期値とする項目を設定します。設定できる項目は次のとおりです。
- Custom:Okta の任意のユーザー情報
- Email:メールアドレス
- Email Prefix:接頭辞付きのメールアドレス
- Okta username:Okta のユーザー名
- Okta username prefix:接頭辞付きの Okta のユーザー名
- (None):初期値を設定しない場合に選択します。
None を選択すると、グループ単位で割り当てした場合に、ログイン名を設定できないために同期が失敗します。
グループで割り当てたあとに、一人ずつログイン名を入力する必要があります。
-
[Save]をクリックします。
プロビジョニングの停止
プロビジョニングを停止するには、次の手順で操作します。
- [Provisioning]を選択し、[Integration]をクリックします。
- [Edit]をクリックします。
- [Enable API Integration]の選択を外します。
- [Save]をクリックします。
プロビジョニングの再開
- 停止中に変更した内容を cybozu.com に反映するには、 Force Sync を実行してください。
- 停止中に契約するサービスを変更した場合には、未契約のサービスに関する項目を削除してください。
手順の詳細は、 未契約のサービスに関する項目を削除 を参照してください。
プロビジョニングを再開するには、次の手順で操作します。
-
[Provisioning]を選択し、[Integration]をクリックします。
-
[Edit]をクリックします。
-
[Enable API Integration]を選択します。
-
[Save]をクリックします。
-
[To App]を選択します。
-
[Provisioning to App]の[Edit]をクリックします。
-
次の項目で[Enable]を選択します。
- Create Users
- Update User Attributes
- Deactivate Users
-
[Save]をクリックします。
Force Sync の実行
停止中に変更した内容を、プロビジョニングの再開後、cybozu.com に反映する手順は次のとおりです。
- [Provisioning]をクリックします。
- [Cybozu(cybozu.com)Attribute Mappings]の[Force Sync]をクリックします。
cybozu.com のユーザーを使用停止、または再開する
cybozu.com のユーザーを使用停止にするには、次の手順でユーザーの割り当てを削除するか、Okta のユーザーを停止状態にします。
ここでは、ユーザーの割り当てを削除する手順を説明します。
ユーザー単位で設定する場合
- [Assignments]を選択します。
- [People]を選択します。
- 停止対象のユーザーの横にある「×」をクリックします。
- 確認画面が表示されたら、[OK]をクリックします。
ユーザーの利用を再開するには、もう一度同期する対象のユーザーを割り当ててください。
グループ単位で設定する場合
- [Assignments]を選択します。
- [Groups]を選択します。
- 停止対象のグループの横にある「×」をクリックします。
- 確認画面が表示されたら、[OK]をクリックします。
グループに所属するユーザーの利用を再開するには、もう一度同期する対象のグループを割り当ててください。
トラブルシューティング
Error authenticating: Forbidden. Errors reported by remote server: Invalid JSON: Unexpected character が表示される場合
原因の可能性として、cybozu.com の IP アドレス制限が考えられます。
cybozu.com に対するアクセスを IP アドレスで制限したい場合には、Okta でのアクセス制限を検討してください。
Okta の IP アドレスは変更される可能性があり、cybozu.com の IP アドレス許可リストに Okta の IP アドレスを設定することは推奨しません。
この Tips は、2022 年 8 月版 cybozu.com で動作を確認しています。