編集

次の方法で共有


規制対象データの安全な研究環境を設計する

Azure Data Science Virtual Machines
Azure Machine Learning
Azure Data Factory

この記事では、高レベルの制御と保護の下にある機密データに研究者がアクセスできるようにする、セキュリティで保護された研究環境について説明します。 この記事は、規制コンプライアンスまたはその他の厳格なセキュリティ要件に準拠する必要がある組織に適用されます。

Architecture

セキュリティで保護された研究環境を示す図。

このアーキテクチャの Visio ファイルをダウンロードします。

データフロー

次のデータフローは、上の図に対応しています。

  1. データ所有者は、公開 BLOB ストレージ アカウントにデータセットをアップロードします。 Microsoft マネージド キーを使用してデータを暗号化します。

  2. Azure Data Factory では、アップロードされたデータセットの特定の場所へのコピーまたはインポート パスを、セキュリティ制御を持つ別のストレージ アカウントへのコピーを開始するトリガーが使用されます。 ストレージ アカウントには、プライベート エンドポイント経由でのみアクセスできます。 アクセス許可が制限されているサービス プリンシパルは、アカウントにアクセスすることもできます。 Data Factory によって元のコピーが削除され、データセットが不変になります。

  3. 研究者は、特権ジャンプ ボックスとして Azure Virtual Desktop を使用して、ストリーミング アプリケーションを介してセキュリティで保護された環境にアクセスします。

  4. セキュリティで保護されたストレージ アカウント内のデータセットは、調査作業のためにセキュリティで保護されたネットワーク環境でプロビジョニングするデータ サイエンス仮想マシン (VM) に表示されます。 データ準備の多くは、これらの VM で行われます。

  5. セキュリティで保護された環境には Azure Machine LearningAzure Synapse Analytics があり、プライベート エンドポイントを介してデータセットにアクセスできます。 これらのプラットフォームを使用して、機械学習モデルのトレーニング、デプロイ、自動化、管理、または Azure Synapse Analytics の使用を行うことができます。 この時点で、規制ガイドラインを満たすモデルを作成できます。 個人情報を削除して、すべてのモデル データを識別解除します。

  6. モデルまたは識別解除されたデータは、セキュリティで保護されたストレージまたはエクスポート パス上の別の場所に保存されます。 エクスポート パスに新しいデータを追加すると、ロジック アプリがトリガーされます。 このアーキテクチャでは、ロジック アプリにデータが送信されないため、ロジック アプリはセキュリティで保護された環境の外部にあります。 その唯一の機能は、通知を送信し、手動承認プロセスを開始することです。

    ロジック アプリは、エクスポートするキューに登録されているデータのレビューを要求することで、承認プロセスを開始します。 手動レビュー担当者は、機密データがエクスポートされないようにします。 レビュー プロセスの後、データは承認または拒否されます。

    Note

    流出に対して承認ステップが必要ない場合は、ロジック アプリの手順を省略できます。

  7. 匿名化されたデータが承認されると、Data Factory インスタンスに送信されます。

  8. Data Factory は、外部の研究者がエクスポートしたデータとモデルにアクセスできるように、データを別のコンテナー内のパブリック ストレージ アカウントに移動します。 または、低レベルのセキュリティ環境で別のストレージ アカウントをプロビジョニングすることもできます。

コンポーネント

このアーキテクチャは、ニーズに応じてリソースをスケーリングするいくつかの Azure サービスで構成されています。 次のセクションでは、これらのサービスとその役割について説明します。 これらのサービスの使用を開始するための製品ドキュメントへのリンクについては、「次のステップ」を参照してください。

主要なワークロード コンポーネント

