Microsoft。検索サービス 2026-03-01-preview

Bicep リソース定義

searchServices リソースの種類は、次を対象とする操作と共にデプロイできます。

  • Resource groups - リソースグループのデプロイコマンド

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

使用例

Bicep のサンプル

Search Service の展開の基本的な例。

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource searchService 'Microsoft.Search/searchServices@2022-09-01' = {
  name: resourceName
  location: location
  sku: {
    name: 'standard'
  }
  properties: {
    authOptions: {
      apiKeyOnly: {}
    }
    disableLocalAuth: false
    encryptionWithCmk: {
      enforcement: 'Disabled'
    }
    hostingMode: 'default'
    networkRuleSet: {
      ipRules: []
    }
    partitionCount: 1
    publicNetworkAccess: 'Enabled'
    replicaCount: 1
  }
  tags: {
    environment: 'staging'
  }
}

Azure 検証済みモジュール

以下のAzure検証済みモジュールはこのリソースタイプの展開に使用できます。

モジュール 説明
検索サービス Search Service 用 AVM リソース モジュール

Azure クイック スタートのサンプル

次 Azure クイック スタート テンプレート、このリソースの種類をデプロイするための Bicep サンプルが含まれています。

Bicep ファイル 説明
Azure AI Foundry Network の制限付き このテンプレート セットは、暗号化に Microsoft が管理するキーと AI リソースの Microsoft が管理する ID 構成を使用して、プライベート リンクとエグレスを無効にして Azure AI Foundry を設定する方法を示しています。
Azure Cognitive Search サービス の このテンプレートは、Azure Cognitive Search サービスを作成します
ユーザー マネージド ID を使用してネットワークセキュリティで保護されたエージェントを する この一連のテンプレートでは、AI サービス/AOAI 接続用のユーザー マネージド ID 認証とプライベート ネットワーク リンクを使用して仮想ネットワーク分離を使用して Azure AI エージェント サービスを設定し、エージェントをセキュリティで保護されたデータに接続する方法を示します。
Standard エージェントのセットアップ この一連のテンプレートは、標準セットアップで Azure AI Agent Service を設定する方法を示しています。つまり、プロジェクト/ハブ接続のマネージド ID 認証とパブリック インターネット アクセスが有効になっています。 エージェントは、顧客所有のシングルテナント検索およびストレージ リソースを使用します。 このセットアップでは、これらのリソースを完全に制御して表示できますが、使用量に基づいてコストが発生します。

リソースの形式

Microsoft.Search/searchServices リソースを作成するには、次の Bicep をテンプレートに追加します。

