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

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

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


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

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

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

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

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

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

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

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

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

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

サポート対象外

  • ワークスペースのゲスト管理

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

NotionでのSCIMの前提条件

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

  • IDプロバイダー(IdP)がSAML 2.0プロトコルをサポートしていること。

  • ワークスペースオーナーのみが、NotionワークスペースのSCIMを設定可能であること。

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

SCIM APIトークンの生成

エンタープライズプランのワークスペースオーナーは、設定認証とプロビジョンSCIMプロビジョニング にアクセスして、SCIM APIトークンを生成して表示できます。

  1. 新しいトークンを生成するには、右隅にある +新規トークン ボタンをクリックします。

  2. ワークスペースオーナーのみが表示できる一意のトークンがワークスペースオーナーごとに生成されます。

トークンの取り消し

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

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

既存トークンの置き換え

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

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

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

招待メールの停止

プロビジョニングがSCIMによって行われた場合に、ユーザーがワークスペースおよびグループへの招待をメールで受信するかどうかの設定は、エンタープライズプランのワークスペースオーナーが実施できます。設定認証とプロビジョンSCIMプロビジョニングSCIMプロビジョニングからの招待メールを停止する の設定をオンに切り替えると、ユーザーにメールを送信しないよう設定されます。

Azure

Azure Active Directoryヘルプセンターのドキュメントでも手順をご覧いただけます。

NotionのAzure SCIM統合は、以下のプロビジョニング機能をサポートしています。

  • ユーザーを作成する

  • ユーザーを削除する

  • Azure ADとNotionの間でユーザー属性の同期を維持する

  • Notionのグループとグループメンバーシップをプロビジョニングする

  • Notionへのシングルサインオン(推奨)

備考: プロビジョニングのデプロイ計画の詳細については、Azureのドキュメントを参照してください。

ステップ1: Azure ADでのプロビジョニングをサポートするようにNotionを設定する

  1. Notionワークスペースにログインして、

    設定認証とプロビジョン タブを開き、SCIMプロビジョニング セクションまで下にスクロールします。

  2. トークンが生成されていない場合は、

    +トークンを追加 をクリックして、トークンをコピーします。このトークンは、ステップ5.5でシークレットトークンとして入力します。

ステップ2: Azure ADのアプリケーションギャラリーからNotionを追加する

  • こちらの手順に沿って、ギャラリーからアプリケーションを追加します。

Azure ADプロビジョニングサービスでは、アプリケーションへの割り当てに基づいて、またはユーザーやグループの属性に基づいて、プロビジョニングされるユーザーの範囲を設定することができます。

  • 割り当てに基づいて、アプリにプロビジョニングされるユーザーの範囲を設定する場合は、次のステップを使用してユーザーとグループをアプリケーションに割り当てます。

  • ユーザーまたはグループの属性のみに基づいて、プロビジョニングされるユーザーの範囲を設定する場合は、こちらで説明されているようにスコープフィルターを使用します。

ステップ3: Notionへの自動ユーザープロビジョニングを設定する

  1. Azure portalにサインインし、エンタープライズアプリケーション に移動し、すべてのアプリケーション を選択します。

  2. アプリケーションの一覧から Notion を選択します。

  3. プロビジョニング タブを選択します。

  4. プロビジョニングモード自動 に設定します。

  5. 管理者資格情報 セクションで、NotionのテナントURLとシークレットトークンを入力します。テスト接続 をクリックして、Azure ADがNotionに接続できることを確認します。接続に失敗した場合は、ご自身のNotionアカウントに管理者権限があることを確認してから再試行してください。

  6. 保存 を選択します。

  7. マッピング セクションで、Azure Active DirectoryのユーザーをNotionに同期する を選択します。

    • 属性マッピング セクションで、Azure ADからNotionに同期されるユーザー属性を確認します。保存 ボタンを選択して変更を確定します。

  8. マッピング セクションで、Azure Active DirectoryのグループをNotionに同期する を選択します。

    • 属性マッピング セクションで、Azure ADからNotionに同期されるグループ属性を確認します。保存 ボタンを選択して変更を確定します。

  9. Notionに対するAzure ADプロビジョニングサービスを有効にするには、設定 セクションで プロビジョニングの状態オン に変更します。

  10. Notionにプロビジョニングするユーザーやグループを定義するには、設定 セクションの スコープ で、目的の値を選択します。

  11. プロビジョニングの準備ができたら、保存 をクリックします。

備考: この操作により、設定 セクションの スコープ で定義されているすべてのユーザーとグループの初期同期サイクルが開始されます。

初期サイクルは通常のサイクルよりも実行に時間がかかります。後続のサイクルは、Azure ADのプロビジョニングサービスが実行されている間、約40分間隔で実行されます。

