SharePoint Embedded の構造を理解する

完了

SharePoint Embedded では、カスタム アプリケーションの開発者がファイルやドキュメントの格納に使用するストレージ コンテナーの概念が導入されています。 このコンテナー内のファイルには、SharePoint 埋め込みコンテナーを介してのみアクセスできます。 開発者は、既知および確立された Microsoft Graph API を使用して、これらのコンテナー内のファイルとドキュメントにアクセスします。 このセクションでは、SharePoint Embedded の構造と、Microsoft 365 テナントでコンテナーを作成する方法について説明します。

SharePoint Embedded の構造を理解する

SharePoint Embedded アプリを作成する開発者と ISV は、一般に プロバイダーと呼ばれます。 これらのアプリケーションの顧客は、一般に コンシューマーと呼ばれます。

運用環境では、通常、プロバイダーテナントとコンシューマー テナントは異なります。 たとえば、1 つのプロバイダーに多数のコンシューマーまたは顧客を含めることができます。 ただし、開発中は、プロバイダーとコンシューマーのテナントは、セットアップを簡略化するために同じことができます。

SharePoint Embedded Providers

SharePoint Embedded アプリを作成するプロバイダーは、プロバイダーの Microsoft 365 テナントの SharePoint Embedded インスタンスと、Microsoft 365 に関連付けられている Microsoft Entra ID テナントに、いくつかの異なるものを作成します。

アプリケーション コードベースと Microsoft Entra ID アプリケーションを作成します。 Entra アプリケーションは、SharePoint 埋め込みコンテナー内のファイルの読み取りと書き込みを含む、SharePoint Embedded タスクの Microsoft Graph API と SharePoint API の両方の認証と呼び出しにアプリケーションが使用するアプリケーションです。

次に、プロバイダーは、SharePoint Online PowerShell New-SPOContainerType コマンドレットを使用して、プロバイダーの SharePoint テナントにコンテナーの種類を作成します。 その

SharePoint Embedded アプリケーションによって作成されたコンテナーはすべて、1 つの変更できない ContainerType の ID に関連付けられます。 コンテナーには、SharePoint Embedded アプリケーション内のコンテンツが含まれています。

コンテナーの種類には、SharePoint Embedded ソリューションで次の 2 つの重要な役割があります。

  • Microsoft Entra ID アプリケーションと ContainerType にリンクされているすべてのコンテナーの間の関係を定義します。
  • 課金目的で特定の Azure サブスクリプションにリンクされているすべてのコンテナーを関連付けます。

重要

Microsoft Entra ID アプリケーションには、最大で 1 つのコンテナーの種類を関連付けることができます。

SharePoint 埋め込みコンシューマー

コンシューマー テナント管理者は、プロバイダーのテナントに必要なリソース (Microsoft Entra ID アプリケーションを含む) を作成した後、次の 2 つの操作を実行する必要があります。

  • テナント内のプロバイダーの Microsoft Entra ID アプリケーションに同意し、必要に応じて、使用しているテナント内のすべてのユーザーに代わって同意します。
  • プロバイダーコンテナーの種類を使用しているテナントに登録します。

コンテナーの種類と使用するテナントの登録は、プロバイダー テナントから行われ、アプリが消費テナントで初めて実行される必要があります。

この場合、Microsoft は Microsoft Entra ID アプリケーションの ID を調び、プロバイダー テナントを見つけ、アプリケーションがそのコンテナーの種類を所有していることを検証します。 これは、所有しているアプリケーションだけが、使用しているテナントの登録設定を呼び出すことができるためです。 また、プロバイダーと使用しているテナントは同じクラウド内にありますが、異なるリージョンに存在する可能性もあります。 たとえば、プロバイダーとコンシューマーのテナントは運用環境または GCC High クラウド内に存在できますが、クラウド間に Microsoft が到達できないため、異なるクラウドには存在しません。

検証されると、登録プロセスによって、アクセス許可マップと構成設定が使用テナントに配置されます。

コンテナーの種類とプロバイダーテナントとコンシューマー テナントの関係を示すスクリーンショット。

SharePoint Embedded のアクセス許可について

SharePoint Embedded Container のアクセス許可は SharePoint のアクセス許可に関連しますが、SharePoint の実装方法とは少し異なる方法で処理されます。 SharePoint と同様に、より具体的なレベルでオーバーライドされない限り、アクセス許可は親にフォールバックします。

たとえば、ドキュメント ライブラリの既定のアクセス許可は、外側のサイトのアクセス許可を継承し、サイトのアクセス許可はサイト コレクションに基づいています。

SharePoint テナントとパーティションを示すスクリーンショット。

ただし、ドキュメント ライブラリに対するアクセス許可の制限が厳しい場合があります。 この同じモデルは、SharePoint Embedded に関して当てはまります。

SharePoint と OneDrive のアクセス許可モデルを示すスクリーンショット。

SharePoint と SharePoint Embedded の間のアクセス許可には、2 つの大きな違いがあります。

まず、SharePoint とは異なり、SharePoint Embedded のアクセス許可は追加の権限のみです。 親コンテナーからアクセスを削除するなどの制限の厳しいアクセス許可を SharePoint で適用する機能は、SharePoint Embedded ではサポートされていません。

さらに、SharePoint Embedded には、コンテナー レベルで適用できるロールのセットが定義されています。

  • 所有者: コンテナーとコンテナー内のすべてのコンテンツの完全な制御を許可します。 委任されたユーザーには、コンテナーの作成時にこのロールが自動的に付与されます。

  • マネージャー:ライター ロールと同じですが、コンテナーに対するアクセス許可を維持することもできます。

    重要

    マネージャーは 所有者ロールに ユーザーを追加できません

  • ライター: コンテナー コンテンツを追加、更新、削除します。

  • 閲覧者: コンテナーのコンテンツを表示します。

概要

SharePoint Embedded では、カスタム アプリケーションの開発者がファイルやドキュメントの格納に使用するストレージ コンテナーの概念が導入されています。 このコンテナー内のファイルには、SharePoint 埋め込みコンテナーを介してのみアクセスできます。 開発者は、既知および確立された Microsoft Graph API を使用して、これらのコンテナー内のファイルとドキュメントにアクセスします。 このセクションでは、SharePoint Embedded の構造と、Microsoft 365 テナントにコンテナーを作成する方法について説明しました。