resource symbolicname 'Microsoft.Search/searchServices@2026-03-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    authOptions: {
      aadOrApiKey: {
        aadAuthFailureMode: 'string'
      }
      apiKeyOnly: any(...)
    }
    computeType: 'string'
    dataExfiltrationProtections: [
      'string'
    ]
    disableLocalAuth: bool
    encryptionWithCmk: {
      enforcement: 'string'
      serviceLevelEncryptionKey: {
        accessCredentials: {
          applicationId: 'string'
          applicationSecret: 'string'
        }
        identity: {
          @odata.type: 'string'
          // For remaining properties, see DataIdentity objects
        }
        keyVaultKeyName: 'string'
        keyVaultKeyVersion: 'string'
        keyVaultUri: 'string'
      }
    }
    endpoint: 'string'
    hostingMode: 'string'
    knowledgeRetrieval: 'string'
    networkRuleSet: {
      bypass: 'string'
      ipRules: [
        {
          value: 'string'
        }
      ]
    }
    partitionCount: int
    publicNetworkAccess: 'string'
    replicaCount: int
    semanticSearch: 'string'
    upgradeAvailable: 'string'
  }
  sku: {
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

DataIdentity オブジェクト

オブジェクトの種類を指定するには 、@odata.type プロパティを設定します。

#Microsoft.Azure.Search.DataNoneIdentity の場合は、次を使用します。

{
  @odata.type: '#Microsoft.Azure.Search.DataNoneIdentity'
}

#Microsoft.Azure.Search.DataUserAssignedIdentity の場合は、次を使用します。

{
  @odata.type: '#Microsoft.Azure.Search.DataUserAssignedIdentity'
  federatedIdentityClientId: 'string'
  userAssignedIdentity: 'string'
}

プロパティ値

Microsoft.Search/searchServices

名前 説明 価値
ID リソースの ID。 アイデンティティ
位置 リソースが存在する地理的な場所 string (必須)
名前 リソース名 string

制約:
パターン = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (必須)
プロパティ 検索サービスのプロパティ。 SearchServiceプロパティ
sku 価格レベルと容量の制限を決定する検索サービスの SKU。 このプロパティは、新しい検索サービスを作成するときに必要です。 Sku
タグ リソース タグ タグ名と値のディクショナリ。 テンプレート の タグを参照してください

AzureActiveDirectoryApplicationCredentials

名前 説明 価値
アプリケーションID テナント内のアプリ登録のアプリケーション(クライアント)ID。 文字列
アプリケーションシークレット Azure Key Vaultで認証するために使われたApp Registration用に生成されたAADクライアントの秘密です。 string

制約:
機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。

データアイデンティティ

名前 説明 価値
@odata.type DataNoneIdentity 型の "#Microsoft.Azure.Search.DataNoneIdentity" に設定します。 DataUserAssignedIdentity 型の "#Microsoft.Azure.Search.DataUserAssignedIdentity" に設定します。 '#Microsoft.Azure.Search.DataNoneIdentity'
'#Microsoft.Azure.Search.DataUserAssignedIdentity' (必須)

データなしアイデンティティ

名前 説明 価値
@odata.type ID のタイプを指定する URI フラグメント。 '#Microsoft.Azure.Search.DataNoneIdentity' (必須)

DataPlaneAadOrApiKeyAuthOption

名前 説明 価値
aadAuthFailureMode 認証に失敗した要求に対して検索サービスのデータ プレーン API が送信する応答について説明します。 「http401WithBearerChallenge」
「http403」

DataPlaneAuthOptions

名前 説明 価値
aadOrApiKey 認証には、API キーまたは Microsoft Entra ID テナントからのアクセス トークンを使用できることを示します。 DataPlaneAadOrApiKeyAuthOption の
apiKeyのみ 認証に使用できるのは API キーだけであることを示します。 いかなる/どれでも/任意の

DataUserAssignedIdentity

名前 説明 価値
@odata.type ID のタイプを指定する URI フラグメント。 '#Microsoft.Azure.Search.DataUserAssignedIdentity' (必須)
federatedIdentityClientId (フェデレーション アイデンティティ クライアント ID) マルチテナント User-Assigned マネージドアイデンティティCMKサポートのオプション:userAssignedIdentityとフェデレートするように設定されたマルチテナントアプリ登録のクライアントID(UUID)です。 文字列
userAssignedIdentity ユーザーが割り当てたマネージド ID の完全修飾 Azure リソース ID は、通常、検索サービスに割り当てられている必要がある "/subscriptions/1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" の形式です。 string (必須)

暗号化WithCmk

名前 説明 価値
施行 カスタマー マネージド キーで暗号化されていないオブジェクトが検索サービスによって検出された場合に、検索サービスがコンプライアンスを適用する方法について説明します。 「無効」
「有効」
「未指定」
serviceLevelEncryptionKey (サービスレベル暗号化キー) 検索サービスの暗号化のための顧客管理鍵構成を記述します。 SearchResourceEncryptionKey

アイデンティティ

名前 説明 価値
型 リソースに使用される ID の種類。 型 'SystemAssigned, UserAssigned' には、システムによって作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 「なし」
'システム割り当て'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities (ユーザー割り当て済みアイデンティティ) リソースに関連付けられているユーザー ID の一覧。 ユーザー ID ディクショナリ のキー参照は、"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}" という形式の ARM リソース ID になります。 IdentityUserAssignedIdentities の

IdentityUserAssignedIdentities

名前 説明 価値

Ipルール

名前 説明 価値
value 1 つの IPv4 アドレス (例: 123.1.2.3) または CIDR 形式の IP 範囲 (例: 123.1.2.3/24) に対応する値。 文字列

ネットワークルールセット

名前 説明 価値
バイパス "ipRules" セクションで定義されている規則をバイパスできる受信トラフィックの発生元として考えられます。 「AzurePortal」
'AzureServices'
「なし」
ipRules 検索サービス エンドポイントへのアクセスを許可する受信ネットワークを定義する IP 制限規則の一覧。 それまでは、他のすべてのパブリック IP ネットワークがファイアウォールによってブロックされます。 これらの制限規則は、検索サービスの 'publicNetworkAccess' が '有効' の場合にのみ適用されます。それ以外の場合、パブリック IP ルールを使用してもパブリック インターフェイス経由のトラフィックは許可されず、プライベート エンドポイント接続は排他的アクセス方法になります。 Ipルール[]

SearchResourceEncryptionKey

名前 説明 価値
アクセス資格情報 Azure Key Vault へのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必要ありません。 AzureActiveDirectoryApplicationCredentials
ID この暗号化キーに使用する明示的なマネージド ID。 指定されず、アクセス資格情報プロパティが null の場合は、システム割り当てマネージド ID が使用されます。 リソースの更新時に、明示的な ID が指定されていない場合、変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 データアイデンティティ
keyVaultKeyName キー名 保存データの暗号化に使用する Azure Key Vault キーの名前。 文字列
keyVaultKeyVersion キーバージョン 保存データの暗号化に使用する Azure Key Vault キーのバージョン。 文字列
keyVaultUri 保存データの暗号化に使用するキーを含む Azure Key Vault の URI (DNS 名とも呼ばれます)。 URI の例は、https://my-keyvault-name.vault.azure.net可能性があります。 文字列

SearchServiceプロパティ

名前 説明 価値
認証オプション 検索サービスのデータ プレーン API が要求を認証する方法のオプションを定義します。 'disableLocalAuth' が true に設定されている場合、これは設定できません。 DataPlaneAuthOptions の
computeType 既定のコンピューティングまたは Azure Confidential Compute を使用して検索サービスをサポートするように、このプロパティを構成します。 「機密」
デフォルト
データ流出保護 検索サービスに対して明示的に許可されていないデータ流出シナリオの一覧。 現在、サポートされる唯一の値は、将来計画されるより細かい制御を使用して、すべての可能なデータ エクスポート シナリオを無効にする 'All' です。 次のいずれかを含む文字列配列:
「ブロックオール」
disableLocalAuth true に設定すると、検索サービスの呼び出しで認証に API キーを使用することはできません。 'dataPlaneAuthOptions' が定義されている場合、これを true に設定することはできません。 ブール (bool)
暗号化WithCmk 検索サービス内でカスタマー マネージャー キーを使用するリソース (インデックスなど) の暗号化に関するポリシーを指定します。 暗号化WithCmk
エンドポイント Azure AI 検索 サービスのエンドポイント。 文字列
ホスティングモード Standard3 SKU にのみ適用されます。 このプロパティを設定すると、最大 3 つの高密度パーティションを有効にして、最大 1,000 個のインデックスを使用できます。これは、他の SKU で許可されている最大インデックスよりもはるかに大きくなります。 standard3 SKU の場合、値は 'Default' または 'HighDensity' のいずれかです。 他のすべてのSKUの場合、この値は「デフォルト」である必要があります。 デフォルト
「高密度」
知識検索 Azure AI 検索サービス上のエージェント検索の請求プランを指定します。 この構成は特定の地域で特定の価格帯でのみ利用可能です。 「無料」
「スタンダード」
ネットワークルールセット Azure AI 検索 サービスに到達する方法を決定するネットワーク固有のルール。 ネットワークルールセット
パーティション数 専用検索サービスのパーティション数;指定されれば、1、2、3、4、6、または12となります。 1 より大きい値は、標準 SKU でのみ有効です。 hostingMode が 'highDensity' に設定されている 'standard3' サービスの場合、許可される値は 1 から 3 の間です。 int

制約:
最小値 = 1
最大値 = 12
publicNetworkAccess (パブリックネットワークアクセス) この値を '有効] に設定すると、既存の顧客リソースとテンプレートに対する重大な変更を回避できます。 「無効」に設定すると、パブリック インターフェイス経由のトラフィックは許可されず、プライベート エンドポイント接続が排他アクセス方法になります。 「無効」
「有効」
「SecuredByPerimeter」
replicaCount 専用検索サービス内のレプリカ数。 指定する場合は、標準 SKU の場合は 1 から 12 までの値、Basic SKU の場合は 1 ~ 3 の値にする必要があります。 int

制約:
最小値 = 1
最大値 = 12
セマンティックサーチ Azure AI 検索サービスにおけるセマンティック検索の可用性および請求プランを規定しています。 この構成は特定の地域で特定の価格帯でのみ利用可能です。 '無効'
「無料」
「スタンダード」
アップグレードあり 検索サービスにアップグレードが利用可能かどうかを示します。 「利用可能」
'notAvailable'

Sku

名前 説明 価値
名前 検索サービスの SKU。 有効な値には、'free': 共有サービスが含まれます。 "basic": 最大 3 つのレプリカを含む専用サービス。 'standard': 最大 12 個のパーティションと 12 個のレプリカを持つ専用サービス。 'standard2': 標準に似ていますが、検索ユニットあたりの容量が多くなります。 'standard3': 最大 12 個のパーティションと 12 個のレプリカを備えた最大の Standard オファリング (hostingMode プロパティも 'highDensity' に設定した場合は、インデックスが多い最大 3 つのパーティション)。 'storage_optimized_l1': パーティションあたり 1 TB、最大 12 個のパーティションをサポートします。 「storage_optimized_l2」:パーティションあたり2TB、最大12パーティションをサポートします。 「サーバーレス」:自動スケーリング機能を備えたサーバーレス層。 「ベーシック」
「無料」
「サーバーレス」
「スタンダード」
「スタンダード2」
'スタンダード3'
「storage_optimized_l1」
「storage_optimized_l2」

追跡リソースタグ

名前 説明 価値

UserAssignedIdentity

名前 説明 価値

ARM テンプレート リソース定義

searchServices リソースの種類は、次を対象とする操作と共にデプロイできます。

使用例

Azure クイックスタート テンプレート

このリソースの種類 デプロイする Azure クイック スタート テンプレート 次に示します。

テンプレート 説明
Azure AI Foundry Network の制限付き

Azure にデプロイする
このテンプレート セットは、暗号化に Microsoft が管理するキーと AI リソースの Microsoft が管理する ID 構成を使用して、プライベート リンクとエグレスを無効にして Azure AI Foundry を設定する方法を示しています。
Azure Cognitive Search サービス の

Azure にデプロイする
このテンプレートは、Azure Cognitive Search サービスを作成します
プライベート エンドポイント を使用して Azure Cognitive Search サービスを する

Azure にデプロイする
このテンプレートは、プライベート エンドポイントを使用して Azure Cognitive Search サービスを作成します。
ユーザー マネージド ID を使用してネットワークセキュリティで保護されたエージェントを する

Azure にデプロイする
この一連のテンプレートでは、AI サービス/AOAI 接続用のユーザー マネージド ID 認証とプライベート ネットワーク リンクを使用して仮想ネットワーク分離を使用して Azure AI エージェント サービスを設定し、エージェントをセキュリティで保護されたデータに接続する方法を示します。
Standard エージェントのセットアップ

Azure にデプロイする
この一連のテンプレートは、標準セットアップで Azure AI Agent Service を設定する方法を示しています。つまり、プロジェクト/ハブ接続のマネージド ID 認証とパブリック インターネット アクセスが有効になっています。 エージェントは、顧客所有のシングルテナント検索およびストレージ リソースを使用します。 このセットアップでは、これらのリソースを完全に制御して表示できますが、使用量に基づいてコストが発生します。
Webアプリ、SQLデータベース、Azure Cosmos DB、Azure Search

Azure にデプロイする
このテンプレートは、Webアプリ、SQLデータベース、Azure Cosmos DB、Azure Search、Application Insightsをプロビジョニングします。

リソースの形式

Microsoft.Search/searchServices リソースを作成するには、次の JSON をテンプレートに追加します。

{
  "type": "Microsoft.Search/searchServices",
  "apiVersion": "2026-03-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "authOptions": {
      "aadOrApiKey": {
        "aadAuthFailureMode": "string"
      },
      "apiKeyOnly": {}
    },
    "computeType": "string",
    "dataExfiltrationProtections": [ "string" ],
    "disableLocalAuth": "bool",
    "encryptionWithCmk": {
      "enforcement": "string",
      "serviceLevelEncryptionKey": {
        "accessCredentials": {
          "applicationId": "string",
          "applicationSecret": "string"
        },
        "identity": {
          "@odata.type": "string"
          // For remaining properties, see DataIdentity objects
        },
        "keyVaultKeyName": "string",
        "keyVaultKeyVersion": "string",
        "keyVaultUri": "string"
      }
    },
    "endpoint": "string",
    "hostingMode": "string",
    "knowledgeRetrieval": "string",
    "networkRuleSet": {
      "bypass": "string",
      "ipRules": [
        {
          "value": "string"
        }
      ]
    },
    "partitionCount": "int",
    "publicNetworkAccess": "string",
    "replicaCount": "int",
    "semanticSearch": "string",
    "upgradeAvailable": "string"
  },
  "sku": {
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

DataIdentity オブジェクト

オブジェクトの種類を指定するには 、@odata.type プロパティを設定します。

#Microsoft.Azure.Search.DataNoneIdentity の場合は、次を使用します。

{
  "@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity"
}

#Microsoft.Azure.Search.DataUserAssignedIdentity の場合は、次を使用します。

{
  "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
  "federatedIdentityClientId": "string",
  "userAssignedIdentity": "string"
}

プロパティ値

Microsoft.Search/searchServices

名前 説明 価値
apiVersion API のバージョン 『2026-03-01-プレビュー』
ID リソースの ID。 アイデンティティ
位置 リソースが存在する地理的な場所 string (必須)
名前 リソース名 string

制約:
パターン = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (必須)
プロパティ 検索サービスのプロパティ。 SearchServiceプロパティ
sku 価格レベルと容量の制限を決定する検索サービスの SKU。 このプロパティは、新しい検索サービスを作成するときに必要です。 Sku
タグ リソース タグ タグ名と値のディクショナリ。 テンプレート の タグを参照してください
型 リソースの種類 'Microsoft.Search/searchServices'

AzureActiveDirectoryApplicationCredentials

名前 説明 価値
アプリケーションID テナント内のアプリ登録のアプリケーション(クライアント)ID。 文字列
アプリケーションシークレット Azure Key Vaultで認証するために使われたApp Registration用に生成されたAADクライアントの秘密です。 string

制約:
機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。

データアイデンティティ

名前 説明 価値
@odata.type DataNoneIdentity 型の "#Microsoft.Azure.Search.DataNoneIdentity" に設定します。 DataUserAssignedIdentity 型の "#Microsoft.Azure.Search.DataUserAssignedIdentity" に設定します。 '#Microsoft.Azure.Search.DataNoneIdentity'
'#Microsoft.Azure.Search.DataUserAssignedIdentity' (必須)

データなしアイデンティティ

名前 説明 価値
@odata.type ID のタイプを指定する URI フラグメント。 '#Microsoft.Azure.Search.DataNoneIdentity' (必須)

DataPlaneAadOrApiKeyAuthOption

名前 説明 価値
aadAuthFailureMode 認証に失敗した要求に対して検索サービスのデータ プレーン API が送信する応答について説明します。 「http401WithBearerChallenge」
「http403」

DataPlaneAuthOptions

名前 説明 価値
aadOrApiKey 認証には、API キーまたは Microsoft Entra ID テナントからのアクセス トークンを使用できることを示します。 DataPlaneAadOrApiKeyAuthOption の
apiKeyのみ 認証に使用できるのは API キーだけであることを示します。 いかなる/どれでも/任意の

DataUserAssignedIdentity

名前 説明 価値
@odata.type ID のタイプを指定する URI フラグメント。 '#Microsoft.Azure.Search.DataUserAssignedIdentity' (必須)
federatedIdentityClientId (フェデレーション アイデンティティ クライアント ID) マルチテナント User-Assigned マネージドアイデンティティCMKサポートのオプション:userAssignedIdentityとフェデレートするように設定されたマルチテナントアプリ登録のクライアントID(UUID)です。 文字列
userAssignedIdentity ユーザーが割り当てたマネージド ID の完全修飾 Azure リソース ID は、通常、検索サービスに割り当てられている必要がある "/subscriptions/1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" の形式です。 string (必須)

暗号化WithCmk

名前 説明 価値
施行 カスタマー マネージド キーで暗号化されていないオブジェクトが検索サービスによって検出された場合に、検索サービスがコンプライアンスを適用する方法について説明します。 「無効」
「有効」
「未指定」
serviceLevelEncryptionKey (サービスレベル暗号化キー) 検索サービスの暗号化のための顧客管理鍵構成を記述します。 SearchResourceEncryptionKey

アイデンティティ

名前 説明 価値
型 リソースに使用される ID の種類。 型 'SystemAssigned, UserAssigned' には、システムによって作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 「なし」
'システム割り当て'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities (ユーザー割り当て済みアイデンティティ) リソースに関連付けられているユーザー ID の一覧。 ユーザー ID ディクショナリ のキー参照は、"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}" という形式の ARM リソース ID になります。 IdentityUserAssignedIdentities の

IdentityUserAssignedIdentities

名前 説明 価値

Ipルール

名前 説明 価値
value 1 つの IPv4 アドレス (例: 123.1.2.3) または CIDR 形式の IP 範囲 (例: 123.1.2.3/24) に対応する値。 文字列

ネットワークルールセット

名前 説明 価値
バイパス "ipRules" セクションで定義されている規則をバイパスできる受信トラフィックの発生元として考えられます。 「AzurePortal」
'AzureServices'
「なし」
ipRules 検索サービス エンドポイントへのアクセスを許可する受信ネットワークを定義する IP 制限規則の一覧。 それまでは、他のすべてのパブリック IP ネットワークがファイアウォールによってブロックされます。 これらの制限規則は、検索サービスの 'publicNetworkAccess' が '有効' の場合にのみ適用されます。それ以外の場合、パブリック IP ルールを使用してもパブリック インターフェイス経由のトラフィックは許可されず、プライベート エンドポイント接続は排他的アクセス方法になります。 Ipルール[]

SearchResourceEncryptionKey

名前 説明 価値
アクセス資格情報 Azure Key Vault へのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必要ありません。 AzureActiveDirectoryApplicationCredentials
ID この暗号化キーに使用する明示的なマネージド ID。 指定されず、アクセス資格情報プロパティが null の場合は、システム割り当てマネージド ID が使用されます。 リソースの更新時に、明示的な ID が指定されていない場合、変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 データアイデンティティ
keyVaultKeyName キー名 保存データの暗号化に使用する Azure Key Vault キーの名前。 文字列
keyVaultKeyVersion キーバージョン 保存データの暗号化に使用する Azure Key Vault キーのバージョン。 文字列
keyVaultUri 保存データの暗号化に使用するキーを含む Azure Key Vault の URI (DNS 名とも呼ばれます)。 URI の例は、https://my-keyvault-name.vault.azure.net可能性があります。 文字列

SearchServiceプロパティ

名前 説明 価値
認証オプション 検索サービスのデータ プレーン API が要求を認証する方法のオプションを定義します。 'disableLocalAuth' が true に設定されている場合、これは設定できません。 DataPlaneAuthOptions の
computeType 既定のコンピューティングまたは Azure Confidential Compute を使用して検索サービスをサポートするように、このプロパティを構成します。 「機密」
デフォルト
データ流出保護 検索サービスに対して明示的に許可されていないデータ流出シナリオの一覧。 現在、サポートされる唯一の値は、将来計画されるより細かい制御を使用して、すべての可能なデータ エクスポート シナリオを無効にする 'All' です。 次のいずれかを含む文字列配列:
「ブロックオール」
disableLocalAuth true に設定すると、検索サービスの呼び出しで認証に API キーを使用することはできません。 'dataPlaneAuthOptions' が定義されている場合、これを true に設定することはできません。 ブール (bool)
暗号化WithCmk 検索サービス内でカスタマー マネージャー キーを使用するリソース (インデックスなど) の暗号化に関するポリシーを指定します。 暗号化WithCmk
エンドポイント Azure AI 検索 サービスのエンドポイント。 文字列
ホスティングモード Standard3 SKU にのみ適用されます。 このプロパティを設定すると、最大 3 つの高密度パーティションを有効にして、最大 1,000 個のインデックスを使用できます。これは、他の SKU で許可されている最大インデックスよりもはるかに大きくなります。 standard3 SKU の場合、値は 'Default' または 'HighDensity' のいずれかです。 他のすべてのSKUの場合、この値は「デフォルト」である必要があります。 デフォルト
「高密度」
知識検索 Azure AI 検索サービス上のエージェント検索の請求プランを指定します。 この構成は特定の地域で特定の価格帯でのみ利用可能です。 「無料」
「スタンダード」
ネットワークルールセット Azure AI 検索 サービスに到達する方法を決定するネットワーク固有のルール。 ネットワークルールセット
パーティション数 専用検索サービスのパーティション数;指定されれば、1、2、3、4、6、または12となります。 1 より大きい値は、標準 SKU でのみ有効です。 hostingMode が 'highDensity' に設定されている 'standard3' サービスの場合、許可される値は 1 から 3 の間です。 int

制約:
最小値 = 1
最大値 = 12
publicNetworkAccess (パブリックネットワークアクセス) この値を '有効] に設定すると、既存の顧客リソースとテンプレートに対する重大な変更を回避できます。 「無効」に設定すると、パブリック インターフェイス経由のトラフィックは許可されず、プライベート エンドポイント接続が排他アクセス方法になります。 「無効」
「有効」
「SecuredByPerimeter」
replicaCount 専用検索サービス内のレプリカ数。 指定する場合は、標準 SKU の場合は 1 から 12 までの値、Basic SKU の場合は 1 ~ 3 の値にする必要があります。 int

制約:
最小値 = 1
最大値 = 12
セマンティックサーチ Azure AI 検索サービスにおけるセマンティック検索の可用性および請求プランを規定しています。 この構成は特定の地域で特定の価格帯でのみ利用可能です。 '無効'
「無料」
「スタンダード」
アップグレードあり 検索サービスにアップグレードが利用可能かどうかを示します。 「利用可能」
'notAvailable'

Sku

名前 説明 価値
名前 検索サービスの SKU。 有効な値には、'free': 共有サービスが含まれます。 "basic": 最大 3 つのレプリカを含む専用サービス。 'standard': 最大 12 個のパーティションと 12 個のレプリカを持つ専用サービス。 'standard2': 標準に似ていますが、検索ユニットあたりの容量が多くなります。 'standard3': 最大 12 個のパーティションと 12 個のレプリカを備えた最大の Standard オファリング (hostingMode プロパティも 'highDensity' に設定した場合は、インデックスが多い最大 3 つのパーティション)。 'storage_optimized_l1': パーティションあたり 1 TB、最大 12 個のパーティションをサポートします。 「storage_optimized_l2」:パーティションあたり2TB、最大12パーティションをサポートします。 「サーバーレス」:自動スケーリング機能を備えたサーバーレス層。 「ベーシック」
「無料」
「サーバーレス」
「スタンダード」
「スタンダード2」
'スタンダード3'
「storage_optimized_l1」
「storage_optimized_l2」

追跡リソースタグ

名前 説明 価値

UserAssignedIdentity

名前 説明 価値

Terraform (AzAPI プロバイダー) リソース定義

searchServices リソースの種類は、次を対象とする操作と共にデプロイできます。

  • リソースグループ 各APIバージョンの変更プロパティ一覧については、 変更ログをご覧ください。

使用例

Terraformサンプル

Search Service の展開の基本的な例。

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "searchService" {
  type      = "Microsoft.Search/searchServices@2022-09-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      authOptions = {
        apiKeyOnly = {
        }
      }
      disableLocalAuth = false
      encryptionWithCmk = {
        enforcement = "Disabled"
      }
      hostingMode = "default"
      networkRuleSet = {
        ipRules = [
        ]
      }
      partitionCount      = 1
      publicNetworkAccess = "Enabled"
      replicaCount        = 1
    }
    sku = {
      name = "standard"
    }
    tags = {
      environment = "staging"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Azure 検証済みモジュール

以下のAzure検証済みモジュールはこのリソースタイプの展開に使用できます。

モジュール 説明
検索サービス Search Service 用 AVM リソース モジュール

リソースの形式

Microsoft.Search/searchServices リソースを作成するには、次の Terraform をテンプレートに追加します。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Search/searchServices@2026-03-01-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      authOptions = {
        aadOrApiKey = {
          aadAuthFailureMode = "string"
        }
        apiKeyOnly = ?
      }
      computeType = "string"
      dataExfiltrationProtections = [
        "string"
      ]
      disableLocalAuth = bool
      encryptionWithCmk = {
        enforcement = "string"
        serviceLevelEncryptionKey = {
          accessCredentials = {
            applicationId = "string"
            applicationSecret = "string"
          }
          identity = {
            @odata.type = "string"
            // For remaining properties, see DataIdentity objects
          }
          keyVaultKeyName = "string"
          keyVaultKeyVersion = "string"
          keyVaultUri = "string"
        }
      }
      endpoint = "string"
      hostingMode = "string"
      knowledgeRetrieval = "string"
      networkRuleSet = {
        bypass = "string"
        ipRules = [
          {
            value = "string"
          }
        ]
      }
      partitionCount = int
      publicNetworkAccess = "string"
      replicaCount = int
      semanticSearch = "string"
      upgradeAvailable = "string"
    }
    sku = {
      name = "string"
    }
  }
}

DataIdentity オブジェクト

オブジェクトの種類を指定するには 、@odata.type プロパティを設定します。

#Microsoft.Azure.Search.DataNoneIdentity の場合は、次を使用します。

{
  @odata.type = "#Microsoft.Azure.Search.DataNoneIdentity"
}

#Microsoft.Azure.Search.DataUserAssignedIdentity の場合は、次を使用します。

{
  @odata.type = "#Microsoft.Azure.Search.DataUserAssignedIdentity"
  federatedIdentityClientId = "string"
  userAssignedIdentity = "string"
}

プロパティ値

Microsoft.Search/searchServices

名前 説明 価値
ID リソースの ID。 アイデンティティ
位置 リソースが存在する地理的な場所 string (必須)
名前 リソース名 string

制約:
パターン = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (必須)
プロパティ 検索サービスのプロパティ。 SearchServiceプロパティ
sku 価格レベルと容量の制限を決定する検索サービスの SKU。 このプロパティは、新しい検索サービスを作成するときに必要です。 Sku
タグ リソース タグ タグ名と値のディクショナリ。
型 リソースの種類 "Microsoft.Search/searchServices@2026-03-01-preview"

AzureActiveDirectoryApplicationCredentials

名前 説明 価値
アプリケーションID テナント内のアプリ登録のアプリケーション(クライアント)ID。 文字列
アプリケーションシークレット Azure Key Vaultで認証するために使われたApp Registration用に生成されたAADクライアントの秘密です。 string

制約:
機密性の高い値。 セキュリティで保護されたパラメーターとして渡します。

データアイデンティティ

名前 説明 価値
@odata.type DataNoneIdentity 型の "#Microsoft.Azure.Search.DataNoneIdentity" に設定します。 DataUserAssignedIdentity 型の "#Microsoft.Azure.Search.DataUserAssignedIdentity" に設定します。 '#Microsoft.Azure.Search.DataNoneIdentity'
'#Microsoft.Azure.Search.DataUserAssignedIdentity' (必須)

データなしアイデンティティ

名前 説明 価値
@odata.type ID のタイプを指定する URI フラグメント。 '#Microsoft.Azure.Search.DataNoneIdentity' (必須)

DataPlaneAadOrApiKeyAuthOption

名前 説明 価値
aadAuthFailureMode 認証に失敗した要求に対して検索サービスのデータ プレーン API が送信する応答について説明します。 「http401WithBearerChallenge」
「http403」

DataPlaneAuthOptions

名前 説明 価値
aadOrApiKey 認証には、API キーまたは Microsoft Entra ID テナントからのアクセス トークンを使用できることを示します。 DataPlaneAadOrApiKeyAuthOption の
apiKeyのみ 認証に使用できるのは API キーだけであることを示します。 いかなる/どれでも/任意の

