Azure Machine Learning のカスタマー マネージド キー

Azure Machine Learning は、複数の Azure サービスの上に構築されています。 格納データは Microsoft が提供する暗号化キーを使用して暗号化されますが、独自の (カスタマー マネージド) キーも提供すると、セキュリティを強化できます。 提供したキーは、Azure Key Vault に格納されます。 データは、Azure サブスクリプションで管理されている一連の追加リソースに格納されます。

Azure Machine Learning には、カスタマー マネージド キーに加えて、hbi_workspace フラグも用意されています。 このフラグを有効にすると、Microsoft が診断目的で収集するデータの量が減り、Microsoft マネージド環境での追加の暗号化が可能になります。 このフラグを使用すると、次の動作も有効になります。

  • そのサブスクリプションに以前にクラスターを作成していない場合、Azure Machine Learning コンピューティング クラスターでローカル スクラッチ ディスクの暗号化が開始されます。 それ以外の場合、コンピューティング クラスターに対してスクラッチ ディスクの暗号化を有効にするには、サポート チケットを作成する必要があります。
  • ジョブとジョブの間にローカル スクラッチ ディスクをクリーンアップします。
  • キー コンテナーを使用して、ストレージ アカウント、コンテナー レジストリ、Secure Shell (SSH) アカウントの資格情報を実行レイヤーからコンピューティング クラスターに安全に渡します。

hbi_workspace フラグは、転送中の暗号化には影響しません。 保存時の暗号化にのみ影響します。

前提条件

  • Azure サブスクリプション。
  • Azure Key Vault インスタンス。 キー コンテナーには、サービスを暗号化するためのキーが含まれます。

キー コンテナーでは、論理的な削除と消去保護を有効にする必要があります。 カスタマー マネージド キーを使用してセキュリティで保護するサービスのマネージド ID には、キー コンテナーに対する次のアクセス許可が必要です。

  • キーのラップ
  • キーのラップ解除
  • Yammer の入手

たとえば、Azure Cosmos DB のマネージド ID は、キー コンテナーに対してこれらのアクセス許可が必要です。

制限事項

  • ワークスペースの作成後、ワークスペースが依存するリソースのカスタマー マネージド暗号化キーは、元の Azure Key Vault リソース内の別のキーにのみ更新できます。
  • 暗号化されたデータは、サブスクリプション内の Microsoft 管理対象リソース グループ内にあるリソースに格納されます。 これらのリソースを事前に作成したり、それらの所有権を譲渡したりすることはできません。 データ ライフサイクルは、Azure Machine Learning service でオブジェクトを作成するときに、Azure Machine Learning API を介して間接的に管理されます。
  • ワークスペースも削除しなければ、カスタマー マネージド キーに使用する Microsoft 管理対象リソースを削除することはできません。
  • コンピューティング クラスターの OS ディスクは、カスタマー マネージド キーを使用して暗号化することはできません。 Microsoft マネージド キーを使用する必要があります。

警告

Azure Cosmos DB インスタンスが含まれるリソース グループ、またはそのグループに自動的に作成されたリソースが含まれるリソース グループを削除しないでください。 このリソース グループまたは Microsoft が管理するサービスを削除する必要がある場合は、それを使用する Azure Machine Learning ワークスペースを削除してください。 関連付けられたワークスペースを削除すると、リソース グループのリソースが削除されます。

ワークスペース メタデータの格納

独自の暗号化キーを使用すると、サービス メタデータが Azure サブスクリプション内の専用リソースに格納されます。 Microsoft は、この目的のために、サブスクリプションに別のリソース グループ (azureml-rg-workspacename_GUID) を作成します。 この管理対象リソース グループ内のリソースを変更できるのは、Microsoft のみです。

Microsoft は、ワークスペースのメタデータを格納するために、次のリソースを作成します。

サービス 使用方法 サンプル データ
Azure Cosmos DB ジョブ履歴データ、コンピューティング メタデータ、資産メタデータを格納します。 データには、ジョブ名、状態、シーケンス番号、状態を含めることができます。また、コンピューティング クラスター名、コア数、ノード数や、データストアの名前とタグ、モデルなどの資産に関する説明を含めることもできます。また、データ ラベル名を含めることもできます。
Azure AI Search 機械学習コンテンツのクエリに役立つインデックスを格納します。 これらのインデックスは、Azure Cosmos DB に格納されているデータに基づいて構築されます。
Azure Storage Azure Machine Learning パイプライン データに関連するメタデータを格納します。 データには、デザイナー パイプライン名、パイプライン レイアウト、実行プロパティを含めることができます。

データ ライフサイクル管理の観点から見ると、Azure Machine Learning で対応するオブジェクトを作成および削除すると、前述のリソース内のデータが作成および削除されます。

Azure Machine Learning ワークスペースでは、マネージド ID を使用してデータの読み取りと書き込みを行います。 この ID には、データ リソースに対するロールの割り当て (Azure ロールベースのアクセス制御) を使用して、リソースへのアクセス権が付与されます。 ユーザーが指定する暗号化キーは、Microsoft 管理対象リソースに格納されるデータの暗号化に使用されます。 また、実行時に Azure AI 検索のインデックスを作成するためにも使用されます。

追加のネットワーク制御は、ワークスペースにプライベート リンク エンドポイントを作成して受信接続を許可するときに構成されます。 この構成には、Azure Cosmos DB インスタンスへのプライベート リンク エンドポイント接続の作成が含まれます。 ネットワーク アクセスは、信頼できる Microsoft サービスのみに制限されます。

カスタマー マネージド キー

カスタマー マネージド キーを使用 "しない" 場合、Microsoft が、Microsoft 所有の Azure サブスクリプションでリソースを作成して管理し、Microsoft マネージド キーを使用してデータを暗号化します。

カスタマー マネージド キーを使用する場合、リソースはお使いの Azure サブスクリプションに格納され、お使いのキーで暗号化されます。 これらのリソースはお使いのサブスクリプションに存在しますが、Microsoft によって管理されます。 Azure Machine Learning ワークスペースを作成するときに、自動的に作成および構成されます。

これらの Microsoft 管理対象リソースは、サブスクリプションに作成された新しい Azure リソース グループに配置されます。 このリソース グループは、ワークスペースのリソース グループとは別のものです。 これには、キーが使用される Microsoft 管理対象リソースが含まれます。 リソース グループに名前を付けるための数式は、<Azure Machine Learning workspace resource group name><GUID> です。

ヒント

Azure Cosmos DB の要求ユニットは、必要に応じて自動的にスケーリングされます。

Azure Machine Learning ワークスペースでプライベート エンドポイントを使用している場合、このリソース グループには Microsoft が管理する Azure 仮想ネットワークも含まれます。 この仮想ネットワークは、マネージド サービスとワークスペースの間の通信をセキュリティで保護するために役立ちます。 Microsoft 管理対象リソースで使用するために "独自の仮想ネットワークを指定することはできません"。 また、"仮想ネットワークを変更することもできません"。 たとえば、使用される IP アドレスの範囲を変更することはできません。

重要

サブスクリプションにこれらのサービス用に十分なクォータがない場合、エラーが発生します。

カスタマー マネージド キーを使用する場合、これらのリソースはサブスクリプション内にあるため、サブスクリプションのコストが高くなります。 コストを見積もるには、Azure 料金計算ツールを使用してください。

コンピューティング データの格納

Azure Machine Learning ではコンピューティング リソースを使用して機械学習モデルをトレーニングおよびデプロイします。 次の表では、コンピューティング オプションと、各オプションでデータを暗号化する方法について説明します。

