次の方法で共有


検索サービスをネットワーク セキュリティ境界に追加する

重要

Azure AI 検索によるネットワーク セキュリティ境界のサポートは、追加使用条件の下でパブリック プレビュー段階にあります。 この機能を提供するリージョンで利用できます。 このプレビュー バージョンはサービス レベル アグリーメントなしで提供されています。運用環境のワークロードに使用することはお勧めできません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。

始める前に、「制限と考慮事項」セクションを確認してください。

この記事では、Azure AI 検索サービスをネットワーク セキュリティ境界に参加させて、検索サービスへのネットワーク アクセスを制御する方法を説明します。 ネットワーク セキュリティ境界に参加すると、次のことができます。

  • 同じ境界内の他の Azure リソースとのコンテキストで、検索サービスへのすべてのアクセスをログします。
  • 検索サービスから境界外の他のサービスへのデータ流出をブロックします。
  • ネットワーク セキュリティ境界のインバウンドとアウトバウンドのアクセス機能を使って、検索サービスへのアクセスを許可します。

この記事で説明するように、Azure portal で検索サービスをネットワーク セキュリティ境界に追加できます。 または、Azure Virtual Network Manager REST API を使って検索サービスを参加させ、Search Management REST API を使って構成設定を表示および同期することもできます。

制限と考慮事項

前提条件

検索サービスをネットワーク セキュリティ境界に割り当てる

Azure ネットワーク セキュリティ境界を使うと、管理者は、仮想ネットワークの外部にデプロイされた PaaS リソース (Azure Storage や Azure SQL Database など) に対して論理ネットワーク分離境界を定義できます。 それは境界内のリソースへの通信を制限し、インバウンドとアウトバウンドのアクセス規則を通じて境界以外のパブリック トラフィックを許可します。

Azure AI 検索をネットワーク セキュリティ境界に追加して、インデックス作成とクエリのすべての要求がセキュリティ境界内で行われるようにすることができます。

  1. Azure portal で、自分のサブスクリプションのネットワーク セキュリティ境界サービスを見つけます。

  2. 左側のメニューから [リソース] を選びます。

    ネットワーク セキュリティ境界の左側のメニューのスクリーンショット。

  3. [追加]>[リソースを既存のプロファイルに関連付ける] を選びます。

    ネットワーク セキュリティ境界のリソース関連付けボタンのスクリーンショット。

  4. [プロファイル] で、ネットワーク セキュリティ境界を作成したときに作成したプロファイルを選びます。

  5. [関連付け] を選んでから、作成した検索サービスを選びます。

    ネットワーク セキュリティ境界のリソース関連付けボタンとリソース選択画面のスクリーンショット。

  6. 画面の左下のセクションで [関連付け] を選んで、関連付けを作成します。

ネットワーク セキュリティ境界のアクセス モード

ネットワーク セキュリティ境界では、関連付けられたリソースに対して 2 つの異なるアクセス モードがサポートされています。

モード 説明
学習モード これが既定のアクセス モードです。 "学習" モードのネットワーク セキュリティ境界は、境界が強制モードであったとしたら拒否されていた、検索サービスへのすべてのトラフィックをログします。 これにより、ネットワーク管理者は、アクセス規則の適用を実装する前に、検索サービスの既存のアクセス パターンを理解できます。
強制モード "強制" モードのネットワーク セキュリティ境界は、アクセス規則によって明示的に許可されていないすべてのトラフィックをログして拒否します。

ネットワーク セキュリティ境界と検索サービスのネットワーク設定

publicNetworkAccess 設定は、ネットワーク セキュリティ境界との検索サービスの関連付けを決定します。

  • 学習モードでは、publicNetworkAccess 設定によってリソースへのパブリック アクセスが制御されます。

  • 強制モードでは、publicNetworkAccess 設定はネットワーク セキュリティ境界の規則によってオーバーライドされます。 たとえば、publicNetworkAccess 設定が enabled である検索サービスが強制モードでネットワーク セキュリティ境界に関連付けられている場合、検索サービスへのアクセスは、やはりネットワーク セキュリティ境界アクセスの規則によって制御されます。