ここでは、研究データの移動と処理を行う主要なコンポーネントについて説明します。

  • Azure データ サイエンス VM は、データ分析と機械学習用のツールを使用して構成する VM です。 サービスとしてのプラットフォーム (PaaS) 環境でサポートできない特定のパッケージやツール (MATLAB や SAS など) が必要な場合は、データ サイエンス VM を使用します。 セキュリティと使いやすさのために、サポートされている場合は、Machine Learning やその他の PaaS オプションを選択します。

  • Machine Learning は、機械学習モデルのトレーニング、デプロイ、自動化、管理に使用できるサービスです。 これを使用して、機械学習コンピューティング リソースの割り当てと使用を管理することもできます。 Machine Learning は、開発用の Jupyter ノートブックに最適なツールです。

  • Machine Learning コンピューティング は、機械学習と AI モデルのトレーニングとテストに使用できるノードのクラスターです。 コンピューティングは、自動スケーリング オプションに基づいて、必要に応じて割り当てられます。 Visual Studio Code (VS Code) を Virtual Desktop からストリーミング アプリケーションとしてデプロイし、別の開発環境用に Machine Learning コンピューティングに接続できます。

  • Azure Blob Storage には 2 つのインスタンスがあります。 パブリック インスタンスは、データ所有者がアップロードするデータを一時的に格納します。 パブリック インスタンスは、データを別のコンテナーにモデル化した後も、識別解除されたデータを格納します。 2 つ目はプライベート インスタンスです。 トレーニング スクリプトが使用するトレーニング データセットとテスト データセットを Machine Learning から受け取ります。 ストレージは、仮想ドライブとして Machine Learning コンピューティング クラスターの各ノードにマウントされます。

  • Data Factory は、職務の分離を確保するために、異なるセキュリティ レベルのストレージ アカウント間でデータを自動的に移動します。

  • Azure Synapse Analytics は、データ統合とワークロードの抽出、変換、読み込みを行うビッグ データとパイプライン用の分析ツールです。 Azure Synapse Analytics は、Apache Spark ワークロードを実行する場合にも推奨されるサービスです。

  • Virtual Desktop は、必要に応じてストリーミング アプリケーションとフル デスクトップを使用して、セキュリティで保護された環境内のリソースにアクセスするためのジャンプ ボックスとして使用できるサービスです。 または、 Azure Bastion を使用することもできますが、2 つのオプション間のセキュリティ制御の違いを明確に理解しておく必要があります。 Virtual Desktop には、次のような利点があります。

    • VS Code などのアプリをストリーミングして、機械学習コンピューティング リソースでノートブックを実行する機能。
    • コピー、貼り付け、画面キャプチャを制限する機能。
    • データ サイエンス VM に対する Microsoft Entra 認証のサポート。
  • Azure Logic Apps では、手動承認プロセスの トリガーリリース 部分を開発するための自動化されたローコード ワークフローが提供されます。

態勢管理コンポーネント

これらのコンポーネントは、ワークロードとその環境の態勢を継続的に監視します。 その目的は、リスクが検出されたらすぐに検出して軽減することにあります。

  • Microsoft Defender for Cloud は、実装の全体的なセキュリティ体制を評価し、規制コンプライアンスの構成証明メカニズムを提供するために使用できるサービスです。 監査や評価を実行する代わりに、問題を早期に検出できます。 機能を使用して、セキュリティ スコアやコンプライアンス スコアなどの進行状況を追跡します。 これらのスコアは、コンプライアンスの検証に役立つ重要なツールです。

  • Microsoft Sentinel は、セキュリティ情報とイベント管理ソリューション、およびセキュリティ オーケストレーション、自動化、応答ソリューションです。 さまざまなソースからのログとアラートを一元的に表示できます。また、高度な AI とセキュリティ分析を利用して、脅威の検出、探索、防止、対応などを行うことができます。 この機能は、ワークスペースに関連付けられているトラフィックとアクティビティが期待を満たしていることを確認するのに役立つ貴重なセキュリティ分析情報を提供します。

  • Azure Monitor により、環境全体で可観測性が提供されます。 追加の構成なしで、使用しているほとんどの Azure リソースのメトリック、アクティビティ ログ、診断ログなどを表示できます。 Defender for Cloud の管理ツールも、ログ データを Azure Monitor にプッシュします。

ガバナンスのコンポーネント

  • Azure Policy は、組織の標準を適用してコンプライアンスを大規模に評価するのに役立ちます。

代替

  • このソリューションでは、Data Factory を使用してデータを別のコンテナー内のパブリック ストレージ アカウントに移動し、外部の研究者がエクスポートされたデータとモデルにアクセスできるようにします。 または、より低いセキュリティ環境で別のストレージ アカウントをプロビジョニングすることもできます。
  • このソリューションでは、Virtual Desktop をジャンプ ボックスとして使用して、ストリーミング アプリケーションとフル デスクトップを使用して、セキュリティで保護された環境内のリソースにアクセスできます。 または、Azure Bastion を使用することもできますが、Virtual Desktop にはいくつかの利点があります。 これらの利点には、アプリをストリーミングする機能、コピー/貼り付けと画面キャプチャを制限する機能、Microsoft Entra 認証をサポートする機能などがあります。 オフライン トレーニング用のポイント対サイト VPN をローカルで構成することも検討できます。 この VPN は、ワークステーション用に複数の VM を使用するコストを削減するのにも役立ちます。
  • 保存データをセキュリティで保護するために、このソリューションでは、強力な暗号化を使用して、Microsoft が管理するキーを使用してすべての Azure Storage アカウントを暗号化します。 または、カスタマー マネージド キーを使用することもできます。 キーは、マネージド キー ストアに格納する必要があります。