DataUserAssignedIdentity

名前 説明 価値
@odata.type ID のタイプを指定する URI フラグメント。 '#Microsoft.Azure.Search.DataUserAssignedIdentity' (必須)
federatedIdentityClientId (フェデレーション アイデンティティ クライアント ID) マルチテナント User-Assigned マネージドアイデンティティCMKサポートのオプション:userAssignedIdentityとフェデレートするように設定されたマルチテナントアプリ登録のクライアントID(UUID)です。 文字列
userAssignedIdentity ユーザーが割り当てたマネージド ID の完全修飾 Azure リソース ID は、通常、検索サービスに割り当てられている必要がある "/subscriptions/1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" の形式です。 string (必須)

暗号化WithCmk

名前 説明 価値
施行 カスタマー マネージド キーで暗号化されていないオブジェクトが検索サービスによって検出された場合に、検索サービスがコンプライアンスを適用する方法について説明します。 「無効」
「有効」
「未指定」
serviceLevelEncryptionKey (サービスレベル暗号化キー) 検索サービスの暗号化のための顧客管理鍵構成を記述します。 SearchResourceEncryptionKey

アイデンティティ

名前 説明 価値
型 リソースに使用される ID の種類。 型 'SystemAssigned, UserAssigned' には、システムによって作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 「なし」
'システム割り当て'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities (ユーザー割り当て済みアイデンティティ) リソースに関連付けられているユーザー ID の一覧。 ユーザー ID ディクショナリ のキー参照は、"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}" という形式の ARM リソース ID になります。 IdentityUserAssignedIdentities の

IdentityUserAssignedIdentities

名前 説明 価値

Ipルール

名前 説明 価値
value 1 つの IPv4 アドレス (例: 123.1.2.3) または CIDR 形式の IP 範囲 (例: 123.1.2.3/24) に対応する値。 文字列

ネットワークルールセット

名前 説明 価値
バイパス "ipRules" セクションで定義されている規則をバイパスできる受信トラフィックの発生元として考えられます。 「AzurePortal」
'AzureServices'
「なし」
ipRules 検索サービス エンドポイントへのアクセスを許可する受信ネットワークを定義する IP 制限規則の一覧。 それまでは、他のすべてのパブリック IP ネットワークがファイアウォールによってブロックされます。 これらの制限規則は、検索サービスの 'publicNetworkAccess' が '有効' の場合にのみ適用されます。それ以外の場合、パブリック IP ルールを使用してもパブリック インターフェイス経由のトラフィックは許可されず、プライベート エンドポイント接続は排他的アクセス方法になります。 Ipルール[]

SearchResourceEncryptionKey

名前 説明 価値
アクセス資格情報 Azure Key Vault へのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必要ありません。 AzureActiveDirectoryApplicationCredentials
ID この暗号化キーに使用する明示的なマネージド ID。 指定されず、アクセス資格情報プロパティが null の場合は、システム割り当てマネージド ID が使用されます。 リソースの更新時に、明示的な ID が指定されていない場合、変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 データアイデンティティ
keyVaultKeyName キー名 保存データの暗号化に使用する Azure Key Vault キーの名前。 文字列
keyVaultKeyVersion キーバージョン 保存データの暗号化に使用する Azure Key Vault キーのバージョン。 文字列
keyVaultUri 保存データの暗号化に使用するキーを含む Azure Key Vault の URI (DNS 名とも呼ばれます)。 URI の例は、https://my-keyvault-name.vault.azure.net可能性があります。 文字列

SearchServiceプロパティ

名前 説明 価値
認証オプション 検索サービスのデータ プレーン API が要求を認証する方法のオプションを定義します。 'disableLocalAuth' が true に設定されている場合、これは設定できません。 DataPlaneAuthOptions の
computeType 既定のコンピューティングまたは Azure Confidential Compute を使用して検索サービスをサポートするように、このプロパティを構成します。 「機密」
デフォルト
データ流出保護 検索サービスに対して明示的に許可されていないデータ流出シナリオの一覧。 現在、サポートされる唯一の値は、将来計画されるより細かい制御を使用して、すべての可能なデータ エクスポート シナリオを無効にする 'All' です。 次のいずれかを含む文字列配列:
「ブロックオール」
disableLocalAuth true に設定すると、検索サービスの呼び出しで認証に API キーを使用することはできません。 'dataPlaneAuthOptions' が定義されている場合、これを true に設定することはできません。 ブール (bool)
暗号化WithCmk 検索サービス内でカスタマー マネージャー キーを使用するリソース (インデックスなど) の暗号化に関するポリシーを指定します。 暗号化WithCmk
エンドポイント Azure AI 検索 サービスのエンドポイント。 文字列
ホスティングモード Standard3 SKU にのみ適用されます。 このプロパティを設定すると、最大 3 つの高密度パーティションを有効にして、最大 1,000 個のインデックスを使用できます。これは、他の SKU で許可されている最大インデックスよりもはるかに大きくなります。 standard3 SKU の場合、値は 'Default' または 'HighDensity' のいずれかです。 他のすべてのSKUの場合、この値は「デフォルト」である必要があります。 デフォルト
「高密度」
知識検索 Azure AI 検索サービス上のエージェント検索の請求プランを指定します。 この構成は特定の地域で特定の価格帯でのみ利用可能です。 「無料」
「スタンダード」
ネットワークルールセット Azure AI 検索 サービスに到達する方法を決定するネットワーク固有のルール。 ネットワークルールセット
パーティション数 専用検索サービスのパーティション数;指定されれば、1、2、3、4、6、または12となります。 1 より大きい値は、標準 SKU でのみ有効です。 hostingMode が 'highDensity' に設定されている 'standard3' サービスの場合、許可される値は 1 から 3 の間です。 int

