Azure AI Studio ハブのプライベート リンクを構成する方法
重要
この記事で説明する機能の一部は、プレビューでのみ使用できる場合があります。 このプレビューはサービス レベル アグリーメントなしで提供されており、運用環境ではお勧めしません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。
ネットワーク分離には 2 つの側面があります。 1 つは、Azure AI Studio ハブにアクセスするためのネットワークの分離です。 もう 1 つは、ハブと、コンピューティング インスタンス、サーバーレス、マネージド オンライン エンドポイントなどのプロジェクトにおけるコンピューティング リソースのネットワーク分離です。 この記事では、図で強調表示されている前者について説明します。 プライベート リンクを使用して、ハブとその既定のリソースへのプライベート接続を確立できます。 この記事は、Azure AI Studio (ハブとプロジェクト) を対象としています。 Azure AI サービスの詳細については、Azure AI サービスのドキュメントを参照してください。
リソース グループには、いくつかのハブの既定リソースがあります。 次のネットワーク分離構成を構成する必要があります。
- Azure Storage、Azure Key Vault、Azure Container Registry などのハブの既定のリソースのパブリック ネットワーク アクセスを無効にします。
- ハブの既定リソースへのプライベート エンドポイント接続を確立します。 既定のストレージ アカウントには BLOB とファイルのプライベート エンドポイントの両方が必要です。
- マネージド ID 構成: プライベートである場合、ストレージ アカウントにハブがアクセスできるようにします。
前提条件
プライベート エンドポイントを作成するには、既存の Azure Virtual Network が必要です。
重要
VNet の IP アドレス範囲に 172.17.0.0/16 を使用することはお勧めしません。 これは、Docker ブリッジ ネットワークまたはオンプレミスで使用される既定のサブネット範囲です。
プライベート エンドポイントを追加する前に、プライベート エンドポイントのネットワーク ポリシーを無効にします。
プライベート エンドポイントを使用するハブを作成する
プライベート エンドポイントを使用してハブを作成するには、次のいずれかの方法を使用します。 いずれの方法でも既存の仮想ネットワークが必要です。
- Azure portal から Azure AI Studio に移動し、[+ 新規 Azure AI] を選択します。
- [ネットワーク] タブでネットワーク分離モードを選択します。
- [ワークスペース受信アクセス] まで下にスクロールし、[+ 追加] を選択します。
- 必須フィールドに入力します。 [リージョン] を選択する場合は、ご使用の仮想ネットワークと同じリージョンを選択します。
ハブにプライベート エンドポイントを追加する
次のいずれかの方法を使用して、既存のハブにプライベート エンドポイントを追加します。
- Azure portal からハブを選択します。
- ページの左側で [ネットワーク] を選んでから、[プライベート エンドポイントの接続] タブを選びます。
- [リージョン] を選択する場合は、ご使用の仮想ネットワークと同じリージョンを選択します。
- [リソースの種類] を選択する場合は、
azuremlworkspace
を使用します。 - [リソース] を実際のワークスペース名に設定します。
最後に、 [作成] を選択してプライベート エンドポイントを作成します。
プライベート エンドポイントを削除する
ハブの 1 つまたはすべてのプライベート エンドポイントを削除できます。 プライベート エンドポイントを削除すると、そのエンドポイントが関連付けられていた Azure Virtual Network からハブが削除されます。 プライベート エンドポイントを削除すると、ハブがその仮想ネットワーク内のリソースにアクセスできなくなったり、その仮想ネットワーク内のリソースがワークスペースにアクセスできなくなったりする可能性があります。 たとえば、仮想ネットワークとパブリック インターネットとの間でアクセスできなくなるような場合です。
警告
ハブのプライベート エンドポイントを削除しても、パブリックにアクセスできるようにはなりません。 ハブをパブリックにアクセスできるようにするには、「パブリック アクセスを有効にする」セクションの手順を使用します。
プライベート エンドポイントを削除するには、次の情報のようにします。
- Azure portal からハブを選択します。
- ページの左側で [ネットワーク] を選んでから、[プライベート エンドポイントの接続] タブを選びます。
- 削除するエンドポイントを選んで、[削除] を選びます。
パブリック アクセスを有効にする
状況によっては、仮想ネットワークではなくパブリック エンドポイント経由で、セキュリティで保護された自分のハブに他のユーザーが接続できるようにすることが必要になる場合があります。 または、仮想ネットワークからワークスペースを削除し、パブリック アクセスを再び有効にしたいことがあります。
重要
パブリック アクセスを有効にしても、存在するプライベート エンドポイントは削除されません。 プライベート エンドポイントが接続している仮想ネットワークの内側にあるコンポーネント間のすべての通信は、引き続きセキュリティで保護されます。 これにより、プライベート エンドポイント経由のプライベート アクセスに加えて、そのハブのみへのパブリック アクセスが有効になります。
パブリック アクセスを有効にするには、次の手順のようにします。
- Azure portal からハブを選択します。
- ページの左側で [ネットワーク] を選んでから、[パブリック アクセス] タブを選びます。
- [すべてのネットワークから有効] を選んでから、[保存] を選びます。
マネージド ID の構成
ストレージ アカウントをプライベートにする場合は、マネージド ID 構成が必要です。 サービスでは、次のマネージド ID 構成で [信頼されたサービスの一覧にある Azure サービスがこのストレージ アカウントにアクセスすることを許可します] を使用して、プライベート ストレージ アカウント内のデータの読み取り/書き込みを行う必要があります。 Azure AI サービスと Azure AI 検索のシステム割り当てマネージド ID を有効にし、マネージド ID ごとにロールベースのアクセス制御を構成します。
ロール | Managed Identity | リソース | 目的 | リファレンス |
---|---|---|---|---|
Storage File Data Privileged Contributor |
Azure AI Studio プロジェクト | ストレージ アカウント | プロンプト フロー データの読み取り/書き込みを行います。 | プロンプト フローに関するドキュメント |
Storage Blob Data Contributor |
Azure AI サービス | ストレージ アカウント | 入力コンテナーから読み取り、結果を前処理して出力コンテナーに書き込みます。 | Azure OpenAI に関するドキュメント |
Storage Blob Data Contributor |
Azure AI Search | ストレージ アカウント | BLOB を読み取ってナレッジ ストアに書き込みます | 検索に関するドキュメント。 |
カスタム DNS 構成
DNS 転送構成については、Azure Machine Learning のカスタム DNS に関する記事を参照してください。
DNS 転送なしでカスタム DNS サーバーを構成する必要がある場合は、必要とされる A レコードに次のパターンを使用します。
<AI-STUDIO-GUID>.workspace.<region>.cert.api.azureml.ms
<AI-PROJECT-GUID>.workspace.<region>.cert.api.azureml.ms
<AI-STUDIO-GUID>.workspace.<region>.api.azureml.ms
<AI-PROJECT-GUID>.workspace.<region>.api.azureml.ms
ml-<workspace-name, truncated>-<region>-<AI-STUDIO-GUID>.<region>.notebooks.azure.net
ml-<workspace-name, truncated>-<region>-<AI-PROJECT-GUID>.<region>.notebooks.azure.net
Note
この FQDN のワークスペース名は切り詰められている可能性があります。 切り詰めは
ml-<workspace-name, truncated>-<region>-<workspace-guid>
を 63 文字以下に維持するために行われます。<instance-name>.<region>.instances.azureml.ms
注意
- コンピューティング インスタンスには、仮想ネットワーク内からのみアクセスできます。
- この FQDN の IP アドレスは、コンピューティング インスタンスの IP ではありません。 代わりに、ワークスペースのプライベート エンドポイントのプライベート IP アドレス (
*.api.azureml.ms
エントリの IP) を使用します。
<instance-name>.<region>.instances.azureml.ms
- マネージド仮想ネットワーク内のコンピューティングに接続するために、az ml compute connect-ssh
コマンドによってのみ使用されます。 マネージド ネットワークまたは SSH 接続を使用していない場合は不要です。<managed online endpoint name>.<region>.inference.ml.azure.com
- マネージド オンライン エンドポイントで使用されます
A レコードのプライベート IP アドレスを見つけるには、Azure Machine Learning のカスタム DNS に関する記事を参照してください。 AI-PROJECT-GUID を確認するには、Azure portal に移動し、プロジェクト、設定、プロパティを選択すると、ワークスペース ID が表示されます。
制限事項
- Mozilla Firefox を使用している場合、ハブのプライベート エンドポイントにアクセスしようとしたときに問題が発生することがあります。 この問題は、Mozilla Firefox の DNS over HTTPS に関連している可能性があります。 Microsoft Edge または Google Chrome を使うことをお勧めします。