メインコンテンツへスキップ
クロスドメイン・アイデンティティ管理システム (SCIM) API は、インスタンスまたは組織の管理者が W&B 組織内のユーザー、グループ、およびカスタムロールを管理できるようにします。SCIM グループは W&B のチームにマップされます。 SCIM API は <host-url>/scim/ でアクセス可能であり、RC7643 プロトコルに見られるフィールドのサブセットを持つ /Users/Groups エンドポイントをサポートしています。さらに、公式の SCIM スキーマの一部ではない /Roles エンドポイントを含んでいます。W&B は /Roles エンドポイントを追加して、W&B 組織でのカスタムロールの自動管理をサポートしています。
複数の Enterprise SaaS Cloud 組織の管理者である場合、SCIM API リクエストが送信される組織を設定する必要があります。プロファイル画像をクリックし、User Settings をクリックします。設定名は Default API organization です。これは、Dedicated CloudSelf-Managed instances、および SaaS Cloud を含むすべてのホスティングオプションで必要です。SaaS Cloud では、組織の管理者は SCIM API リクエストが正しい組織に行くように、ユーザー設定でデフォルトの組織を設定する必要があります。選択したホスティングオプションに応じて、このページの例で使用される <host-url> プレースホルダーの値が決まります。さらに、例では abcdef のようなユーザー ID が使用されています。実際のリクエストとレスポンスでは、ユーザー ID はハッシュ化された値を持っています。

認証

組織またはインスタンスの管理者は、自分の API キーを使用した基本認証を利用して SCIM API にアクセスできます。HTTP リクエストの Authorization ヘッダーを文字列 Basic の後にスペースを置き、その後のベース64エンコードされた文字列を username:API-KEY 形式に設定します。つまり、ユーザー名と API キーを : 文字で区切った後、その結果をベース64エンコードします。例えば、demo:p@55w0rd として認証するには、ヘッダーは Authorization: Basic ZGVtbzpwQDU1dzByZA== であるべきです。

ユーザーリソース

SCIM ユーザーリソースは W&B のユーザーにマップされます。

ユーザーの取得

  • エンドポイント: <host-url>/scim/Users/{id}
  • メソッド: GET
  • 説明: ユーザーの一意の ID を提供することにより、SaaS Cloud 組織または Dedicated Cloud または Self-Managed インスタンス内の特定のユーザーの情報を取得します。
  • リクエスト例:
  • レスポンス例:

ユーザーのリスト

  • エンドポイント: <host-url>/scim/Users
  • メソッド: GET
  • 説明: SaaS Cloud 組織または Dedicated Cloud または Self-Managed インスタンス内のすべてのユーザーのリストを取得します。
  • リクエスト例:
  • レスポンス例:

ユーザーの作成

  • エンドポイント: <host-url>/scim/Users
  • メソッド: POST
  • 説明: 新しいユーザーリソースを作成します。
  • サポートされているフィールド:
  • リクエスト例:
  • レスポンス例:

ユーザーの削除

  • エンドポイント: <host-url>/scim/Users/{id}
  • メソッド: DELETE
  • 説明: ユーザーの一意の ID を提供することにより、SaaS Cloud 組織または Dedicated Cloud または Self-Managed インスタンスから完全にユーザーを削除します。必要に応じて Create user API を使用して組織またはインスタンスに再度ユーザーを追加してください。
  • リクエスト例:
一時的にユーザーを無効化するには、PATCH エンドポイントを使用する Deactivate user API を参照してください。
  • レスポンス例:

ユーザーの無効化

  • エンドポイント: <host-url>/scim/Users/{id}
  • メソッド: PATCH
  • 説明: ユーザーの一意の ID を提供することにより、Dedicated Cloud または Self-Managed インスタンス内で一時的にユーザーを無効化します。必要に応じて Reactivate user API を使用してユーザーを再有効化します。
  • サポートされているフィールド:
SaaS Cloud では、ユーザーの無効化および再有効化の操作はサポートされていません。
  • リクエスト例:
  • レスポンス例: この操作はユーザーオブジェクトを返します。

ユーザーの再有効化

  • エンドポイント: <host-url>/scim/Users/{id}
  • メソッド: PATCH
  • 説明: ユーザーの一意の ID を提供することにより、Dedicated Cloud または Self-Managed インスタンス内で無効化されたユーザーを再有効化します。
  • サポートされているフィールド:
SaaS Cloud では、ユーザーの無効化および再有効化の操作はサポートされていません。
  • リクエスト例:
  • レスポンス例: この操作はユーザーオブジェクトを返します。