制約:
最小値 = 1
最大値 = 12
publicNetworkAccess (パブリックネットワークアクセス) この値を '有効] に設定すると、既存の顧客リソースとテンプレートに対する重大な変更を回避できます。 「無効」に設定すると、パブリック インターフェイス経由のトラフィックは許可されず、プライベート エンドポイント接続が排他アクセス方法になります。 「無効」
「有効」
「SecuredByPerimeter」
replicaCount 専用検索サービス内のレプリカ数。 指定する場合は、標準 SKU の場合は 1 から 12 までの値、Basic SKU の場合は 1 ~ 3 の値にする必要があります。 int

制約:
最小値 = 1
最大値 = 12
セマンティックサーチ Azure AI 検索サービスにおけるセマンティック検索の可用性および請求プランを規定しています。 この構成は特定の地域で特定の価格帯でのみ利用可能です。 '無効'
「無料」
「スタンダード」
アップグレードあり 検索サービスにアップグレードが利用可能かどうかを示します。 「利用可能」
'notAvailable'

Sku

名前 説明 価値
名前 検索サービスの SKU。 有効な値には、'free': 共有サービスが含まれます。 "basic": 最大 3 つのレプリカを含む専用サービス。 'standard': 最大 12 個のパーティションと 12 個のレプリカを持つ専用サービス。 'standard2': 標準に似ていますが、検索ユニットあたりの容量が多くなります。 'standard3': 最大 12 個のパーティションと 12 個のレプリカを備えた最大の Standard オファリング (hostingMode プロパティも 'highDensity' に設定した場合は、インデックスが多い最大 3 つのパーティション)。 'storage_optimized_l1': パーティションあたり 1 TB、最大 12 個のパーティションをサポートします。 「storage_optimized_l2」:パーティションあたり2TB、最大12パーティションをサポートします。 「サーバーレス」:自動スケーリング機能を備えたサーバーレス層。 「ベーシック」
「無料」
「サーバーレス」
「スタンダード」
「スタンダード2」
'スタンダード3'
「storage_optimized_l1」
「storage_optimized_l2」

追跡リソースタグ

名前 説明 価値

UserAssignedIdentity

名前 説明 価値