你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。

Microsoft.Search 搜索服务 2023-11-01

Bicep 资源定义

可以使用目标操作部署 searchServices 资源类型:

有关每个 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 验证模块 可用于部署此资源类型。

模块 描述
搜索服务 搜索服务的 AVM 资源模块

Azure 快速入门示例

以下 Azure 快速入门模板 包含用于部署此资源类型的 Bicep 示例。

Bicep 文件 描述
Azure AI Foundry 网络受限 这组模板演示了如何在禁用专用链接和出口的情况下设置 Azure AI Foundry,使用 Microsoft 管理的密钥进行加密,并使用 Microsoft 管理的标识配置为 AI 资源。
Azure 认知搜索服务 此模板创建 Azure 认知搜索服务
使用用户托管标识 网络安全代理 此模板集演示如何使用用户托管标识身份验证为 AI 服务/AOAI 连接设置虚拟网络隔离的 Azure AI 代理服务,以及专用网络链接,以将代理连接到安全数据。
标准代理设置 此模板集演示如何使用标准设置设置设置 Azure AI 代理服务,这意味着已启用项目/中心连接的托管标识身份验证和公共 Internet 访问。 代理使用客户拥有的单租户搜索和存储资源。 通过此设置,可以完全控制这些资源并查看这些资源,但会根据使用情况产生成本。

资源格式

若要创建 Microsoft.Search/searchServices 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.Search/searchServices@2023-11-01' = {
  identity: {
    type: 'string'
  }
  location: 'string'
  name: 'string'
  properties: {
    authOptions: {
      aadOrApiKey: {
        aadAuthFailureMode: 'string'
      }
      apiKeyOnly: any(...)
    }
    disableLocalAuth: bool
    encryptionWithCmk: {
      enforcement: 'string'
    }
    hostingMode: 'string'
    networkRuleSet: {
      ipRules: [
        {
          value: 'string'
        }
      ]
    }
    partitionCount: int
    publicNetworkAccess: 'string'
    replicaCount: int
    semanticSearch: 'string'
  }
  sku: {
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

属性值

Microsoft.Search/searchServices

名字 描述 价值
标识 资源的标识。 标识
位置 资源所在的地理位置 string (必需)
名字 资源名称 string (必需)
性能 搜索服务的属性。 SearchServiceProperties
SKU 搜索服务的 SKU,用于确定计费费率和容量限制。 创建新搜索服务时,此属性是必需的。 SKU
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记

DataPlaneAadOrApiKeyAuthOption

名字 描述 价值
aadAuthFailureMode 描述搜索服务的数据平面 API 针对身份验证失败的请求发送的响应。 “http401WithBearerChallenge”
“http403”

DataPlaneAuthOptions

名字 描述 价值
aadOrApiKey 指示 API 密钥或来自 Microsoft Entra ID 租户的访问令牌可用于身份验证。 DataPlaneAadOrApiKeyAuthOption
apiKeyOnly 指示只能使用 API 密钥进行身份验证。 任何

EncryptionWithCmk 的

名字 描述 价值
执法 描述搜索服务应如何强制实施一个或多个非客户加密资源。 “Disabled”
“Enabled”
“Unspecified”

身份

名字 描述 价值
类型 标识类型。 “None”
“SystemAssigned”(必需)

IpRule (英语)

名字 描述 价值
价值 与单个 IPv4 地址(例如,123.1.2.3)或 CIDR 格式(例如,允许 123.1.2.3/24)的 IP 范围对应的值。 字符串

NetworkRuleSet 网络规则集

名字 描述 价值
ip规则 用于 IP 防火墙的 IP 限制规则列表。 与规则不匹配的任何 IP 都将被防火墙阻止。 仅当搜索服务的“publicNetworkAccess”已启用时,才应用这些规则。 IpRule[]

SearchServiceProperties

名字 描述 价值
authOptions 定义搜索服务的数据平面 API 如何对请求进行身份验证的选项。 如果“disableLocalAuth”设置为 true,则无法设置此项。 DataPlaneAuthOptions
禁用LocalAuth 如果设置为 true,则不允许调用搜索服务以使用 API 密钥进行身份验证。 如果定义了“dataPlaneAuthOptions”,则无法将其设置为 true。 布尔
encryptionWithCmk 指定有关使用搜索服务中的客户经理密钥加密资源(如索引)的任何策略。 EncryptionWithCmk 的
hostingMode 仅适用于 standard3 SKU。 可以将此属性设置为最多允许 3 个高密度分区,允许最多 1000 个索引,这远远高于任何其他 SKU 允许的最大索引。 对于 standard3 SKU,该值为“default”或“highDensity”。 对于所有其他 SKU,此值必须为“default”。 “default”
“highDensity”
networkRuleSet 网络规则集 确定如何访问搜索服务的网络特定规则。 NetworkRuleSet 网络规则集
partitionCount 搜索服务中的分区数;如果指定,则它可以是 1、2、3、4、6 或 12。 大于 1 的值仅适用于标准 SKU。 对于 hostingMode 设置为“highDensity”的“standard3”服务,允许的值介于 1 到 3 之间。 int

约束:
最小值 = 1
最大值 = 12
publicNetworkAccess 此值可以设置为“已启用”,以避免对现有客户资源和模板进行重大更改。 如果设置为“disabled”,则不允许通过公共接口的流量,专用终结点连接将是独占访问方法。 “disabled”
“enabled”
replicaCount 搜索服务中的副本数。 如果指定,它必须是标准 SKU 的 1 到 12(含 1 到 3)之间的值,对于基本 SKU,该值必须介于 1 和 3 之间。 int

约束:
最小值 = 1
最大值 = 12
语义搜索 设置控制语义搜索可用性的选项。 此配置仅适用于特定位置的某些搜索 SKU。 “disabled”
“free”
“standard”

SKU

名字 描述 价值
名字 搜索服务的 SKU。 有效值包括:“free”:共享服务。 “basic”:最多包含 3 个副本的专用服务。 “standard”:最多包含 12 个分区和 12 个副本的专用服务。 “standard2”:类似于标准,但每个搜索单位的容量更多。 “standard3”:最大标准产品/服务最多包含 12 个分区和 12 个副本(如果同时将 hostingMode 属性设置为“highDensity”,则最多具有 3 个具有更多索引的分区)。 “storage_optimized_l1”:支持每个分区 1TB,最多支持 12 个分区。 “storage_optimized_l2”:支持每个分区 2TB,最多支持 12 个分区。 “basic”
“free”
“standard”
“standard2”
“standard3”
“storage_optimized_l1”
“storage_optimized_l2”

TrackedResourceTags

名字 描述 价值

ARM 模板资源定义

可以使用目标操作部署 searchServices 资源类型:

用法示例

Azure 快速入门模板

以下 Azure 快速入门模板 部署此资源类型。

模板 描述
Azure AI Foundry 网络受限

部署到 Azure
这组模板演示了如何在禁用专用链接和出口的情况下设置 Azure AI Foundry,使用 Microsoft 管理的密钥进行加密,并使用 Microsoft 管理的标识配置为 AI 资源。
Azure 认知搜索服务

部署到 Azure
此模板创建 Azure 认知搜索服务
使用专用终结点 Azure 认知搜索服务

部署到 Azure
此模板使用专用终结点创建 Azure 认知搜索服务。
使用用户托管标识 网络安全代理

部署到 Azure
此模板集演示如何使用用户托管标识身份验证为 AI 服务/AOAI 连接设置虚拟网络隔离的 Azure AI 代理服务,以及专用网络链接,以将代理连接到安全数据。
标准代理设置

部署到 Azure
此模板集演示如何使用标准设置设置设置 Azure AI 代理服务,这意味着已启用项目/中心连接的托管标识身份验证和公共 Internet 访问。 代理使用客户拥有的单租户搜索和存储资源。 通过此设置,可以完全控制这些资源并查看这些资源,但会根据使用情况产生成本。
使用 SQL 数据库、Azure Cosmos DB、Azure 搜索 Web 应用

部署到 Azure
此模板预配 Web 应用、SQL 数据库、Azure Cosmos DB、Azure 搜索和 Application Insights。

资源格式

若要创建 Microsoft.Search/searchServices 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.Search/searchServices",
  "apiVersion": "2023-11-01",
  "name": "string",
  "identity": {
    "type": "string"
  },
  "location": "string",
  "properties": {
    "authOptions": {
      "aadOrApiKey": {
        "aadAuthFailureMode": "string"
      },
      "apiKeyOnly": {}
    },
    "disableLocalAuth": "bool",
    "encryptionWithCmk": {
      "enforcement": "string"
    },
    "hostingMode": "string",
    "networkRuleSet": {
      "ipRules": [
        {
          "value": "string"
        }
      ]
    },
    "partitionCount": "int",
    "publicNetworkAccess": "string",
    "replicaCount": "int",
    "semanticSearch": "string"
  },
  "sku": {
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

属性值

Microsoft.Search/searchServices

名字 描述 价值
apiVersion API 版本 '2023-11-01'
标识 资源的标识。 标识
位置 资源所在的地理位置 string (必需)
名字 资源名称 string (必需)
性能 搜索服务的属性。 SearchServiceProperties
SKU 搜索服务的 SKU,用于确定计费费率和容量限制。 创建新搜索服务时,此属性是必需的。 SKU
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记
类型 资源类型 “Microsoft.Search/searchServices”

DataPlaneAadOrApiKeyAuthOption

名字 描述 价值
aadAuthFailureMode 描述搜索服务的数据平面 API 针对身份验证失败的请求发送的响应。 “http401WithBearerChallenge”
“http403”

DataPlaneAuthOptions

名字 描述 价值
aadOrApiKey 指示 API 密钥或来自 Microsoft Entra ID 租户的访问令牌可用于身份验证。 DataPlaneAadOrApiKeyAuthOption
apiKeyOnly 指示只能使用 API 密钥进行身份验证。 任何

EncryptionWithCmk 的

名字 描述 价值
执法 描述搜索服务应如何强制实施一个或多个非客户加密资源。 “Disabled”
“Enabled”
“Unspecified”

身份

名字 描述 价值
类型 标识类型。 “None”
“SystemAssigned”(必需)

IpRule (英语)

名字 描述 价值
价值 与单个 IPv4 地址(例如,123.1.2.3)或 CIDR 格式(例如,允许 123.1.2.3/24)的 IP 范围对应的值。 字符串

NetworkRuleSet 网络规则集

名字 描述 价值
ip规则 用于 IP 防火墙的 IP 限制规则列表。 与规则不匹配的任何 IP 都将被防火墙阻止。 仅当搜索服务的“publicNetworkAccess”已启用时,才应用这些规则。 IpRule[]

SearchServiceProperties

名字 描述 价值
authOptions 定义搜索服务的数据平面 API 如何对请求进行身份验证的选项。 如果“disableLocalAuth”设置为 true,则无法设置此项。 DataPlaneAuthOptions
禁用LocalAuth 如果设置为 true,则不允许调用搜索服务以使用 API 密钥进行身份验证。 如果定义了“dataPlaneAuthOptions”,则无法将其设置为 true。 布尔
encryptionWithCmk 指定有关使用搜索服务中的客户经理密钥加密资源(如索引)的任何策略。 EncryptionWithCmk 的
hostingMode 仅适用于 standard3 SKU。 可以将此属性设置为最多允许 3 个高密度分区,允许最多 1000 个索引,这远远高于任何其他 SKU 允许的最大索引。 对于 standard3 SKU,该值为“default”或“highDensity”。 对于所有其他 SKU,此值必须为“default”。 “default”
“highDensity”
networkRuleSet 网络规则集 确定如何访问搜索服务的网络特定规则。 NetworkRuleSet 网络规则集
partitionCount 搜索服务中的分区数;如果指定,则它可以是 1、2、3、4、6 或 12。 大于 1 的值仅适用于标准 SKU。 对于 hostingMode 设置为“highDensity”的“standard3”服务,允许的值介于 1 到 3 之间。 int

约束:
最小值 = 1
最大值 = 12
publicNetworkAccess 此值可以设置为“已启用”,以避免对现有客户资源和模板进行重大更改。 如果设置为“disabled”,则不允许通过公共接口的流量,专用终结点连接将是独占访问方法。 “disabled”
“enabled”
replicaCount 搜索服务中的副本数。 如果指定,它必须是标准 SKU 的 1 到 12(含 1 到 3)之间的值,对于基本 SKU,该值必须介于 1 和 3 之间。 int

约束:
最小值 = 1
最大值 = 12
语义搜索 设置控制语义搜索可用性的选项。 此配置仅适用于特定位置的某些搜索 SKU。 “disabled”
“free”
“standard”

SKU

名字 描述 价值
名字 搜索服务的 SKU。 有效值包括:“free”:共享服务。 “basic”:最多包含 3 个副本的专用服务。 “standard”:最多包含 12 个分区和 12 个副本的专用服务。 “standard2”:类似于标准,但每个搜索单位的容量更多。 “standard3”:最大标准产品/服务最多包含 12 个分区和 12 个副本(如果同时将 hostingMode 属性设置为“highDensity”,则最多具有 3 个具有更多索引的分区)。 “storage_optimized_l1”:支持每个分区 1TB,最多支持 12 个分区。 “storage_optimized_l2”:支持每个分区 2TB,最多支持 12 个分区。 “basic”
“free”
“standard”
“standard2”
“standard3”
“storage_optimized_l1”
“storage_optimized_l2”

TrackedResourceTags

名字 描述 价值

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 验证模块 可用于部署此资源类型。

模块 描述
搜索服务 搜索服务的 AVM 资源模块

资源格式

若要创建 Microsoft.Search/searchServices 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Search/searchServices@2023-11-01"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      authOptions = {
        aadOrApiKey = {
          aadAuthFailureMode = "string"
        }
        apiKeyOnly = ?
      }
      disableLocalAuth = bool
      encryptionWithCmk = {
        enforcement = "string"
      }
      hostingMode = "string"
      networkRuleSet = {
        ipRules = [
          {
            value = "string"
          }
        ]
      }
      partitionCount = int
      publicNetworkAccess = "string"
      replicaCount = int
      semanticSearch = "string"
    }
    sku = {
      name = "string"
    }
  }
}

属性值

Microsoft.Search/searchServices

名字 描述 价值
标识 资源的标识。 标识
位置 资源所在的地理位置 string (必需)
名字 资源名称 string (必需)
性能 搜索服务的属性。 SearchServiceProperties
SKU 搜索服务的 SKU,用于确定计费费率和容量限制。 创建新搜索服务时,此属性是必需的。 SKU
标签 资源标记 标记名称和值的字典。
类型 资源类型 “Microsoft.Search/searchServices@2023-11-01”

DataPlaneAadOrApiKeyAuthOption

名字 描述 价值
aadAuthFailureMode 描述搜索服务的数据平面 API 针对身份验证失败的请求发送的响应。 “http401WithBearerChallenge”
“http403”

DataPlaneAuthOptions

名字 描述 价值
aadOrApiKey 指示 API 密钥或来自 Microsoft Entra ID 租户的访问令牌可用于身份验证。 DataPlaneAadOrApiKeyAuthOption
apiKeyOnly 指示只能使用 API 密钥进行身份验证。 任何

EncryptionWithCmk 的

名字 描述 价值
执法 描述搜索服务应如何强制实施一个或多个非客户加密资源。 “Disabled”
“Enabled”
“Unspecified”

身份

名字 描述 价值
类型 标识类型。 “None”
“SystemAssigned”(必需)