組織レベルのロールをユーザーに割り当てる

  • エンドポイント: <host-url>/scim/Users/{id}
  • メソッド: PATCH
  • 説明: 組織レベルのロールをユーザーに割り当てます。このロールは、ここで説明されているように adminviewer または member のいずれかになります (こちらを参照)。 SaaS Cloud では、ユーザー設定で SCIM API の正しい組織を設定することを確認してください。
  • サポートされているフィールド:
  • リクエスト例:
  • レスポンス例: この操作はユーザーオブジェクトを返します。

チームレベルのロールをユーザーに割り当てる

  • エンドポイント: <host-url>/scim/Users/{id}
  • メソッド: PATCH
  • 説明: チームレベルのロールをユーザーに割り当てます。このロールは、ここで説明されているように adminviewermember またはカスタムロールのいずれかになります (こちらを参照)。 SaaS Cloud では、ユーザー設定で SCIM API の正しい組織を設定することを確認してください。
  • サポートされているフィールド:
  • リクエスト例:
  • レスポンス例: この操作はユーザーオブジェクトを返します。

グループリソース

SCIM グループリソースは W&B のチームにマップされます。つまり、W&B デプロイメントで SCIM グループを作成すると W&B チームが作成されます。その他のグループエンドポイントにも同様です。

チームの取得

  • エンドポイント: <host-url>/scim/Groups/{id}
  • メソッド: GET
  • 説明: チームの一意の ID を提供してチーム情報を取得します。
  • リクエスト例:
  • レスポンス例:

チームのリスト

  • エンドポイント: <host-url>/scim/Groups
  • メソッド: GET
  • 説明: チームのリストを取得します。
  • リクエスト例:
  • レスポンス例:

チームの作成

  • エンドポイント: <host-url>/scim/Groups
  • メソッド: POST
  • 説明: 新しいチームリソースを作成します。
  • サポートされているフィールド:
  • リクエスト例:
wandb-support というチームを作成し、そのメンバーとして dev-user2 を設定します。
  • レスポンス例:

チームの更新

  • エンドポイント: <host-url>/scim/Groups/{id}
  • メソッド: PATCH
  • 説明: 既存のチームのメンバーシップリストを更新します。
  • サポートされている操作: メンバーの追加、メンバーの削除
  • リクエスト例:
wandb-devsdev-user2 を追加する
  • レスポンス例:

チームの削除

  • SCIM API では、チームには追加データがリンクされているため、現在チームの削除はサポートされていません。削除を確認するにはアプリからチームを削除してください。

ロールリソース

SCIM ロールリソースは W&B のカスタムロールにマップされます。前述したように、/Roles エンドポイントは公式 SCIM スキーマの一部ではありません。W&B は W&B 組織内のカスタムロールの自動管理をサポートするために /Roles エンドポイントを追加しています。

カスタムロールの取得

  • エンドポイント: <host-url>/scim/Roles/{id}
  • メソッド: GET
  • 説明: ロールの一意の ID を提供し、カスタムロールの情報を取得します。
  • リクエスト例:
  • レスポンス例:

カスタムロールの一覧

  • エンドポイント: <host-url>/scim/Roles
  • メソッド: GET
  • 説明: W&B 組織のすべてのカスタムロールの情報を取得します
  • リクエスト例:
  • レスポンス例:

カスタムロールの作成

  • エンドポイント: <host-url>/scim/Roles
  • メソッド: POST
  • 説明: W&B 組織内で新しいカスタムロールを作成します。
  • サポートされているフィールド:
  • リクエスト例:
  • レスポンス例:

カスタムロールの削除

  • エンドポイント: <host-url>/scim/Roles/{id}
  • メソッド: DELETE
  • 説明: W&B 組織内のカスタムロールを削除します。慎重に使用してください。 カスタムロールから継承される定義済みロールは、操作前にカスタムロールに割り当てられていたすべてのユーザーに再び割り当てられます。
  • リクエスト例:
  • レスポンス例:

カスタムロールの権限の更新

  • エンドポイント: <host-url>/scim/Roles/{id}
  • メソッド: PATCH
  • 説明: W&B 組織内のカスタムロールにカスタム権限を追加または削除します。
  • サポートされているフィールド:
  • リクエスト例:
  • レスポンス例:

カスタムロールメタデータの更新

  • エンドポイント: <host-url>/scim/Roles/{id}
  • メソッド: PUT
  • 説明: W&B 組織内のカスタムロールの名前、説明、または継承ロールを更新します。この操作は、既存の、つまり非継承のカスタム権限には影響しません。
  • サポートされているフィールド:
  • リクエスト例:
  • レスポンス例: