Microsoft 365 での分離とアクセス制御
Microsoft Entra ID と Microsoft 365 は、数十のサービス、数百のエンティティ、数千のリレーションシップ、数万の属性を含む非常に複雑なデータ モデルを使用しています。 大まかに言うと、Microsoft Entra ID とサービス ディレクトリは、状態ベースのレプリケーション プロトコルを使用して同期されたテナントと受信者のコンテナーです。 Microsoft Entra ID 内に保持されるディレクトリ情報に加えて、各サービス ワークロードには独自のディレクトリ サービス インフラストラクチャがあります。
このモデル内には、ディレクトリ データの単一のソースはありません。 特定のシステムが個々のデータを所有していますが、すべてのデータを保持する単一のシステムはありません。 Microsoft 365 サービスは、このデータ モデルで Microsoft Entra ID と連携します。 Microsoft Entra ID は、共有データの "真実のシステム" であり、通常、すべてのサービスで使用される小規模で静的なデータです。 Microsoft 365 および Microsoft Entra ID 内で使用されるフェデレーション モデルは、データの共有ビューを提供します。
Microsoft 365 は、物理ストレージと Azure クラウド ストレージの両方を使用します。 Exchange Online (Exchange Online Protection を含む) は、顧客データに独自のストレージを使用します。 SharePoint では、SQL Server ストレージと Azure Storage の両方が使用されるため、ストレージ レベルで顧客データを分離する必要があります。
Exchange Online
Exchange Online では、メールボックス内に顧客データが格納されます。 メールボックスは、メールボックス データベースと呼ばれる拡張記憶域エンジン (ESE) データベース内でホストされます。 これには、ユーザー メールボックス、リンクされたメールボックス、共有メールボックス、パブリック フォルダー メールボックスが含まれます。
ユーザー メールボックスのコンテンツには、次のものが含まれます。
- メールと電子メールの添付ファイル
- 予定表と空き時間情報
- 連絡先
- タスク
- メモ
- グループ
- 推論データ
Exchange Online 内の各メールボックス データベースには、複数のテナントからのメールボックスが含まれています。 承認コードは、テナント内を含め、各メールボックスをセキュリティで保護します。 既定では、割り当てられたユーザーのみがメールボックスにアクセスできます。 メールボックスをセキュリティで保護するアクセス制御リスト (ACL) には、テナント レベルで Microsoft Entra ID によって認証された ID が含まれています。 各テナントのメールボックスは、テナントの認証プロバイダーに対して認証された ID に制限されます。これには、そのテナントのユーザーのみが含まれます。 テナント A によって明示的に承認されていない限り、テナント A のコンテンツにはテナント B のユーザーはアクセスできません。
SharePoint
SharePoint には、データの分離を提供するいくつかの独立したメカニズムがあります。 これは、アプリケーション データベース内の抽象化されたコードとしてオブジェクトを格納します。 たとえば、ユーザーがファイルを SharePoint にアップロードすると、ファイルは逆アセンブルされ、アプリケーション コードに変換され、複数のデータベース間で複数のテーブルに格納されます。
ユーザーがデータを含むストレージに直接アクセスできる場合、コンテンツは人間や SharePoint 以外のシステムでは解釈できません。 これらのメカニズムには、セキュリティ アクセス制御とプロパティが含まれます。 すべての SharePoint リソースは、テナント内を含め、承認コードとロールベースのアクセス制御 (RBAC) ポリシーによって保護されます。 リソースをセキュリティで保護するアクセス制御リスト (ACL) には、テナント レベルで認証された ID が含まれています。 テナントの SharePoint データは、テナントの認証プロバイダーによって認証された ID に制限されます。
ACL に加えて、認証プロバイダー (テナント固有の Microsoft Entra ID) を指定するテナント レベル のプロパティも 1 回書き込まれ、設定後は変更できません。 テナントに対して認証プロバイダー テナント プロパティが設定されると、テナントに公開されている API を使用して変更することはできません。
テナントごとに一意の SubscriptionId が使用されます。 すべての顧客サイトはテナントによって所有され、テナントに一意の SubscriptionId が割り当てられます。 サイトの SubscriptionId プロパティは 1 回書き込まれ、永続的です。 テナントに割り当てられると、サイトを別のテナントに移動することはできません。 SubscriptionId は、認証プロバイダーのセキュリティ スコープを作成するために使用されるキーであり、テナントに関連付けられています。
SharePoint では、コンテンツ メタデータ ストレージに SQL Server と Azure Storage が使用されます。 コンテンツ ストアのパーティション キーは、SQL の SiteId です 。 SQL クエリを実行する場合、SharePoint では、テナント レベルの SubscriptionId チェックの一部として検証された SiteId が 使用されます。
SharePoint は、暗号化されたファイル コンテンツを Microsoft Azure BLOB に格納します。 各 SharePoint ファームには独自の Microsoft Azure アカウントがあり、Azure に保存されているすべての BLOB は、SQL コンテンツ ストアに格納されているキーを使用して個別に暗号化されます。 承認レイヤーによってコードで保護され、エンド ユーザーに直接公開されない暗号化キー。 SharePoint には、HTTP 要求が複数のテナントのデータを読み取りまたは書き込むタイミングを検出するためのリアルタイム監視があります。 要求 ID SubscriptionId は、アクセスされたリソースの SubscriptionId に 対して追跡されます。 複数のテナントのリソースへのアクセス要求は、エンド ユーザーが行うべきではありません。 マルチテナント環境でのサービス要求だけが例外です。 たとえば、検索クローラーは、データベース全体のコンテンツ変更を一度にプルします。通常は、効率上の理由から、1 つのサービス要求で複数のテナントのサイトに対してクエリを実行する必要があります。
Teams
Teams データは、コンテンツ タイプに応じて異なる方法で格納されます。
詳しくは、 Microsoft Teams アーキテクチャに関する Ignite ブレークアウト セッション をご確認ください。
コア Teams の顧客データ
テナントがオーストラリア、カナダ、欧州連合、フランス、ドイツ、インド、日本、南アフリカ、韓国、スイス (リヒテンシュタインを含む)、アラブ首長国連邦、英国、または米国でプロビジョニングされている場合、Microsoft はその場所でのみ保存される次の顧客データを保存します。
- Teams チャット、チームとチャネルの会話、画像、ボイスメール メッセージ、連絡先。
- SharePoint サイトコンテンツとそのサイト内に格納されているファイル。
- 職場または学校用に OneDrive にアップロードされたファイル。
チャット、チャネル メッセージ、チーム構造
Teams のすべてのチームは、Microsoft 365 グループとその SharePoint サイトと Exchange メールボックスによってサポートされています。 プライベート チャット (グループ チャットを含む)、チャネルでの会話の一部として送信されるメッセージ、およびチームとチャネルの構造は、Azure で実行されているチャット サービスに格納されます。 データは、Information Protection 機能を有効にするために、ユーザーおよびグループ メールボックスの非表示フォルダーにも格納されます。
ボイスメールと連絡先
ボイスメールは Exchange に保存されます。 連絡先は Exchange ベースのクラウド データ ストアに格納されます。 Exchange と Exchange ベースのクラウド ストアは、世界中の各データセンター geo に既にデータ所在地を提供しています。 すべてのチームについて、ボイスメールと連絡先は、オーストラリア、カナダ、フランス、ドイツ、インド、日本、アラブ首長国連邦、英国、南アフリカ、韓国、スイス(リヒテンシュタインを含む)、および米国の国内に保存されます。 その他のすべての国では、ファイルはテナント アフィニティに基づいて、米国、ヨーロッパ、または Asia-Pacific の場所に保存されます。
画像とメディア
チャットで使用されるメディア (Giphy GIF を除きます。これは保存されませんが、元の Giphy サービス URL への参照リンクであり、Giphy は Microsoft 以外のサービスです) は、チャット サービスと同じ場所にデプロイされる Azure ベースのメディア サービスに格納されます。
ファイル
チャネル内の誰かが共有するファイル (OneNote と Wiki を含む) は、チームの SharePoint サイトに格納されます。 会議または通話中にプライベート チャットまたはチャットで共有されたファイルは、ファイルを共有するユーザーの職場または学校アカウントの OneDrive にアップロードされ、保存されます。 Exchange、SharePoint、OneDrive は、世界中の各データセンター geo に既にデータ所在地を提供しています。 そのため、既存のお客様の場合、Teams エクスペリエンスに含まれるすべてのファイル、OneNote ノートブック、Teams Wiki コンテンツ、メールボックスは、テナントアフィニティに基づいてその場所に既に格納されています。 ファイルは、オーストラリア、カナダ、フランス、ドイツ、インド、日本、アラブ首長国連邦、英国、南アフリカ、韓国、スイス (リヒテンシュタインを含む) の国内に格納されます。 その他のすべての国では、ファイルはテナントアフィニティに基づいて米国、ヨーロッパ、またはアジア太平洋の場所に保存されます。