IpRule (英语)

名字 描述 价值
价值 与单个 IPv4 地址(例如,123.1.2.3)或 CIDR 格式(例如,允许 123.1.2.3/24)的 IP 范围对应的值。 字符串

NetworkRuleSet 网络规则集

名字 描述 价值
ip规则 用于 IP 防火墙的 IP 限制规则列表。 与规则不匹配的任何 IP 都将被防火墙阻止。 仅当搜索服务的“publicNetworkAccess”已启用时,才应用这些规则。 IpRule[]

SearchServiceProperties

名字 描述 价值
authOptions 定义搜索服务的数据平面 API 如何对请求进行身份验证的选项。 如果“disableLocalAuth”设置为 true,则无法设置此项。 DataPlaneAuthOptions
禁用LocalAuth 如果设置为 true,则不允许调用搜索服务以使用 API 密钥进行身份验证。 如果定义了“dataPlaneAuthOptions”,则无法将其设置为 true。 布尔
encryptionWithCmk 指定有关使用搜索服务中的客户经理密钥加密资源(如索引)的任何策略。 EncryptionWithCmk 的
hostingMode 仅适用于 standard3 SKU。 可以将此属性设置为最多允许 3 个高密度分区,允许最多 1000 个索引,这远远高于任何其他 SKU 允许的最大索引。 对于 standard3 SKU,该值为“default”或“highDensity”。 对于所有其他 SKU,此值必须为“default”。 “default”
“highDensity”
networkRuleSet 网络规则集 确定如何访问搜索服务的网络特定规则。 NetworkRuleSet 网络规则集
partitionCount 搜索服务中的分区数;如果指定,则它可以是 1、2、3、4、6 或 12。 大于 1 的值仅适用于标准 SKU。 对于 hostingMode 设置为“highDensity”的“standard3”服务,允许的值介于 1 到 3 之间。 int

约束:
最小值 = 1
最大值 = 12
publicNetworkAccess 此值可以设置为“已启用”,以避免对现有客户资源和模板进行重大更改。 如果设置为“disabled”,则不允许通过公共接口的流量,专用终结点连接将是独占访问方法。 “disabled”
“enabled”
replicaCount 搜索服务中的副本数。 如果指定,它必须是标准 SKU 的 1 到 12(含 1 到 3)之间的值,对于基本 SKU,该值必须介于 1 和 3 之间。 int

约束:
最小值 = 1
最大值 = 12
语义搜索 设置控制语义搜索可用性的选项。 此配置仅适用于特定位置的某些搜索 SKU。 “disabled”
“free”
“standard”

SKU

名字 描述 价值
名字 搜索服务的 SKU。 有效值包括:“free”:共享服务。 “basic”:最多包含 3 个副本的专用服务。 “standard”:最多包含 12 个分区和 12 个副本的专用服务。 “standard2”:类似于标准,但每个搜索单位的容量更多。 “standard3”:最大标准产品/服务最多包含 12 个分区和 12 个副本(如果同时将 hostingMode 属性设置为“highDensity”,则最多具有 3 个具有更多索引的分区)。 “storage_optimized_l1”:支持每个分区 1TB,最多支持 12 个分区。 “storage_optimized_l2”:支持每个分区 2TB,最多支持 12 个分区。 “basic”
“free”
“standard”
“standard2”
“standard3”
“storage_optimized_l1”
“storage_optimized_l2”

TrackedResourceTags

名字 描述 价值