Google

Google Workspace管理者ヘルプセンターのドキュメントでも手順をご覧いただけます。

NotionのGoogle SCIMインテグレーションは、以下のプロビジョニング機能をサポートしています。

  • ユーザーを作成する。

  • ユーザー属性を更新する(ユーザーが組織に属するメールドメインを持っている場合)。

  • ユーザーを非アクティブにする。(これにより、ユーザーがNotionワークスペースから削除されます。)

備考: Google SCIMインテグレーションは、グループのプロビジョニングおよびプロビジョニング解除には対応していません。

ステップ1: Notionでユーザープロビジョニングを有効にする

  1. 設定 メニューから 認証とプロビジョン タブを選択します。

  2. SCIMプロビジョニング セクションまで下にスクロールすると、使用可能なSCIMトークンが一覧表示されます。

  3. SCIMトークンテーブルで既存のトークンの隣にある コピー をクリックするか、右隅の トークンを追加 をクリックして新規トークンを作成します。

ステップ2: Googleでプロビジョニングを設定する

  1. 適切なアクセス許可を持つユーザーアカウントが必要なため、管理者アカウントにサインインしてください。

  2. Google Workspace管理者ヘルプに記載されているNotionアプリケーションの自動プロビジョニングを設定する手順から操作を続けます。

Gusto

設定プロセスの詳細については、以下をご覧ください。

ステップ1: 「コネクト」をクリックし、手順に沿ってアカウントの認証情報を検証します。

  1. Notionのサイドバーで、設定 -> 認証とプロビジョン に移動します。

  2. SCIMプロビジョニングで、トークンを追加 をクリックし、トークンをコピーします。

  3. Gustoで、SCIM APIキーの入力欄にトークンを貼り付け、Notionアカウントに使用しているメールアドレスを入力します。

ステップ2: Notionのユーザーアカウントと、Gustoのチームメンバーを一致させます。

Okta

NotionのOktaインテグレーションは、以下のプロビジョニング機能をサポートしています。

  • ユーザーを作成する

  • ユーザー属性を更新する(ユーザーが組織に属するメールドメインを持っている場合)

  • ユーザーを非アクティブにする(ユーザーをNotionワークスペースから削除します)

  • グループをプッシュする

ステップ1: Notionでプロビジョニングを有効にする

  1. 設定 メニューから 認証とプロビジョン タブを選択します。

  2. SAMLシングルサインオン(SSO)セクションまで下にスクロールします。

  3. SAML SSOの設定を編集ボタンを開きます。

  4. アサーションコンシューマーサービス(ACS)URLの隣にある「コピー」をクリックします。後で利用できるように、どこかに貼り付けておきます。

  5. 設定認証とプロビジョン に戻り、SCIMプロビジョニング セクションまで下にスクロールします。

  6. トークンが生成されていない場合は、+トークンを追加をクリックして、トークンをコピーします。後で利用できるように、どこかに貼り付けておきます。

ステップ2: Okraでプロビジョニングを設定する

  1. OktaのアプリカタログディレクトリからNotionアプリを追加します。

  2. サインオンオプション 画面で、サインオンアプリケーション タブの アプリケーションユーザーネーム のフォーマットに メールを選択します。

  3. プロビジョニング タブで、APIインテグレーションの設定 を選択し、APIインテグレーションを有効にする チェックボックスをオンにします

  4. ステップ1でコピーしておいたNotion SCIM APIトークンを APIトークン テキストボックスに入力して、保存 を選択します

  5. アプリへのプロビジョニングという見出しの隣にある 編集 ボタンをクリックして、ユーザーの作成、ユーザー属性の更新、ユーザーの非アクティブ化などの機能を必要に応じて有効にします。保存 をクリックします

  6. APIインテグレーション設定後は、グループのプッシュ タブを開き、グループのプッシュ ボタンから、Notionと同期させたいOktaグループを追加します。

備考: 既存のSCIM設定を介してユーザーやグループを更新する場合は、OktaからNotionアプリを削除しないでください。Notionアプリを削除すると、プロビジョニングされたすべてのユーザーがワークスペースから削除されます。

OneLogin

以下のOneLoginのWebサイトのドキュメントでも手順をご覧いただけます。

NotionのOneLoginインテグレーションは、以下のプロビジョニング機能をサポートしています。

  • ユーザーを作成する

  • ユーザー属性を更新する(ユーザーが組織に属するメールドメインを持っている場合)

  • ユーザーを非アクティブにする(ユーザーをNotionワークスペースから削除します)

  • Notionの権限グループにOneLoginのロールをマッピングするルールを作成する