ネットワーク セキュリティ境界のアクセス モードを変更する

  1. Azure portal でネットワーク セキュリティ境界リソースに移動します。

  2. 左側のメニューで [リソース] を選びます。

    ネットワーク セキュリティ境界の左側のメニューのスクリーンショット。

  3. テーブルで検索サービスを見つけます。

  4. 検索サービス行の右端にある 3 つのドットを選びます。 ポップアップで [アクセス モードの変更] を選びます。

    ネットワーク セキュリティ境界ポータルのアクセス モード変更ボタンのスクリーンショット。

  5. 目的のアクセス モードを選んで、[適用] を選びます。

    アクセス モードが表示されているネットワーク セキュリティ境界ポータルのアクセス モード変更ボタンのスクリーンショット。

ネットワーク アクセスのログを有効にする

  1. Azure portal でネットワーク セキュリティ境界リソースに移動します。

  2. 左側のメニューで [診断設定] を選びます。

    ネットワーク セキュリティ境界ポータルの左側のメニューのスクリーンショット。

  3. [診断設定の追加] を選択します。

  4. [診断設定の名前] に、"診断" などの任意の名前を入力します。

  5. [ログ] の下の [allLogs] を選択します。 [allLogs] を選ぶと、ネットワーク セキュリティ境界内のリソースに対するすべてのインバウンドとアウトバウンドのネットワーク アクセスがログされます。

  6. [宛先の詳細] で、[ストレージ アカウントへのアーカイブ] または [Log Analytics ワークスペースへの送信] を選びます。 ストレージ アカウントは、ネットワーク セキュリティ境界と同じリージョンに存在する必要があります。 既存のストレージ アカウントを選択することも、新しいストレージ アカウントを作成することもできます。 Log Analytics ワークスペースは、ネットワーク セキュリティ境界で使われているものとは異なるリージョンでもかまいません。 その他の適用可能な宛先をどれでも選択できます。

    ネットワーク セキュリティ境界ポータルで入力された診断設定のスクリーンショット。

  7. [保存] を選んで診断設定を作成し、ネットワーク アクセスのログを始めます。

ネットワーク アクセス ログの読み取り

Log Analytics ワークスペース

network-security-perimeterAccessLogs テーブルには、すべてのログ カテゴリのすべてのログが含まれています (network-security-perimeterPublicInboundResourceRulesAllowed など)。 すべてのログには、ログ カテゴリと一致するネットワーク セキュリティ境界のネットワーク アクセスの記録が含まれます。

network-security-perimeterPublicInboundResourceRulesAllowed ログ形式の例を次に示します。

列名 意味 例の値
ResultDescription ネットワーク アクセス操作の名前 POST /indexes/my-index/docs/search
プロファイル 検索サービスが関連付けられたネットワーク セキュリティ境界 defaultProfile
ServiceResourceId 検索サービスのリソース ID search-service-resource-id
一致した規則 ログで一致した規則の JSON の説明 { "accessRule": "IP firewall" }
SourceIPAddress インバウンド ネットワーク アクセスのソース IP (該当する場合) 1.1.1.1
AccessRuleVersion ネットワーク アクセス規則を強制するために使われた network-security-perimeter アクセス規則のバージョン 0

ストレージ アカウント

ストレージ アカウントには、すべてのログ カテゴリに対してコンテナーがあります (たとえば、insights-logs-network-security-perimeterpublicinboundperimeterrulesallowed)。 コンテナー内のフォルダー構造は、ネットワーク セキュリティ境界のリソース ID およびログが取得された時刻と一致します。 JSON ログ ファイルの各行には、ログ カテゴリと一致するネットワーク セキュリティ境界のネットワーク アクセスの記録が含まれます。

たとえば、インバウンド境界規則の許可カテゴリ ログでは、次の形式が使われます。

