SCIMでのユーザーやグループのプロビジョニング

SCIMでのユーザーとグループのプロビジョニング: Hero
この記事の内容

System for Cross-domain Identity Management(SCIM)API標準規格により、Notionワークスペースのユーザーやグループのプロビジョニングや管理ができます 🔑


注:この機能は、ビジネスプランまたはエンタープライズプランのユーザーのみが利用できます。

NotionのSCIM APIを使用すると、次の操作が可能になります:

ユーザープロビジョニングと管理

  • ワークスペースのメンバー作成、削除

  • メンバーのプロフィール情報更新

  • ワークスペースのメンバー取得

  • メールアドレスまたは名前でメンバーを検索します。

グループプロビジョニングと管理

  • ワークスペースのグループ作成、削除

  • グループメンバーの追加、削除

  • ワークスペースのグループ取得

  • 名前でグループを検索します。

注:現時点では、NotionのSCIM APIを使用してワークスペースゲストを管理することはできません。

現在、OneLogin、Okta、Rippling、カスタムSCIMアプリケーションがサポートされています。他のIDプロバイダーをご利用の場合は、お問い合わせください。特定のアプリのIDプロバイダー設定の手順はこちら →

NotionでのSCIMの前提条件

NotionでSCIMを使用する方法:

  • エンタープライズプランのワークスペースであること。

  • IDプロバイダー(IdP)がSAML 2.0プロトコルをサポートしていること。特定のアプリのIDプロバイダー設定の手順はこちら →

  • ワークスペースオーナーが、NotionワークスペースのSAML SSOを設定すること。

  • SCIMを使用してユーザーの名前またはメールアドレスを変更する場合は、メールドメインの所有権が検証済みである必要があります。ドメイン検証について詳しくはこちら →

SCIM APIトークンの生成

エンタープライズプランの組織オーナーのみが、SCIM APIトークンを生成して表示できます。SCIM APIトークンを作成する方法:

  1. ワークスペース切り替えメニューを開き、組織を管理するを選択します。まだの場合は、まず組織の設定が必要になる場合があります。詳しくはこちら →

  2. 組織レベルのコントロールの「一般」タブで、SCIMプロビジョニングの横にある>を選択します。

Note: For each workspace you want to manage via SCIM, you must generate a separate SCIM API token.

トークンの取り消し

ワークスペースオーナーがワークスペースから退出するか、ロールが変更されると、トークンは取り消されます。この場合、ワークスペースの残りのワークスペースオーナーに自動メッセージが送信され、取り消されたトークンを置き換えるように通知されます。

さらに、アクティブなトークンは、ワークスペース内のどのワークスペースオーナーでも取り消すことができます。トークンを取り消すには、それぞれのトークンの横にある 🗑 をクリックします。

既存トークンの置き換え

トークンが取り消された場合は、既存のインテグレーションでトークンを置き換える必要があります。

失効したトークンに依存するSCIMインテグレーションおよびユーザープロビジョニングは、有効なトークンに置き換えられるまで使用不可になります。

備考: 既存のインテグレーションに影響を与えないようにするには、プロビジョニングを解除する前に、管理者に関連付けられているトークンをすべて置き換えてください。

招待メールの停止

エンタープライズプランの組織オーナーは、SCIMによるプロビジョン設定時に、ワークスペースやグループへの招待をメールで送信するかどうかを次の手順で管理できます。

  1. ワークスペース切り替えメニューを開き、組織を管理するを選択します。

  2. ユーザーにメールを送信しない場合は、「一般」タブで、「SCIMプロビジョニングからの招待メールを停止」をオンに切り替えます。

  • GET /ServiceProviderConfig

    • GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=serviceproviderconfig>

    • 利用可能なSCIM仕様の機能の説明を取得します。

    • SCIMプロトコル仕様のセクション5で定義されています。

  • GET /ResourceTypes

    • GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=resourcetypes>

    • 利用可能なSCIMリソースタイプのリストを取得します。

    • SCIMプロトコル仕様のセクション6で定義されています。

以下のテーブルは、SCIMユーザー属性とNotionユーザーのプロフィールフィールドの間のマッピングの概要を示しています。ユーザーが追加の属性値をNotionと共有することを選択した場合、それらの属性はNotionの製品体験を向上させるために保存されます。

SCIM属性

Notionユーザープロフィールフィールド

userName

メールアドレス(このフィールドは必須です)

name.formatted

名前(推奨される名前のフィールド。Notionには単一の名前フィールドがあるため、Oktaで任意の名前フィールドを組み合わせる式を作成できます。)

name.familyName

名前(name.formattedの代わりにname.givenNameと組み合わせて使用できます。)

name.givenName

名前(name.formattedの代わりにname.familyNameと組み合わせて使用できます。)

photos

プロフィール写真

title

タイトル

enterprise.manager.value

マネージャー(これはメールアドレスである必要があります)

enterprise.manager.displayName

マネージャー

phoneNumbers

電話番号

addresses

住所

enterprise.division

事業部

enterprise.department

