仮想ネットワークを使用して Azure Machine Learning 推論環境をセキュリティで保護する

この記事では、Azure Machine Learning で仮想ネットワークを使用して、推論環境 (オンライン エンドポイント) をセキュリティで保護する方法について説明します。 VNet を使用してセキュリティで保護できる推論オプションは 2 つあります。

  • Azure Machine Learning マネージド オンライン エンドポイント (プレビュー)

    ヒント

    マネージド オンライン エンドポイントをセキュリティで保護する場合、Microsoft では、この記事の手順ではなく、Azure Machine Learning のマネージド仮想ネットワークの使用をお勧めします。 マネージド仮想ネットワークを使用すると、Azure Machine Learning はワークスペースとマネージド コンピューティングのネットワーク分離のジョブを処理します。 また、ワークスペースに必要なリソース (Azure Storage アカウントなど) のプライベート エンドポイントを追加することもできます。 詳しくは、ワークスペースのマネージド ネットワーク分離に関する記事をご覧ください。

  • Azure Kubernetes Service

ヒント

この記事は、Azure Machine Learning ワークフローのセキュリティ保護に関するシリーズの一部です。 このシリーズの他の記事は次のとおりです。

セキュリティで保護されたワークスペースの作成に関するチュートリアルについては、「チュートリアル: セキュリティで 保護されたワークスペースを作成する」または「チュートリアル: テンプレートを使用してセキュリティで保護されたワークスペースを作成する」を参照してください。

前提条件

  • 一般的な仮想ネットワークのシナリオと全体的な仮想ネットワーク アーキテクチャについては、ネットワーク セキュリティの概要に関するページを参照してください。

  • Azure Machine Learning ワークスペースをセキュリティで保護するために使用される既存の仮想ネットワークとサブネット。

  • リソースを仮想ネットワークまたはサブネットにデプロイするには、ご利用のユーザー アカウントが、Azure ロールベースのアクセス制御 (Azure RBAC) で次のアクションへのアクセス許可を保持している必要があります。

    • 仮想ネットワーク リソースの "Microsoft.Network/*/read"。 このアクセス許可は、Azure Resource Manager (ARM) テンプレートのデプロイには必要ありません。
    • 仮想ネットワーク リソース上の "Microsoft.Network/virtualNetworks/join/action"。
    • サブネット リソース上の "Microsoft.Network/virtualNetworks/subnets/join/action"。

    ネットワークでの Azure RBAC の詳細については、ネットワークの組み込みロールに関するページを参照してください

マネージド オンライン エンドポイントをセキュリティ保護する

マネージド オンライン エンドポイントのセキュリティ保護の詳細については、「マネージド オンライン エンドポイントでネットワークの分離を使用する」の記事を参照してください。

Azure Kubernetes Service オンライン エンドポイントをセキュリティで保護する

セキュリティで保護された推論に Azure Kubernetes Service クラスターを使用するには、次の手順に従います。

  1. セキュリティで保護された Kubernetes 推論環境を作成または構成します。

  2. Azure Machine Learning 拡張機能をデプロイする。

  3. Kubernetes クラスターをワークスペースにアタッチします

  4. Kubernetes オンライン エンドポイントを使用したモデルのデプロイは、CLI v2、Python SDK v2、Studio UI を使用して実行できます。

仮想ネットワークからのアウトバウンド接続を制限する

既定のアウトバウンド規則を使用せずに仮想ネットワークのアウトバウンド アクセスを制限する場合は、Azure Container Registry へのアクセスを許可する必要があります。 たとえば、ネットワーク セキュリティ グループ (NSG) に AzureContainerRegistry.RegionName サービス タグへのアクセスを許可する規則が含まれていることを確認してください。ここで、`{RegionName} は Azure リージョンの名前です。

次のステップ

この記事は、Azure Machine Learning ワークフローのセキュリティ保護に関するシリーズの一部です。 このシリーズの他の記事は次のとおりです。