シナリオの詳細

このシナリオでは、個人がアクセスする必要があるが、格納や送信は許可されていない規制対象データとプライベート データを組み合わせたものになります。

  • 組織外のデータ サイエンティストは、独自のデータや保護されたデータを環境から離れることなく、モデルのトレーニングとエクスポートを行うために、データにフル アクセスする必要があります。
  • アクセスを分離する必要があります。 データ所有者やカストディアンであっても、環境にアップロードされた後にデータにアクセスすることはできません。
  • モデルのみがエクスポートされたことを確認するには、環境から転送されるすべてのエクスポートの監査証跡が必要です。

考えられるユース ケース

このアーキテクチャはもともと、医療保険の相互運用性と説明責任に関する法律 (HIPAA) の要件を持つ高等教育研究機関向けに作成されました。 ただし、この設計は、研究目的でデータの分離を必要とする任意の業界で使用できます。 次に例をいくつか示します。

  • 米国国立標準技術研究所 (NIST) の要件に従って規制されたデータを処理する業界。
  • 内部または外部の研究者と連携する医療センター。
  • 銀行および金融業界。

この記事のガイダンスに従うことで、研究データの完全な制御を維持し、職務を分離し、厳格な規制コンプライアンス基準を満たすことができます。 このアプローチにより、データ所有者、研究者、承認者など、研究指向の環境における重要な役割間のコラボレーションも容易になります。

考慮事項

以降の考慮事項には、ワークロードの品質向上に使用できる一連の基本原則である Azure "Well-Architected Framework" の要素が組み込まれています。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

[信頼性]

信頼性により、顧客に確約したことをアプリケーションで確実に満たせるようにします。 詳細については、「信頼性の設計レビュー チェックリスト」を参照してください。

ほとんどの研究ソリューションは一時的なワークロードであり、長期間利用可能にする必要はありません。 このアーキテクチャは、可用性ゾーンを使用した単一リージョンのデプロイとして設計されています。 ビジネス要件で高可用性が求められる場合は、このアーキテクチャを複数のリージョンにレプリケートします。 これらのすべてのリージョンにトラフィックをルーティングするには、グローバル ロード バランサーやディストリビューターなどの他のコンポーネントが必要です。 復旧戦略の一環として、Azure VM Image Builder を使用して、カスタマイズされた基本イメージのコピーをキャプチャして作成します。

セキュリティ

セキュリティは、重要なデータやシステムの意図的な攻撃や悪用に対する保証を提供します。 詳細については、「セキュリティの設計レビュー チェックリスト」を参照してください。

このアーキテクチャの主な目的は、セキュリティで保護された領域からのデータの流出を厳密に制限する、セキュリティで保護された信頼できる研究環境を提供することです。

ネットワークのセキュリティ

セキュリティで保護された環境で研究データセットを格納、テスト、トレーニングするために使用される Azure リソースをプロビジョニングします。 その環境は、アクセスを制限するネットワーク セキュリティ グループ規則を持つ Azure 仮想ネットワークです。 これらの規則は、次の場合に適用されます。

  • パブリック インターネットへの、および仮想ネットワーク内の受信/送信アクセス。

  • 特定のサービスおよびポートへの/からのアクセス。 たとえば、このアーキテクチャでは、Azure Monitor などの Azure サービスに必要なものを除くすべてのポート範囲がブロックされます。 サービス タグとそれに対応するサービスの完全な一覧については、「 仮想ネットワーク サービス タグを参照してください。

    Virtual Desktop を持つ仮想ネットワークからのアクセスは、特定のポートで承認されたアクセス方法に制限されますが、他のすべてのトラフィックは拒否されます。 この環境と比較すると、Virtual Desktop を持つ他の仮想ネットワークは比較的開いています。

セキュリティで保護された環境の主要 BLOB ストレージは、パブリック インターネットから切断されています。 仮想ネットワーク内でのみ、 private エンドポイント接続 ストレージ ファイアウォール経由でアクセスできます。 これを使用して、クライアントが Azure Files のファイル共有に接続できるネットワークを制限します。

このアーキテクチャでは、セキュリティで保護された環境にあるメイン データ ストアに資格情報ベースの認証が使用されます。 この場合、サブスクリプション ID やトークン承認などの接続情報は、キー コンテナーに格納されます。 もう 1 つのオプションは、ID ベースのデータ アクセスを作成することです。ここでは、Azure アカウントを使用して Storage にアクセスできるかどうかを確認します。 ID ベースのデータ アクセスのシナリオでは、認証の資格情報が保存されません。 詳細については、「データストアの作成」を参照してください。

