Skype for Business、OneDrive for Business、SharePoint Online、Microsoft Teams、Exchange Onlineの暗号化

Microsoft 365 は、物理データ センターのセキュリティ、ネットワーク セキュリティ、アクセス セキュリティ、アプリケーション セキュリティ、データ セキュリティなど、複数のレイヤーで広範な保護を提供する非常に安全な環境です。

Skype for Business

Skype for Business顧客データは、会議の参加者によってアップロードされたファイルまたはプレゼンテーションの形式で保存できます。 Web 会議サーバーは、AES を使用して顧客データを 256 ビット キーで暗号化します。 暗号化された顧客データは、ファイル共有に格納されます。 顧客データの各部分は、異なるランダムに生成された 256 ビット キーを使用して暗号化されます。 顧客データの一部が会議で共有されると、Web 会議サーバーは、HTTPS 経由で暗号化された顧客データをダウンロードするように会議クライアントに指示します。 顧客データを復号化できるように、対応するキーをクライアントに送信します。 Web 会議サーバーは、会議の顧客データへのアクセスをクライアントに許可する前に、会議クライアントも認証します。 Web 会議に参加すると、各会議クライアントは、最初に TLS 経由でフロントエンド サーバー内で実行されている会議フォーカス コンポーネントと共に SIP ダイアログを確立します。 会議のフォーカスは、Web 会議サーバーによって生成された認証 Cookie を会議クライアントに渡します。 その後、会議クライアントは Web 会議サーバーに接続し、サーバーによって認証される認証 Cookie を提示します。

Sharepoint Online と OneDrive for Business

SharePoint Online のすべての顧客ファイルは、常に 1 つのテナントに対して排他的な一意のファイルごとのキーによって保護されます。 キーは、SharePoint Online サービスによって作成および管理されるか、カスタマー キーが使用、作成、および管理されるときに、顧客によって管理されます。 ファイルがアップロードされると、Azure ストレージに送信される前に、アップロード要求のコンテキスト内で SharePoint Online によって暗号化が実行されます。 ファイルがダウンロードされると、SharePoint Online は一意のドキュメント識別子に基づいて Azure Storage から暗号化された顧客データを取得し、ユーザーに送信する前に顧客データを復号化します。 Azure Storage には、顧客データを復号化したり、識別したり理解したりする機能はありません。 すべての暗号化と暗号化解除は、テナントの分離を強制するシステムと同じシステム (Azure Active Directory と SharePoint Online) で行われます。

