SCIM API
Wrike の SCIM API は、アイデンティティプロバイダーからユーザーデータを同期することで、ユーザーの自動プロビジョニングと管理を可能にします。 これを使用して、アクセスとアイデンティティ情報を一元管理しながら、ユーザーの作成、更新、無効化を行えます。
|
Availability: Legacy Enterprise.; Unavailability: Legacy Free, Legacy Professional, Legacy Business.; |
|
利用可能: Pinnacle, Apex. 利用不可: Free, Team, Business. |
System for Cross-domain Identity Management(SCIM)は、アイデンティティ ドメインまたは IT システム間でユーザー アイデンティティ情報を自動的に交換するための標準です。 Wrike では、OKTA、OneLogin、Azure AD 向けに SCIM プロビジョニングのすぐに使えるソリューションが用意されており、詳細はリンク先のヘルプ記事で説明しています。 このページでは、API を使用したカスタム SCIM プロビジョニングについて説明します。
これを使用すると、次のことが可能です:
-
Wrike に新規ユーザーをプロビジョニングする
-
サポートされているユーザー属性をプロビジョニングおよび更新する
-
カスタムユーザー属性をプロビジョニングおよび更新する
-
Wrike でユーザーを無効化または削除する
-
Wrike でユーザーグループを作成および更新する
-
グループメンバーシップを追加または削除する
-
これは Legacy Enterprise、Pinnacle、および Apex レベルのサブスクリプションでのみ動作します。
-
同期は一方向のみで、IdP から Wrike へのみ行われます。
-
Wrike にはユーザーのパスワードは保存されません。 SAML SSO が設定されていないアカウントで SCIM を通じてユーザーが作成された場合、そのユーザーはパスワードを作成するためにパスワードリセットページを使用する必要があります。
-
検索はメールアドレスのみがサポートされています。
-
Wrike ではメールアドレスがユーザー名として使用されます。 プロビジョニングまたは統合時に、Wrike は userName または emails から有効なメールアドレスを検索し、ログインとして使用します。
注記
SCIM の実装方法は IdP によって大きく異なります(エラーメッセージやサポートされる/されない操作など)。そのため、SCIM 機能およびエラーメッセージの IdP 固有の内容については、自社の IdP 管理者が確認し、彼らと緊密に連携して調査してください。 各種 IdP における SCIM 実装の詳細に関するトラブルシューティングおよびコンサルティングは、Wrike カスタマーサポートの業務範囲外となります。
-
あなたは Legacy Enterprise、Pinnacle または Apex サブスクリプションのアカウントを持ち、以下の権限が有効になっている管理者である必要があります: 「名前とメールの編集、グループへのユーザーの追加/削除、ユーザーリストのエクスポート、個別ユーザーアカウントの無効化および削除」、「高度なセキュリティ設定の構成」、「管理者権限の付与/取り消し」。
-
Add approved domains. 承認済みドメインのユーザーのみが Wrike に自動プロビジョニングされます。
-
永続的な API トークンを生成します。
-
[アプリと統合]で、OKTA、OneLogin、または Azure AD カードの SCIM タブからアカウントの SCIM URL を取得します。
-
事前設定された環境とコールコレクションを利用するには、Postman を使用できます。 Postman 環境を準備するには、以下をダウンロードしてインポートします:
-
Postman 用 Wrike SCIM コールコレクション: Wrike SCIM.postman_collection.json
-
Wrike SCIM 環境をダウンロードしてインポートし、ベース URL と永続トークンを追加します: Wrike_SCIM_API.postman_environment.json
-
. ユーザー
-
統合済みユーザーの一覧 - GET {{base_url}}/Users - SCIM 連携済みの既存のアカウントユーザー情報を含む JSON を返します。 これには、招待で作成されてから POST /Users の呼び出しでリンクされたユーザーと、SCIM によって直接プロビジョニングされたユーザーが含まれます。 ユーザーを手動で作成し、まだ手順 #2 で統合していない場合、それらのユーザーは JSON に表示されません。
-
統合済みユーザーを取得 - GET {{base_url}}/Users/ - ユーザー ID を追加してそのユーザーの情報を含む JSON を取得します。例: GET {{base_url}}/Users/KUAH4WFR (KUAH4WFR はそのユーザーの API ID)。
-
eq フィルターで統合済みユーザーを検索 - GET {{base_url}}/Users?filter=userName eq \"jerome.chef@scim.test\" - プライマリメールアドレスの完全一致でユーザーを検索します。
-
-
ユーザー作成 - POST {{base_url}}/Users + 正しくフォーマットされたリクエストボディ(下記にサンプルと説明あり) - リクエストボディで指定した属性を持つユーザーを作成します。
-
ユーザー属性の置換 - PUT {{base_url}}/Users/{{user_id}} + 正しくフォーマットされたリクエストボディ(下記にサンプルと説明あり) - リクエストボディに従ってすべてのユーザー属性を書き換えます。 この呼び出しは、ユーザータイプの更新やユーザーの無効化/有効化に使用できます。
-
ユーザー属性のパッチ - PATCH {{base_url}}/Users/{{user_id}} + 正しくフォーマットされたリクエストボディ(下記にサンプルと説明あり) - 更新対象の属性と新しい値のみを含むリクエストボディを使用します。
-
ユーザー削除 - DELETE {{base_url}}/Users/{{user_id}}。
カスタムユーザー属性
-
カスタムユーザー属性は、Wrike SCIM 拡張を介して POST /Users、PUT /Users/{{user_id}}, PATCH /Users/{{user_id}} の一部としてプロビジョニングおよび更新できます。
グループ
-
グループ一覧 - GET {{base_url}}/Groups - プロビジョニングされた Wrike ユーザーグループの情報を含む JSON を返します。
-
グループ取得 - GET {{base_url}}/Groups/{{group_id}} - そのグループの情報を含む JSON を返します。
-
グループ作成 - POST {{base_url}}/Groups + 正しくフォーマットされたリクエストボディ - Wrike ユーザーグループを作成します。
-
グループパッチ - PATCH {{base_url}}/Groups/{{group_id}} + 正しくフォーマットされたリクエストボディ - グループ属性とメンバーシップを更新します。
-
グループ削除 - DELETE {{base_url}}/Groups/{{group_id}}。
以下は、ユーザーの作成 / 既存ユーザーのリンク / ユーザー属性の更新を行う際のサンプルリクエストボディです:
*userName、プライマリおよびセカンダリのメールアドレス:
-
userName フィールドは必須です。
-
メールアドレス(プライマリおよび非プライマリ)はオプションで、このブロックには必要な数だけ追加できます。
-
リクエスト本文に プライマリメールがない場合、userName がユーザーのプライマリメールアドレスとして Wrike に追加されます。
-
リクエスト本文に プライマリメールがある場合、そのメールが Wrike でのユーザーのプライマリメールアドレスとして使用されます。
-
emails にメールが含まれていても、いずれもプライマリとしてマークされていない場合、userName がユーザーのプライマリアドレスとして Wrike に追加され、他のメールはセカンダリメールとして追加されます。
**利用可能なロケールとその説明:
ユーザー属性をパッチするためのサンプルリクエストボディは次のとおりです:
Wrike と SCIM の統合では、wrikeUserType パラメーターを使用して、プロビジョニングまたは更新リクエスト時に SCIM 連携ユーザーのユーザータイプを指定できます。
wrikeUserType 属性で受け付けられるデフォルトのユーザータイプの値は、「Regular」「External」「Collaborator」「Viewer」「Contributor」(大文字小文字は問いません)です。
注記
「Viewer」および「Contributor」は、これらのユーザータイプがアカウントで有効になっている場合に使用できます。
デフォルトのユーザータイプが名前変更/変更された場合でも、そのリンクは有効なままです(例: 「Regular user」を「External」に名前変更した場合でも、“Regular” の値でリクエストすると同じユーザータイプにリンクされます)。
デフォルトのユーザータイプ ID の値は次のとおりです:
-
Owner: -1
-
Admin: -2
-
Regular: -3
-
External: -4
-
Collaborator: -5
-
Viewer: -8
-
Contributor: -10
注記
Viewer と Contributor のユーザータイプがアカウントで有効かどうかは、アカウントの設定によって異なります。 不明な場合は、カスタマーサクセス担当者に問い合わせて有効かどうかを確認してください。
より堅牢で信頼性の高い方法は、ユーザータイプを API UID で参照することです。常にこの方法を使用してください。 UID は、次のいずれかの方法で取得できます:
-
GET /user_types メソッドを使用して Wrike API で取得できます。
-
既存ユーザーに対する CREATE、GET、PATCH メソッドのレスポンスから取得する。
-
アカウントのオーナーまたは管理者からの依頼に応じて、Wrike のサポートチームがアカウント内のユーザータイプの UID を提供できます。
重要
属性 name.formatted は PATCH メソッドでは更新できないことに注意してください。 この値は、name.familyName と name.givenName のユーザー属性に基づいて自動生成されます。
Wrike では、ユーザーレベルのカスタムフィールド をサポートしています。 これらは、カスタム SCIM 拡張を使用して SCIM 経由でプロビジョニングできます:
各ユーザーカスタムフィールドは次の形式で参照されます:
例:
グループのプロビジョニングでは、次のことが可能です:
-
IdP で定義されたグループに基づいて Wrike ユーザーグループを自動作成
-
グループへのメンバー追加および削除
-
IdP から削除されたときのグループ削除
-
継続的な差分更新
グループは SCIM の /Groups エンドポイントを介して同期されます。