コンピューティング クラスターは、通信にパブリック IP を使用するのではなく、Azure Private Link エコシステムとサービスまたはプライベート エンドポイントを使用して、仮想ネットワーク内でのみ通信できます。 パブリック IP を有効にしていないことを確認します。 現在プレビュー段階にあるこの機能の詳細については、「 パブリック IP を使用しないインスタンス/クラスターまたはサーバーレス コンピューティングを実行するを参照してください。

セキュリティで保護された環境では、Machine Learning コンピューティングを使用して、プライベート エンドポイントを介してデータセットにアクセスします。 機械学習ワークスペースに存在する Machine Learning コンピューティングへのアクセスを制御するように Azure Firewall を構成することもできます。 Azure Firewall を使用して、Machine Learning コンピューティングからの送信アクセスを制御します。 詳細については、ネットワークの着信トラフィックおよび送信トラフィックの構成に関する記事を参照してください。

Machine Learning 環境をセキュリティで保護する方法の 1 つについては、セキュリティで保護された Machine Learning サービス環境 ブログ記事を参照してください

プライベート エンドポイントで効果的に構成できない Azure サービス、またはステートフル パケット検査を提供できない Azure サービスの場合は、Azure Firewall または Microsoft 以外のネットワーク仮想アプライアンスの使用を検討してください。

ID 管理

Azure ロールベースのアクセス制御を使用して BLOB ストレージにアクセスします。

Virtual Desktop では、データ サイエンス VM に対する Microsoft Entra 認証がサポートされています。

Data Factory では、マネージド ID を使用して BLOB ストレージのデータにアクセスします。 データ サイエンス VM では、修復タスクにもマネージド ID が使用されます。

データのセキュリティ

保存データをセキュリティで保護するために、すべてのストレージ アカウントは、強力な暗号化を使用する Microsoft マネージド キーで暗号化されます。

または、カスタマー マネージド キーを使用することもできます。 キーは、マネージド キー ストアに格納する必要があります。 このアーキテクチャでは、暗号化キーや証明書などのシークレットを格納するために、セキュリティで保護された環境に Azure Key Vault をデプロイします。 セキュリティで保護された仮想ネットワーク内のリソースは、プライベート エンドポイントを介して Key Vault にアクセスします。

ガバナンスに関する考慮事項

Azure Policy を有効にして標準を適用し、リソースを特定のポリシーに準拠させるための自動修復機能を提供します。 ポリシーは、1 つのポリシーとして、または規制イニシアチブの一部として、プロジェクト サブスクリプションまたは管理グループ レベルで適用できます。

たとえば、このアーキテクチャでは、Azure マシン構成はすべてのスコープ内 VM に適用されます。 このポリシーでは、データ サイエンス VM のオペレーティング システムとマシンの構成を監査できます。

VM イメージ

データ サイエンス VM は、カスタマイズされた基本イメージを実行します。 基本イメージを構築するには、VM Image Builder などのテクノロジを使用します。 VM イメージ ビルダーを使用すると、必要に応じてデプロイできる反復可能なイメージを作成できます。

基本イメージには、追加のバイナリなどの更新が必要な場合があります。 これらのバイナリは、パブリック BLOB ストレージにアップロードする必要があります。 データ所有者がデータセットをアップロードする方法と同様に、セキュリティで保護された環境を流れる必要があります。

コストの最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳細については、「コスト最適化の設計レビュー チェックリスト」を参照してください。

データ サイエンス VM のコストは、基になる VM シリーズの選択によって異なります。 ワークロードは一時的なものであるため、ロジック アプリ リソースの従量課金プランをお勧めします。 Azure 料金計算ツールを使用して、必要なリソースの見積もりサイズに基づいてコストを見積もります。 コストの最適化とセキュリティの向上に役立つ環境が使用されていない場合は、必ずシャットダウンしてください。

パフォーマンス効率

パフォーマンス効率とは、ユーザーからの要求に合わせて効率的な方法でワークロードをスケーリングできることです。 詳細については、「パフォーマンス効率の設計レビュー チェックリスト」を参照してください。

データ サイエンス VM のサイズと種類は、実行する作業のスタイルに適している必要があります。 このアーキテクチャは、単一の研究プロジェクトをサポートすることを目的としています。 スケーラビリティを実現するには、VM のサイズと種類を調整し、Machine Learning で使用できるコンピューティング リソースを選択します。

共同作成者

この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。

プリンシパル作成者:

次のステップ