"properties": {
    "ServiceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/network-security-perimeter/providers/Microsoft.Search/searchServices/network-security-perimeter-search",
    "Profile": "defaultProfile",
    "MatchedRule": {
        "AccessRule": "myaccessrule"
    },
    "Source": {
        "IpAddress": "255.255.255.255",
    }
}

検索サービスに対するアクセス規則を追加する

ネットワーク セキュリティ境界プロファイルでは、境界経由のアクセスを許可または拒否する規則を指定します。

境界内では、すべてのリソースがネットワーク レベルで相互にアクセスできます。 それでも認証と認可を設定する必要がありますが、ネットワーク レベルでは、境界の内部からの接続要求は受け入れられます。

ネットワーク セキュリティ境界の外部にあるリソースの場合は、インバウンドとアウトバウンドのアクセス規則を指定する必要があります。 インバウンド規則では、入ることを許可する接続を指定し、アウトバウンド規則では、出ることを許可する要求を指定します。

検索サービスは、Azure AI Foundry、Azure OpenAI Studio、Azure Machine Learning プロンプト フローなどのアプリや、インデックス作成またはクエリ要求を送信するすべてのアプリからの受信要求を受け入れます。 検索サービスは、インデクサー ベースのインデックス作成とスキルセットの実行の間にアウトバウンド要求を送信します。 このセクションでは、Azure AI Search のシナリオでインバウンドとアウトバウンドのアクセス規則を設定する方法について説明します。

Note

ネットワーク セキュリティ境界に関連付けられているすべてのサービスは、同じネットワーク セキュリティ境界に関連付けられている他のサービスへのインバウンドとアウトバウンドのアクセスが、マネージド ID とロールの割り当てを使って認証されたときは、そのアクセスを暗黙的に許可します。 ネットワーク セキュリティ境界の外部のアクセスを許可するとき、または API キーを使って認証されたアクセスに対してのみ、アクセス規則を作成する必要があります。

インバウンド アクセス規則を追加する

インバウンド アクセス規則では、インターネットおよび境界の外部のリソースが、境界の内部のリソースと接続するのを許可できます。

ネットワーク セキュリティ境界では、2 種類のインバウンド アクセス規則がサポートされています。

  • IP アドレス範囲。 IP アドレスまたは範囲は、クラスレス ドメイン間ルーティング (CIDR) 形式である必要があります。 192.0.2.0/24 は CIDR 表記の例であり、これは 192.0.2.0 から 192.0.2.255 の範囲の IP を表します。 この種類の規則では、範囲内の任意の IP アドレスからのインバウンド要求が許可されます。

  • サブスクリプション。 この種類の規則では、サブスクリプションからの任意のマネージド ID を使って認証されたインバウンド アクセスが許可されます。

Azure portal でインバウンド アクセス規則を追加するには:

  1. Azure portal でネットワーク セキュリティ境界リソースに移動します。

  2. 左側のメニューで [プロファイル] を選びます。

    [プロファイル] が選ばれている左側のメニューのスクリーンショット。

  3. ネットワーク セキュリティ境界で使っているプロファイルを選びます

    ネットワーク セキュリティ境界からプロファイルを選んでいるスクリーンショット。

  4. 左側のメニューで [受信アクセス規則] を選びます。

    [受信アクセス規則] が選ばれている左側のメニューのスクリーンショット。

  5. [追加] を選択します。

    インバウンド ネットワーク セキュリティ境界アクセス規則の追加ボタンのスクリーンショット。

  6. 次の値を入力または選択します。

    設定
    規則の名前 インバウンド アクセス規則の名前 (例: "MyInboundAccessRule")。
    Source Type 有効な値は、IP アドレス範囲またはサブスクリプションです。
    許可されるソース IP アドレス範囲を選んだ場合は、インバウンド アクセスを許可する IP アドレス範囲を CIDR 形式で入力します。 Azure の IP 範囲は、こちらのリンクでわかります。 サブスクリプションを選んだ場合は、インバウンド アクセスを許可するサブスクリプションを使います。
  7. [追加] を選んで、インバウンド アクセス規則を作成します。

    インバウンド ネットワーク セキュリティ境界アクセス規則の追加画面が設定されているスクリーンショット。