備考: OneLoginを通してNotionにユーザーをプロビジョニングする場合、SSOを設定する前にSCIMを設定することが重要です。

ステップ1: Notionでプロビジョニングを有効にする

  • 設定 から 認証とプロビジョン タブを選択します。

  • SAMLシングルサインオン(SSO) セクションまで下にスクロールします。

  • SAML SSOの設定を編集ボタンをクリックします。

  • アサーションコンシューマーサービス(ACS)URLの隣にある「コピー」をクリックします。後で利用できるように、どこかに貼り付けておきます。

  • 設定 に戻り、認証とプロビジョン タブを選択し、SCIMプロビジョニング セクションまで下にスクロールします。

  • トークンが生成されていない場合は、+トークンを追加をクリックして、トークンをコピーします。後で利用できるように、どこかに貼り付けておきます。

備考: ワークスペースオーナーは、自分が生成したトークンのみをコピーして使用できます。トークンが別のワークスペースオーナーによって既に生成されている場合は、別のトークンが必要かどうかを判断して調整してください。トークンを生成したワークスペースオーナーがワークスペースを退出したり、メンバーにダウングレードした場合、トークンはすべて失効します。

ステップ2: OneLoginでプロビジョニングを設定する

  1. 管理アプリケーションアプリケーション にアクセスします。

  2. アプリの追加 ボタンをクリックし、検索ボックスで「Notion」を検索して、NotionのSAML 2.0バージョンを選択します。

  3. 保存 をクリックします

  4. 構成 タブに移動します。

  5. アサーションコンシューマーサービス(ACL)URLをコンシューマーURL ボックスに貼り付けます。

  6. SCIM API トークンSCIM Bearerトークン ボックスに貼り付けます。

  7. 有効化 をクリックします。

  8. プロビジョニング タブに移動します。

  9. ワークフロー の下の プロビジョニングを有効にする をオンにします。

  10. 右上にある 保存 ボタンをクリックします。

    • 任意このアクションが実行される前に管理者の承認を必要とする の下で、ユーザーが作成、削除、更新される時に管理者の承認を必要とするかどうかを選択できます。

    • 任意)OneLoginでユーザーが削除された場合に、Notionでそのユーザーをどのように扱うかを選択します。「Delete」(Notionワークスペースからそのユーザーを削除)か、「Do Nothing」(何もしない)を選択します。

  11. 右上にある 保存 ボタンをクリックします。

Rippling

以下のRipplingのWebサイトで、詳細なドキュメントをご覧いただけます。

以下のテーブルは、SCIMユーザー属性とNotionユーザーのプロフィールフィールドの間のマッピングの概要を示しています。他のユーザー属性は無視されます。

  • GET /Users

    • GET <https://api.notion.com/scim/v2/Users>

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

    • startIndexcount パラメーターを使用して、ページ分割ができます。 startIndex は1-indexedであることにご留意ください。

    • filter パラメーターを使用して、結果を絞り込むことができます。絞り込みに有効な属性は、 emailgiven_namefamily_name などです。例: GET <https://api.notion.com/scim/v2/Users?startIndex=1&count=50&filter=email> eq employee@acmecorp.com

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

  • GET /Users/<id>

    • GET <https://api.notion.com/scim/v2/Users/><id>

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

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

  • POST /Users

    • POST <https://api.notion.com/scim/v2/Users>

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

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

  • PATCH /Users/<id>

    • PATCH <https://api.notion.com/scim/v2/Users/><id>

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

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

  • PUT /Users/<id>

    • PUT <https://api.notion.com/scim/v2/Users/><id>

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

  • DELETE /Users/<id>

    • DELETE <https://api.notion.com/scim/v2/Users/><id>

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

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

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

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

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

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

  • GET /Groups

    • GET <https://api.notion.com/scim/v2/Groups>

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

    • startIndexcount パラメーターを使用して、ページ分割ができます。startIndex は1から起算されること、またcountは最大100であることにご留意ください。
      例:  GET <https://api.notion.com/scim/v2/Groups?startIndex=1&count=5>

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

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

  • GET /Groups/<id>

    • GET <https://api.notion.com/scim/v2/Groups/><id>

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

  • POST /Groups

    • POST <https://api.notion.com/scim/v2/Groups>

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

  • PATCH /Groups/<id>

    • PATCH <https://api.notion.com/scim/v2/Groups/><id>

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

  • PUT /Groups/<id>

    • PUT <https://api.notion.com/scim/v2/Groups/><id>

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

  • DELETE /Groups/<id>

    • DELETE <https://api.notion.com/scim/v2/Groups/><id>

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

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


フィードバックを送信

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