Compute 暗号化
Azure Container Instances データは、Microsoft マネージド キーまたはカスタマー マネージド キーによって暗号化されます。
詳細については、「デプロイ データの暗号化」を参照してください。
Azure Kubernetes Service データは、Microsoft マネージド キーまたはカスタマー マネージド キーによって暗号化されます。
詳細については、「Azure Kubernetes Service の Azure ディスクに独自のキー を使用する」を参照してください。
Azure Machine Learning コンピューティング インスタンス ワークスペースに対して hbi_workspace フラグを有効にすると、ローカル スクラッチ ディスクが暗号化されます。
Azure Machine Learning コンピューティング クラスター OS ディスクは、Microsoft マネージド キーを使用して Azure Storage で暗号化されます。 ワークスペースに対して hbi_workspace フラグを有効にすると、一時ディスクが暗号化されます。
Compute 暗号化
Azure Kubernetes Service データは、Microsoft マネージド キーまたはカスタマー マネージド キーによって暗号化されます。
詳細については、「Azure Kubernetes Service の Azure ディスクに独自のキー を使用する」を参照してください。
Azure Machine Learning コンピューティング インスタンス ワークスペースに対して hbi_workspace フラグを有効にすると、ローカル スクラッチ ディスクが暗号化されます。
Azure Machine Learning コンピューティング クラスター OS ディスクは、Microsoft マネージド キーを使用して Azure Storage で暗号化されます。 ワークスペースに対して hbi_workspace フラグを有効にすると、一時ディスクが暗号化されます。

コンピューティング クラスター

コンピューティング クラスターにはローカル OS ディスク ストレージがあり、ジョブの実行時にサブスクリプションのストレージ アカウントからデータをマウントできます。 ジョブで独自のストレージ アカウントからデータをマウントする場合、暗号化のために、それらのストレージ アカウントでカスタマー マネージド キーを有効にすることができます。

Azure Storage に格納されている各コンピューティング ノードの OS ディスクは、常に Azure Machine Learning ストレージ アカウント内の Microsoft マネージド キーで暗号化され、カスタマー マネージド キーは使用されません。 このコンピューティング先は一時的なものであるため、OS ディスクに格納されているデータは、クラスターのスケールダウン後に削除されます。 クラスターは通常、ジョブがキューに登録されておらず、自動スケールがオンで、最小ノード数が 0 に設定されている場合にスケールダウンされます。 基になる仮想マシンのプロビジョニングは解除され、OS ディスクは削除されます。

OS ディスクでは Azure Disk Encryption はサポートされません。 各仮想マシンにも、OS 操作用にローカルな一時ディスクがあります。 必要に応じて、ディスクを使用してトレーニング データをステージできます。 hbi_workspace パラメーターを TRUE に設定してワークスペースを作成する場合、一時ディスクが暗号化されます。 この環境は有効期間が短く (ジョブの実行中のみ)、暗号化のサポートはシステム マネージド キーのみに制限されます。

コンピューティング インスタンス

コンピューティング インスタンスの OS ディスクは、Azure Machine Learning ストレージ アカウント内の Microsoft マネージド キーを使用して暗号化されます。 hbi_workspace パラメーターを TRUE に設定してワークスペースを作成する場合、コンピューティング インスタンスのローカル一時ディスクは Microsoft マネージド キーで暗号化されます。 カスタマー マネージド キーによる暗号化は、OS と一時ディスクについてはサポートされていません。

hbi_workspace フラグ

hbi_workspace フラグは、ワークスペースの作成時にのみ設定できます。 既存のワークスペースのこのフラグを変更することはできません。

このフラグを TRUE に設定すると、Microsoft に送信されるテレメトリ データが少なくなるため、問題のトラブルシューティングが困難になるおそれがあります。 成功率や問題の種類の可視性が低くなります。 このフラグが TRUE に設定されている場合、Microsoft は積極的に対応できない可能性があります。

Azure Machine Learning ワークスペースの作成時に hbi_workspace フラグを有効にするには、次のいずれかの記事の手順に従います。

次のステップ