Microsoft 365 のいくつかのワークロードでは、SharePoint Online にすべてのファイルを格納する Microsoft Teams や、そのストレージに SharePoint Online を使用するOneDrive for Businessなど、SharePoint Online にデータが格納されます。 SharePoint Online に格納されているすべての顧客データは、(1 つ以上の AES 256 ビット キーを使用して) 暗号化され、次のようにデータセンター全体に分散されます。 (この暗号化プロセスのすべての手順は、FIPS 140-2 レベル 2 検証済みです。FIPS 140-2 コンプライアンスの詳細については、「 FIPS 140-2 コンプライアンス」を参照してください)。

  • 各ファイルは、ファイル サイズに応じて 1 つ以上のチャンクに分割されます。 各チャンクは、独自の一意の AES 256 ビット キーを使用して暗号化されます。

  • ファイルが更新されると、更新は同じ方法で処理されます。変更は 1 つ以上のチャンクに分割され、各チャンクは個別の一意のキーで暗号化されます。

  • これらのチャンク (ファイル、ファイルの一部、更新差分) は、複数の Azure ストレージ アカウントにランダムに分散される Azure ストレージに BLOB として格納されます。

  • 顧客データのこれらのチャンクの暗号化キーのセットは、それ自体が暗号化されます。

    • BLOB の暗号化に使用されるキーは、SharePoint Online コンテンツ データベースに格納されます。
    • Content Database は、データベース アクセス制御と保存時の暗号化によって保護されます。 暗号化は、Azure SQL DatabaseTransparent Data Encryption (TDE) を使用して実行されます。 (Azure SQL Database は、リレーショナル データ、JSON、空間、XML などの構造をサポートする Microsoft Azure の汎用リレーショナル データベース サービスです。これらのシークレットは、テナント レベルではなく、SharePoint Online のサービス レベルにあります。 これらのシークレット (マスター キーとも呼ばれます) は、キー ストアと呼ばれる別のセキュリティで保護されたリポジトリに格納されます。 TDE は、アクティブなデータベースとデータベースのバックアップとトランザクション ログの両方に保存時のセキュリティを提供します。
    • お客様が省略可能なキーを指定すると、顧客キーは Azure Key Vaultに格納され、サービスはキーを使用してテナント キーを暗号化します。このキーを使用してサイト キーを暗号化し、それを使用してファイル レベル キーを暗号化します。 基本的に、顧客がキーを提供したときに新しいキー階層が導入されます。
  • ファイルの再アセンブルに使用されるマップは、暗号化解除に必要なマスター キーとは別に、暗号化されたキーと共にコンテンツ データベースに格納されます。

  • 各 Azure ストレージ アカウントには、アクセスの種類 (読み取り、書き込み、列挙、削除) ごとに独自の一意の資格情報があります。 各資格情報セットはセキュリティが確保されたキー ストアで保管され、定期的に更新されます。 前述のように、3 種類のストアがあり、それぞれ異なる関数があります。

    • 顧客データは、暗号化された BLOB として Azure Storage に格納されます。 顧客データの各チャンクのキーは暗号化され、コンテンツ データベースに個別に格納されます。 顧客データ自体は、復号化する方法に関する手がかりがありません。
    • コンテンツ データベースは、SQL Server データベースです。 Azure Storage に保持されている顧客データ BLOB の検索と再構成に必要なマップと、それらの BLOB を暗号化するために必要なキーが保持されます。 ただし、キーのセット自体は暗号化され (前述のように) 別のキー ストアに保持されます。
    • キー ストアは、コンテンツ データベースと Azure ストレージとは物理的に分離されています。 各 Azure ストレージ コンテナーの資格情報とマスター キーは、Content Database に保持されている暗号化されたキーのセットに保持されます。

これら 3 つのストレージ コンポーネント (Azure BLOB ストア、コンテンツ データベース、キー ストア) はそれぞれ物理的に分離されています。 いずれかのコンポーネントに保管されている情報は、それ自体では使用できません。 3 つすべてにアクセスできない場合、チャンクへのキーの取得、キーの暗号化解除を行って使用できるようにする、キーを対応するチャンクに関連付ける、各チャンクを復号化する、または構成チャンクからドキュメントを再構築することは不可能です。

データセンター内のマシン上の物理ディスク ボリュームを保護する BitLocker 証明書は、ファーム キーで保護されたセキュリティで保護されたリポジトリ (SharePoint Online シークレット ストア) に格納されます。

BLOB ごとのキーを保護する TDE キーは、次の 2 つの場所に格納されます。

  • BitLocker 証明書を格納し、ファーム キーによって保護されているセキュリティで保護されたリポジトリ。そして
  • Azure SQL Database によって管理されるセキュリティで保護されたリポジトリ内。

Azure ストレージ コンテナーへのアクセスに使用される資格情報は、SharePoint Online シークレット ストアにも保持され、必要に応じて各 SharePoint Online ファームに委任されます。 これらの資格情報は Azure Storage SAS 署名であり、データの読み取りまたは書き込みに使用される個別の資格情報と、ポリシーが適用され、60 日ごとに自動的に期限切れになります。 データの読み取りまたは書き込みに異なる資格情報が使用され (両方ではなく)、SharePoint Online ファームには列挙するアクセス許可が与えられません。

注:

Office 365米国政府機関のお客様の場合、データ BLOB は Azure U.S. Government Storage に格納されます。 さらに、Office 365米国政府の SharePoint Online キーへのアクセスは、特別にスクリーニングされたOffice 365スタッフに限定されます。 Azure 米国政府機関の運用スタッフは、データ BLOB の暗号化に使用される SharePoint Online キー ストアにアクセスできません。

SharePoint Online とOneDrive for Businessでのデータ暗号化の詳細については、「OneDrive for Businessでのデータ暗号化」と「SharePoint Online」を参照してください。

SharePoint Online でアイテムを一覧表示する

リスト アイテムは、アドホックで作成される顧客データのチャンクが小さいか、ユーザーが作成したリスト内の行、SharePoint Online ブログ内の個々の投稿、SharePoint Online Wiki ページ内のエントリなど、サイト内でより動的に存在できるデータです。 リスト アイテムはコンテンツ データベース (Azure SQL データベース) に格納され、TDE で保護されます。

転送中データの暗号化

OneDrive for Businessと SharePoint Online では、データがデータセンターに出入りする 2 つのシナリオがあります。

  • サーバーとのクライアント通信 - SharePoint Online への通信とインターネット経由のOneDrive for Businessでは、TLS 接続が使用されます。
  • データセンター間のデータ移動 - データセンター間 でデータを移動する主な理由は、ディザスター リカバリーを有効にする geo レプリケーションです。 たとえば、トランザクション ログと BLOB ストレージの差分SQL Serverは、このパイプに沿って移動します。 このデータはプライベート ネットワークを使用して既に送信されていますが、クラス最高の暗号化でさらに保護されています。

Exchange Online

Exchange Onlineでは、すべてのメールボックス データに BitLocker が使用され、BitLocker の構成については、BitLocker for Encryption で説明されています。 サービス レベルの暗号化では、メールボックス レベルのすべてのメールボックス データが暗号化されます。

Microsoft 365 では、サービス暗号化に加えて、サービス暗号化の上に構築されたカスタマー キーもサポートされています。 カスタマー キーは、Microsoft のロードマップにもExchange Onlineサービス暗号化用の Microsoft マネージド キー オプションです。 この暗号化方法は、サーバー管理者とデータの暗号化解除に必要な暗号化キーの分離を提供するため、BitLocker によって提供されない保護を強化します。また、暗号化はデータに直接適用されるため (論理ディスク ボリュームで暗号化を適用する BitLocker とは対照的に)、Exchange サーバーからコピーされた顧客データは暗号化されたままになります。

Exchange Onlineサービス暗号化のスコープは、Exchange Online内に保存されている顧客データです。 (Skype for Businessは、ユーザーのExchange Online メールボックス内にほぼすべてのユーザー生成コンテンツを格納するため、Exchange Onlineのサービス暗号化機能を継承します)。

Microsoft Teams

Teams では、TLS と MTLS を使用してインスタント メッセージを暗号化します。 トラフィックが内部ネットワークに限定されているか、内部ネットワーク境界を越えるかにかかわらず、すべてのサーバー間トラフィックには MTLS が必要です。

次の表は、Teams で使用されるプロトコルをまとめたものです。

トラフィックの種類 によって暗号化される
サーバー間 Mtls
クライアント対サーバー (インスタント メッセージングとプレゼンスなど) TLS
メディア フロー (メディアのオーディオとビデオの共有など) TLS
メディアのオーディオとビデオの共有 SRTP/TLS
通知 TLS

メディアの暗号化

メディア トラフィックは、Real-Time トランスポート プロトコル (RTP) のプロファイルである Secure RTP (SRTP) を使用して暗号化され、RTP トラフィックの機密性、認証、および再生攻撃保護が提供されます。 SRTP では、セキュリティで保護された乱数ジェネレーターを使用して生成されたセッション キーが使用され、シグナリング TLS チャネルを使用して交換されます。 クライアントからクライアントへのメディア トラフィックは、クライアント対サーバー接続シグナリングを介してネゴシエートされますが、クライアントからクライアントに直接移動するときに SRTP を使用して暗号化されます。

Teams は、TURN 経由でメディア リレーに安全にアクセスするために資格情報ベースのトークンを使用します。 メディア リレーは、TLS で保護されたチャネルを介してトークンを交換します。

Fips

Teams は、暗号化キー交換に FIPS (連邦情報処理標準) 準拠アルゴリズムを使用します。 FIPS の実装の詳細については、 連邦情報処理標準 (FIPS) パブリケーション 140-2 を参照してください。