アウトバウンド アクセス規則を追加する

検索サービスは、インデクサー ベースのインデックス作成とスキルセットの実行の間にアウトバウンド呼び出しを行います。 インデクサーのデータ ソース、Azure AI サービス、またはカスタム スキル ロジックがネットワーク セキュリティ境界の外部にある場合は、検索サービスが接続を行うのを許可するアウトバウンド アクセス規則を作成する必要があります。

パブリック プレビューでは、Azure AI 検索はセキュリティ境界内の Azure Storage または Azure Cosmos DB にのみ接続できることを思い出してください。 インデクサーが他のデータ ソースを使う場合は、その接続をサポートするためのアウトバウンド アクセス規則が必要です。

ネットワーク セキュリティ境界は、アクセス先の完全修飾ドメイン名 (FQDN) に基づいてアウトバウンド アクセス規則をサポートします。 たとえば、ネットワーク セキュリティ境界に関連付けられているサービスから FQDN (mystorageaccount.blob.core.windows.netなど) へのアウトバウンド アクセスを許可できます。

Azure portal でアウトバウンド アクセス規則を追加するには:

  1. Azure portal でネットワーク セキュリティ境界リソースに移動します。

  2. 左側のメニューで [プロファイル] を選びます。

    [プロファイル] オプションが選ばれている左側のメニューのスクリーンショット。

  3. ネットワーク セキュリティ境界で使っているプロファイルを選びます

    ネットワーク セキュリティ境界からプロファイルを選んでいるスクリーンショット。

  4. 左側のメニューで [送信アクセス規則] を選びます。

    左側のメニューでのアウトバウンド アクセス規則の選択のスクリーンショット。

  5. [追加] を選択します。

    ネットワーク セキュリティ境界でのアウトバウンド アクセス規則の追加のスクリーンショット。

  6. 次の値を入力または選択します。

    設定
    規則の名前 アウトバウンド アクセス規則の名前 (例: "MyOutboundAccessRule")
    変換先の型 FQDN のままにします
    許可される宛先 アウトバウンド アクセスを許可する FQDN のコンマ区切りの一覧を入力します
  7. [追加] を選んで、アウトバウンド アクセス規則を作成します。

    オプションが設定されている、ネットワーク セキュリティ境界でのアウトバウンド アクセス規則の追加のスクリーンショット。

ネットワーク セキュリティ境界を経由する接続をテストする

ネットワーク セキュリティ境界を経由する接続をテストするには、インターネットに接続できるローカル コンピューターまたは Azure VM で、Web ブラウザーにアクセスする必要があります。

  1. ネットワーク セキュリティ境界の関連付けを強制モードに変更して、検索サービスへのネットワーク アクセスに対するネットワーク セキュリティ境界要件の適用を始めます。

  2. ローカル コンピューターまたは Azure VM のどちらを使うかを決めます。

    1. ローカル コンピューターを使っている場合は、自分のパブリック IP アドレスを知っている必要があります。
    2. Azure VM をお使いの場合は、プライベート リンクを使うこと、またはAzure portal を使って IP アドレスを調べることができます。
  3. IP アドレスを使うと、その IP アドレスのアクセスを許可するインバウンド アクセス規則を作成できます。 プライベート リンクを使っている場合は、このステップを省略できます。

  4. 最後に、Azure portal で検索サービスに移動してみます。 インデックスを問題なく表示できる場合、ネットワーク セキュリティ境界は正しく構成されています。

ネットワーク セキュリティ境界の構成を表示して管理する

ネットワーク セキュリティ境界構成 REST API を使用して、境界の構成の確認と調整を行うことができます。

プレビュー API バージョン 2024-06-01-preview を必ずお使いください。 Management REST API を呼び出す方法を学ぶ

関連項目