部署

enterprise.costCenter

コストセンター

enterprise.organization

組織

enterprise.employeeNumber

従業員番号

roles

ロール

timezone

タイムゾーン

locale

地域

preferredLanguage

希望する言語

userType

UserType

emails

メールアドレス

active

有効

  • GET /Users

    • GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=users>

    • ワークスペースメンバーのページ分割されたリストを取得します。

    • StartIndex と count パラメーターを使用して、ページ番号を付けることができます。StartIndex は1から起算され、countは最大100であることにご留意ください。

    • filter パラメーターを使用して、結果を絞り込むことができます。絞り込みに有効な属性は、emailgiven_namefamily_nameです。例: GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 users?startindex="1&count=50&filter=email">
      eq [email protected]

    • given_namefamily_name では、大文字と小文字が区別されることにご留意ください。メールアドレスは、小文字に変換されます。

  • GET /Users/<id>

    • GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=users/><id>

    • NotionのユーザーIDにより、特定のワークスペースメンバーを取得します。これは 00000000-0000-0000-0000-000000000000 の形式の32文字のUUIDとなります。

    • meta.createdmeta.lastModified は、意味のあるタイムスタンプ値を反映しないことにご留意ください。

  • POST /Users

    • POST <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=users>

    • 追加しようとしているユーザーが既に同じメールアドレスでNotionのユーザーアカウントを持っている場合、そのユーザーはワークスペースに追加されます。

    • ユーザーが存在しない場合にこれを呼び出すと、新しいNotionユーザーが作成され、作成されたユーザーがワークスペースに追加されます。作成されるNotionユーザープロフィールにマッピングされます。

    • SCIM APIは、ユーザーの作成時にプロフィール写真のプロパティを読み取りますが、今後の更新では読み取りません。

  • PATCH /Users/<id>

    • PATCH <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=users/><id>

    • いくつかの操作を実行して更新し、更新されたユーザーレコードを返します。

備考: ユーザーのメールドメイン(通常、NotionへのSAMLシングルサインオン用に設定したメールドメインと同じ)の所有権が検証されている場合のみ、メンバーのプロフィール情報を更新できます。ドメインを検証はこちらの手順に沿って実施してください →

  • PUT /Users/<id>

    • PUT <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=users/><id>

    • 更新し、更新されたユーザーレコードを返します。

  • DELETE /Users/<id>

    • DELETE <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=users/><id>

    • ワークスペースからユーザーを削除します。ユーザーは、アクティブなセッションすべてからログアウトされます。

      • ユーザーアカウント自体は、SCIMを通して削除できません。アカウントの削除は手動で行ってください。

      • PATCH /Users/またはPUT /Users/リクエストを送信して、アクティブ<id>なユーザー属性をfalse<id>に設定することで、ワークスペースからユーザーを削除することもできます。

      • SCIMボットトークンを作成したワークスペースオーナーは、APIを介して削除することはできません。SCIM APIを介してワークスペースオーナーが削除されると、このワークスペースオーナーが作成したトークンはすべて取り消され、そのボットを使用するインテグレーションがすべて機能しなくなります。

備考: 既存のユーザースキーマの拡張機能である ロール の属性を使用することで、ワークスペースレベルを ユーザー に割り当てることができます。形式は以下の通りです。

"urn:ietf:params:scim:schemas:extension:notion:2.0:User": { role: string // "owner" | "membership_admin" | "member" }

  • GET /Groups

    • GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=groups>

    • ワークスペースグループのページ分割されたリストを取得します。

    • StartIndex と count パラメーターを使用して、ページ番号を付けることができます。StartIndexは1から起算されること、またcountは最大100であることにご留意ください。例: GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 groups?startindex="1&count=5">

      • ページ分割を使用しない場合は、リクエストあたり最大100のワークスペースグループが返されます。

    • filter パラメーターを使用して、結果を絞り込むことができます。グループは、displayName属性で絞り込めます。例:GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 groups?filter="displayName">
      eq Designers

  • GET /Groups/<id>

    • GET <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=groups/><id>

    • NotionのグループIDにより、特定のワークスペースグループを取得します。これは 00000000-0000-0000-0000-000000000000 の形式の32文字のUUIDとなります。

  • POST /Groups

    • POST <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=groups>

    • 新しいワークスペースグループを作成します。

  • PATCH /Groups/<id>

    • PATCH <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=groups/><id>

    • いくつかの操作を実行してワークスペースグループを更新します。

  • PUT /Groups/<id>

    • PUT <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=groups/><id>

    • ワークスペースグループを更新します。

  • DELETE /Groups/<id>

    • DELETE <https: mem-invalid-attributes-holder=api.notion.com mem-invalid-attributes-holder=scim mem-invalid-attributes-holder=v2 mem-invalid-attributes-holder=groups/><id>

    • ワークスペースグループを削除します。

備考: ページへのフルアクセス権を持つユーザーがいなくなる場合は、グループを削除できません。


フィードバックを送信

このコンテンツは役に立ちましたか?