Microsoft. Buscas Serviços de busca

Definição de recurso do Bicep

O tipo de recurso searchServices pode ser implantado com operações de destino:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Exemplos de uso

Exemplos do Bicep

Um exemplo básico de implantação do Serviço de Pesquisa.

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'
  }
}

Módulos verificados do Azure

O módulos verificados do Azure a seguir pode ser usado para implantar esse tipo de recurso.

Módulo Descrição
do Serviço de Pesquisa Módulo de recurso da AVM para o Serviço de Pesquisa

Exemplos de Início Rápido do Azure

Os modelos de Início Rápido do Azure a seguir contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Descrição
Rede do Fábrica de IA do Azure restrita Este conjunto de modelos demonstra como configurar o Fábrica de IA do Azure com link privado e saída desabilitados, usando chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA.
serviço do Azure Cognitive Search Este modelo cria um serviço do Azure Cognitive Search
agente protegido de rede com de identidade gerenciada pelo usuário Esse conjunto de modelos demonstra como configurar o Serviço de Agente de IA do Azure com isolamento de rede virtual usando a autenticação de Identidade Gerenciada do Usuário para a conexão serviço de IA/AOAI e links de rede privada para conectar o agente aos seus dados seguros.
de instalação do agente padrão Esse conjunto de modelos demonstra como configurar o Serviço de Agente de IA do Azure com a configuração padrão, ou seja, com a autenticação de identidade gerenciada para conexões de projeto/hub e acesso público à Internet habilitado. Os agentes usam recursos de pesquisa e armazenamento de locatário único de propriedade do cliente. Com essa configuração, você tem controle total e visibilidade sobre esses recursos, mas incorrerá em custos com base em seu uso.

Formato de recurso

Para criar um recurso Microsoft.Search/searchServices, adicione o Bicep a seguir ao seu modelo.

resource symbolicname 'Microsoft.Search/searchServices@2026-09-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    authOptions: {
      aadOrApiKey: {
        aadAuthFailureMode: 'string'
      }
      apiKeyOnly: any(...)
    }
    autoGeneratedDomainNameLabelScope: 'string'
    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'
  }
}

Objetos DataIdentity

Defina a propriedade @odata.type para especificar o tipo de objeto.

Para #Microsoft.Azure.Search.DataNoneIdentity, use:

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

Para #Microsoft.Azure.Search.DataUserAssignedIdentity, use:

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

Valores de propriedade

Microsoft.Search/searchServices

Nome Descrição Valor
identidade A identidade do recurso. Identidade
local A localização geográfica onde o recurso reside cadeia de caracteres (obrigatório)
nome O nome do recurso string

Restrições:
Padrão = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obrigatório)
Propriedades Propriedades do serviço de pesquisa. Propriedades do serviço de pesquisa
Sku A SKU do serviço de pesquisa, que determina o tipo de preço e os limites de capacidade. Essa propriedade é necessária ao criar um novo serviço de pesquisa. de SKU
Tags Marcas de recurso Dicionário de nomes e valores de marca. Consulte Marcas em modelos

AzureActiveDirectoryApplicationCredentials

Nome Descrição Valor
ID do aplicativo O ID do aplicativo (cliente) de um registro de aplicativo no locatário. cadeia
segredo do aplicativo Um segredo de cliente AAD gerado para o Registro de Aplicativos usado para autenticação com o Azure Key Vault. string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.

Identidade de dados

Nome Descrição Valor
@odata.type Defina como '#Microsoft.Azure.Search.DataNoneIdentity' para o tipo DataNoneIdentity. Defina como '#Microsoft.Azure.Search.DataUserAssignedIdentity' para o tipo DataUserAssignedIdentity. '#Microsoft.Azure.Search.DataNoneIdentity'
'#Microsoft.Azure.Search.DataUserAssignedIdentity' (obrigatório)

DataNoneIdentity

Nome Descrição Valor
@odata.type Um fragmento de URI especificando o tipo de identidade. '#Microsoft.Azure.Search.DataNoneIdentity' (obrigatório)

DataPlaneAadOrApiKeyAuthOption

Nome Descrição Valor
aadAuthFailureMode Descreve qual resposta a API do plano de dados de um serviço de pesquisa enviaria para solicitações que falharam na autenticação. 'http401WithBearerChallenge'
'http403'

Opções de Autenticação de Plano de Dados

Nome Descrição Valor
aadOrApiKey Indica que a chave de API ou um token de acesso de um locatário da ID do Microsoft Entra pode ser usado para autenticação. DataPlaneAadOrApiKeyAuthOption
apiKeyOnly Indica que somente a chave de API pode ser usada para autenticação. qualquer

DataUserAssignedIdentity

Nome Descrição Valor
@odata.type Um fragmento de URI especificando o tipo de identidade. '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obrigatório)
federatedIdentityClientId Opcional para suporte a CMK Multi-tenant User-Assigned Managed Identity: O id do cliente (como UUID) do Registro de Aplicativos multi-tenant que foi configurado para federar com o userAssignedIdentity. cadeia
userAssignedIdentity A ID de recurso do Azure totalmente qualificada de uma identidade gerenciada atribuída pelo usuário, normalmente no formato "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" que deveria ter sido atribuída ao serviço de pesquisa. cadeia de caracteres (obrigatório)

EncryptionWithCmk

Nome Descrição Valor
execução Descreve como um serviço de pesquisa deve impor a conformidade se encontrar objetos que não são criptografados com a chave gerenciada pelo cliente. 'Desabilitado'
'Habilitado'
'Não especificado'
serviceLevelEncryptionKey Descreve a configuração da chave gerenciada pelo cliente para criptografar o serviço de busca. SearchResourceEncryptionKey

Identidade

Nome Descrição Valor
tipo O tipo de identidade usado para o recurso. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada pelo sistema e um conjunto de identidades atribuídas pelo usuário. O tipo 'None' removerá todas as identidades do serviço. 'Nenhum'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
Identidades Atribuídas pelo Usuário A lista de identidades de usuário associadas ao recurso. As referências de chave do dicionário de identidade do usuário serão IDs de recurso do ARM no formulário: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. IdentidadeUserAssignedIdentities

IdentityUserAssignedIdentities

Nome Descrição Valor

Regra de IP

Nome Descrição Valor
valor Valor correspondente a um único endereço IPv4 (por exemplo, 123.1.2.3) ou um intervalo de IP no formato CIDR (por exemplo, 123.1.2.3/24) a ser permitido. cadeia

Conjunto de regras de rede

Nome Descrição Valor
contornar Possíveis origens do tráfego de entrada que podem ignorar as regras definidas na seção 'ipRules'. 'AzurePortal'
'AzureServices'
'Nenhum'
ipRules Uma lista de regras de restrição de IP que define as redes de entrada com a permissão de acesso ao ponto de extremidade do serviço de pesquisa. Enquanto isso, todas as outras redes DE IP públicas são bloqueadas pelo firewall. Essas regras de restrição são aplicadas somente quando o 'publicNetworkAccess' do serviço de pesquisa está 'habilitado'; caso contrário, o tráfego pela interface pública não é permitido mesmo com nenhuma regra de IP pública, e as conexões de ponto de extremidade privado seriam o método de acesso exclusivo. Regra de Ip

SearchResourceEncryptionKey

Nome Descrição Valor
accessCredentials Credenciais opcionais do Azure Active Directory usadas para acessar o Azure Key Vault. Não é necessário se estiver usando a identidade gerenciada. AzureActiveDirectoryApplicationCredentials
identidade Uma identidade gerenciada explícita a ser usada para essa chave de criptografia. Se não for especificado e a propriedade de credenciais de acesso for nula, a identidade gerenciada atribuída pelo sistema será usada. Ao atualizar para o recurso, se a identidade explícita não for especificada, ela permanecerá inalterada. Se "nenhum" for especificado, o valor dessa propriedade será limpo. Identidade de dados
keyVaultKeyName O nome da chave do Azure Key Vault a ser usada para criptografar seus dados em repouso. cadeia
keyVaultKeyVersion A versão da chave do Azure Key Vault a ser usada para criptografar seus dados em repouso. cadeia
keyVaultUri O URI do Azure Key Vault, também conhecido como nome DNS, que contém a chave a ser usada para criptografar seus dados em repouso. Um URI de exemplo pode ser https://my-keyvault-name.vault.azure.net. cadeia

Propriedades do serviço de pesquisa

Nome Descrição Valor
Opções de autenticação Define as opções de como a API do plano de dados de um serviço de pesquisa autentica solicitações. Isso não poderá ser definido se 'disableLocalAuth' estiver definido como true. DataPlaneAuthOptions
autoGeneratedDomainNameLabelScope Define o nível de reutilização do rótulo do nome de domínio gerado automaticamente para o serviço de busca (por exemplo, myservice-uniqueId.search.windows.net<>). Se não especificado, nenhum rótulo de domínio gerado automaticamente é criado para o serviço de busca. 'Sem Reutilização'
'SubscriptionReuse'
'Reutilização de inquilino'
Tipo de computação Configure essa propriedade para dar suporte ao serviço de pesquisa usando a Computação Padrão ou a Computação Confidencial do Azure. 'Confidencial'
'Padrão'
dataExfiltrationProtections Uma lista de cenários de exfiltração de dados explicitamente não permitidos para o serviço de pesquisa. Atualmente, o único valor com suporte é "Todos" para desabilitar todos os cenários possíveis de exportação de dados com controles mais refinados planejados para o futuro. Matriz de cadeia de caracteres que contém qualquer um dos:
'BlockAll'
disableLocalAuth Quando definido como true, as chamadas para o serviço de pesquisa não terão permissão para utilizar chaves de API para autenticação. Isso não poderá ser definido como true se 'dataPlaneAuthOptions' estiver definido. Bool
encryptionWithCmk Especifica qualquer política relativa à criptografia de recursos (como índices) usando chaves do gerenciador de clientes em um serviço de pesquisa. EncryptionWithCmk
ponto de extremidade O ponto de extremidade do serviço Pesquisa de IA do Azure . cadeia
hostingMode Aplicável somente para o SKU standard3. Você pode definir essa propriedade para habilitar até 3 partições de alta densidade que permitem até 1000 índices, o que é muito maior do que os índices máximos permitidos para qualquer outra SKU. Para o SKU standard3, o valor é 'Default' ou 'HighDensity'. Para todos os outros SKUs, esse valor deve ser 'Padrão'. 'Padrão'
'Alta densidade'
conhecimentoRecuperação Especifica o plano de faturamento para recuperação de agentes no serviço Pesquisa de IA do Azure . Essa configuração está disponível apenas para determinados níveis de preço em determinadas regiões. 'gratuito'
'padrão'
networkRuleSet Regras específicas de rede que determinam como o serviço Pesquisa de IA do Azure  pode ser atingido. NetworkRuleSet
partitionCount O número de partições no serviço de busca dedicado; Se especificado, pode ser 1, 2, 3, 4, 6 ou 12. Valores maiores que 1 são válidos apenas para SKUs padrão. Para serviços 'standard3' com hostingMode definido como 'highDensity', os valores permitidos estão entre 1 e 3. int

Restrições:
Valor mínimo = 1
Valor máximo = 12
públicoAcessoRedeAcesso Esse valor pode ser definido como 'Habilitado' para evitar alterações significativas nos recursos e modelos existentes do cliente. Se definido como 'Desativado', o tráfego pela interface pública não é permitido e as conexões de ponto de extremidade privado seriam o método de acesso exclusivo. 'Desabilitado'
'Habilitado'
'SecuredByPerimeter'
contagem de réplicas O número de réplicas no serviço de busca dedicado. Se especificado, ele deve ser um valor entre 1 e 12, inclusive para SKUs padrão ou entre 1 e 3, inclusive para SKU básica. int

Restrições:
Valor mínimo = 1
Valor máximo = 12
semânticaPesquisa Especifica a disponibilidade e o plano de cobrança para busca semântica no serviço Pesquisa de IA do Azure . Essa configuração está disponível apenas para determinados níveis de preço em determinadas regiões. 'desabilitado'
'gratuito'
'padrão'
atualização disponível Indica se o serviço de pesquisa tem uma atualização disponível. 'disponível'
'não disponível'

Sku

Nome Descrição Valor
nome A SKU do serviço de pesquisa. Os valores válidos incluem: 'gratuito': serviço compartilhado. 'basic': serviço dedicado com até 3 réplicas. 'standard': serviço dedicado com até 12 partições e 12 réplicas. 'standard2': semelhante ao padrão, mas com mais capacidade por unidade de pesquisa. 'standard3': a maior oferta Standard com até 12 partições e 12 réplicas (ou até 3 partições com mais índices se você também definir a propriedade hostingMode como 'highDensity'). 'storage_optimized_l1': dá suporte a 1 TB por partição, até 12 partições. 'storage_optimized_l2': Suporta 2TB por partição, até 12 partições. 'Serverless': Nível serverless com capacidade de auto-escalonamento. 'básico'
'gratuito'
'Sem servidor'
'padrão'
'padrão2'
'padrão 3'
'storage_optimized_l1'
'storage_optimized_l2'

TrackedResourceTags

Nome Descrição Valor

UserAssignedIdentity

Nome Descrição Valor

Definição de recurso de modelo do ARM

O tipo de recurso searchServices pode ser implantado com operações de destino:

Exemplos de uso

Modelos de Início Rápido do Azure

Os modelos de Início Rápido do Azure a seguir implantar esse tipo de recurso.

Modelo Descrição
Rede do Fábrica de IA do Azure restrita

Implantar no Azure
Este conjunto de modelos demonstra como configurar o Fábrica de IA do Azure com link privado e saída desabilitados, usando chaves gerenciadas pela Microsoft para criptografia e configuração de identidade gerenciada pela Microsoft para o recurso de IA.
serviço do Azure Cognitive Search

Implantar no Azure
Este modelo cria um serviço do Azure Cognitive Search
serviço do Azure Cognitive Search com de ponto de extremidade privado

Implantar no Azure
Esse modelo cria um serviço do Azure Cognitive Search com um ponto de extremidade privado.
agente protegido de rede com de identidade gerenciada pelo usuário

Implantar no Azure
Esse conjunto de modelos demonstra como configurar o Serviço de Agente de IA do Azure com isolamento de rede virtual usando a autenticação de Identidade Gerenciada do Usuário para a conexão serviço de IA/AOAI e links de rede privada para conectar o agente aos seus dados seguros.
de instalação do agente padrão

Implantar no Azure
Esse conjunto de modelos demonstra como configurar o Serviço de Agente de IA do Azure com a configuração padrão, ou seja, com a autenticação de identidade gerenciada para conexões de projeto/hub e acesso público à Internet habilitado. Os agentes usam recursos de pesquisa e armazenamento de locatário único de propriedade do cliente. Com essa configuração, você tem controle total e visibilidade sobre esses recursos, mas incorrerá em custos com base em seu uso.
Aplicativo Web com um Banco de Dados SQL, Azure Cosmos DB, Azure Search

Implantar no Azure
Esse modelo provisiona um Aplicativo Web, um Banco de Dados SQL, o Azure Cosmos DB, o Azure Search e o Application Insights.

Formato de recurso

Para criar um recurso Microsoft.Search/searchServices, adicione o JSON a seguir ao seu modelo.

{
  "type": "Microsoft.Search/searchServices",
  "apiVersion": "2026-09-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "authOptions": {
      "aadOrApiKey": {
        "aadAuthFailureMode": "string"
      },
      "apiKeyOnly": {}
    },
    "autoGeneratedDomainNameLabelScope": "string",
    "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"
  }
}

Objetos DataIdentity

Defina a propriedade @odata.type para especificar o tipo de objeto.

Para #Microsoft.Azure.Search.DataNoneIdentity, use:

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

Para #Microsoft.Azure.Search.DataUserAssignedIdentity, use:

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

Valores de propriedade

Microsoft.Search/searchServices

Nome Descrição Valor
apiVersion A versão da API 'prévia 2026-09-01-preview'
identidade A identidade do recurso. Identidade
local A localização geográfica onde o recurso reside cadeia de caracteres (obrigatório)
nome O nome do recurso string

Restrições:
Padrão = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obrigatório)
Propriedades Propriedades do serviço de pesquisa. Propriedades do serviço de pesquisa
Sku A SKU do serviço de pesquisa, que determina o tipo de preço e os limites de capacidade. Essa propriedade é necessária ao criar um novo serviço de pesquisa. de SKU
Tags Marcas de recurso Dicionário de nomes e valores de marca. Consulte Marcas em modelos
tipo O tipo de recurso 'Microsoft.Search/searchServices'

AzureActiveDirectoryApplicationCredentials

Nome Descrição Valor
ID do aplicativo O ID do aplicativo (cliente) de um registro de aplicativo no locatário. cadeia
segredo do aplicativo Um segredo de cliente AAD gerado para o Registro de Aplicativos usado para autenticação com o Azure Key Vault. string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.

Identidade de dados

Nome Descrição Valor
@odata.type Defina como '#Microsoft.Azure.Search.DataNoneIdentity' para o tipo DataNoneIdentity. Defina como '#Microsoft.Azure.Search.DataUserAssignedIdentity' para o tipo DataUserAssignedIdentity. '#Microsoft.Azure.Search.DataNoneIdentity'
'#Microsoft.Azure.Search.DataUserAssignedIdentity' (obrigatório)

DataNoneIdentity

Nome Descrição Valor
@odata.type Um fragmento de URI especificando o tipo de identidade. '#Microsoft.Azure.Search.DataNoneIdentity' (obrigatório)

DataPlaneAadOrApiKeyAuthOption

Nome Descrição Valor
aadAuthFailureMode Descreve qual resposta a API do plano de dados de um serviço de pesquisa enviaria para solicitações que falharam na autenticação. 'http401WithBearerChallenge'
'http403'

Opções de Autenticação de Plano de Dados

Nome Descrição Valor
aadOrApiKey Indica que a chave de API ou um token de acesso de um locatário da ID do Microsoft Entra pode ser usado para autenticação. DataPlaneAadOrApiKeyAuthOption
apiKeyOnly Indica que somente a chave de API pode ser usada para autenticação. qualquer

DataUserAssignedIdentity

Nome Descrição Valor
@odata.type Um fragmento de URI especificando o tipo de identidade. '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obrigatório)
federatedIdentityClientId Opcional para suporte a CMK Multi-tenant User-Assigned Managed Identity: O id do cliente (como UUID) do Registro de Aplicativos multi-tenant que foi configurado para federar com o userAssignedIdentity. cadeia
userAssignedIdentity A ID de recurso do Azure totalmente qualificada de uma identidade gerenciada atribuída pelo usuário, normalmente no formato "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" que deveria ter sido atribuída ao serviço de pesquisa. cadeia de caracteres (obrigatório)

EncryptionWithCmk

Nome Descrição Valor
execução Descreve como um serviço de pesquisa deve impor a conformidade se encontrar objetos que não são criptografados com a chave gerenciada pelo cliente. 'Desabilitado'
'Habilitado'
'Não especificado'
serviceLevelEncryptionKey Descreve a configuração da chave gerenciada pelo cliente para criptografar o serviço de busca. SearchResourceEncryptionKey

Identidade

Nome Descrição Valor
tipo O tipo de identidade usado para o recurso. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada pelo sistema e um conjunto de identidades atribuídas pelo usuário. O tipo 'None' removerá todas as identidades do serviço. 'Nenhum'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
Identidades Atribuídas pelo Usuário A lista de identidades de usuário associadas ao recurso. As referências de chave do dicionário de identidade do usuário serão IDs de recurso do ARM no formulário: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. IdentidadeUserAssignedIdentities

IdentityUserAssignedIdentities

Nome Descrição Valor

Regra de IP

Nome Descrição Valor
valor Valor correspondente a um único endereço IPv4 (por exemplo, 123.1.2.3) ou um intervalo de IP no formato CIDR (por exemplo, 123.1.2.3/24) a ser permitido. cadeia

Conjunto de regras de rede

Nome Descrição Valor
contornar Possíveis origens do tráfego de entrada que podem ignorar as regras definidas na seção 'ipRules'. 'AzurePortal'
'AzureServices'
'Nenhum'
ipRules Uma lista de regras de restrição de IP que define as redes de entrada com a permissão de acesso ao ponto de extremidade do serviço de pesquisa. Enquanto isso, todas as outras redes DE IP públicas são bloqueadas pelo firewall. Essas regras de restrição são aplicadas somente quando o 'publicNetworkAccess' do serviço de pesquisa está 'habilitado'; caso contrário, o tráfego pela interface pública não é permitido mesmo com nenhuma regra de IP pública, e as conexões de ponto de extremidade privado seriam o método de acesso exclusivo. Regra de Ip

SearchResourceEncryptionKey

Nome Descrição Valor
accessCredentials Credenciais opcionais do Azure Active Directory usadas para acessar o Azure Key Vault. Não é necessário se estiver usando a identidade gerenciada. AzureActiveDirectoryApplicationCredentials
identidade Uma identidade gerenciada explícita a ser usada para essa chave de criptografia. Se não for especificado e a propriedade de credenciais de acesso for nula, a identidade gerenciada atribuída pelo sistema será usada. Ao atualizar para o recurso, se a identidade explícita não for especificada, ela permanecerá inalterada. Se "nenhum" for especificado, o valor dessa propriedade será limpo. Identidade de dados
keyVaultKeyName O nome da chave do Azure Key Vault a ser usada para criptografar seus dados em repouso. cadeia
keyVaultKeyVersion A versão da chave do Azure Key Vault a ser usada para criptografar seus dados em repouso. cadeia
keyVaultUri O URI do Azure Key Vault, também conhecido como nome DNS, que contém a chave a ser usada para criptografar seus dados em repouso. Um URI de exemplo pode ser https://my-keyvault-name.vault.azure.net. cadeia

Propriedades do serviço de pesquisa

Nome Descrição Valor
Opções de autenticação Define as opções de como a API do plano de dados de um serviço de pesquisa autentica solicitações. Isso não poderá ser definido se 'disableLocalAuth' estiver definido como true. DataPlaneAuthOptions
autoGeneratedDomainNameLabelScope Define o nível de reutilização do rótulo do nome de domínio gerado automaticamente para o serviço de busca (por exemplo, myservice-uniqueId.search.windows.net<>). Se não especificado, nenhum rótulo de domínio gerado automaticamente é criado para o serviço de busca. 'Sem Reutilização'
'SubscriptionReuse'
'Reutilização de inquilino'
Tipo de computação Configure essa propriedade para dar suporte ao serviço de pesquisa usando a Computação Padrão ou a Computação Confidencial do Azure. 'Confidencial'
'Padrão'
dataExfiltrationProtections Uma lista de cenários de exfiltração de dados explicitamente não permitidos para o serviço de pesquisa. Atualmente, o único valor com suporte é "Todos" para desabilitar todos os cenários possíveis de exportação de dados com controles mais refinados planejados para o futuro. Matriz de cadeia de caracteres que contém qualquer um dos:
'BlockAll'
disableLocalAuth Quando definido como true, as chamadas para o serviço de pesquisa não terão permissão para utilizar chaves de API para autenticação. Isso não poderá ser definido como true se 'dataPlaneAuthOptions' estiver definido. Bool
encryptionWithCmk Especifica qualquer política relativa à criptografia de recursos (como índices) usando chaves do gerenciador de clientes em um serviço de pesquisa. EncryptionWithCmk
ponto de extremidade O ponto de extremidade do serviço Pesquisa de IA do Azure . cadeia
hostingMode Aplicável somente para o SKU standard3. Você pode definir essa propriedade para habilitar até 3 partições de alta densidade que permitem até 1000 índices, o que é muito maior do que os índices máximos permitidos para qualquer outra SKU. Para o SKU standard3, o valor é 'Default' ou 'HighDensity'. Para todos os outros SKUs, esse valor deve ser 'Padrão'. 'Padrão'
'Alta densidade'
conhecimentoRecuperação Especifica o plano de faturamento para recuperação de agentes no serviço Pesquisa de IA do Azure . Essa configuração está disponível apenas para determinados níveis de preço em determinadas regiões. 'gratuito'
'padrão'
networkRuleSet Regras específicas de rede que determinam como o serviço Pesquisa de IA do Azure  pode ser atingido. NetworkRuleSet
partitionCount O número de partições no serviço de busca dedicado; Se especificado, pode ser 1, 2, 3, 4, 6 ou 12. Valores maiores que 1 são válidos apenas para SKUs padrão. Para serviços 'standard3' com hostingMode definido como 'highDensity', os valores permitidos estão entre 1 e 3. int

Restrições:
Valor mínimo = 1
Valor máximo = 12
públicoAcessoRedeAcesso Esse valor pode ser definido como 'Habilitado' para evitar alterações significativas nos recursos e modelos existentes do cliente. Se definido como 'Desativado', o tráfego pela interface pública não é permitido e as conexões de ponto de extremidade privado seriam o método de acesso exclusivo. 'Desabilitado'
'Habilitado'
'SecuredByPerimeter'
contagem de réplicas O número de réplicas no serviço de busca dedicado. Se especificado, ele deve ser um valor entre 1 e 12, inclusive para SKUs padrão ou entre 1 e 3, inclusive para SKU básica. int

Restrições:
Valor mínimo = 1
Valor máximo = 12
semânticaPesquisa Especifica a disponibilidade e o plano de cobrança para busca semântica no serviço Pesquisa de IA do Azure . Essa configuração está disponível apenas para determinados níveis de preço em determinadas regiões. 'desabilitado'
'gratuito'
'padrão'
atualização disponível Indica se o serviço de pesquisa tem uma atualização disponível. 'disponível'
'não disponível'

Sku

Nome Descrição Valor
nome A SKU do serviço de pesquisa. Os valores válidos incluem: 'gratuito': serviço compartilhado. 'basic': serviço dedicado com até 3 réplicas. 'standard': serviço dedicado com até 12 partições e 12 réplicas. 'standard2': semelhante ao padrão, mas com mais capacidade por unidade de pesquisa. 'standard3': a maior oferta Standard com até 12 partições e 12 réplicas (ou até 3 partições com mais índices se você também definir a propriedade hostingMode como 'highDensity'). 'storage_optimized_l1': dá suporte a 1 TB por partição, até 12 partições. 'storage_optimized_l2': Suporta 2TB por partição, até 12 partições. 'Serverless': Nível serverless com capacidade de auto-escalonamento. 'básico'
'gratuito'
'Sem servidor'
'padrão'
'padrão2'
'padrão 3'
'storage_optimized_l1'
'storage_optimized_l2'

TrackedResourceTags

Nome Descrição Valor

UserAssignedIdentity

Nome Descrição Valor

Definição de recurso do Terraform (provedor de AzAPI)

O tipo de recurso searchServices pode ser implantado com operações de destino:

Exemplos de uso

Exemplos do Terraform

Um exemplo básico de implantação do Serviço de Pesquisa.

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    = ["*"]
}

Módulos verificados do Azure

O módulos verificados do Azure a seguir pode ser usado para implantar esse tipo de recurso.

Módulo Descrição
do Serviço de Pesquisa Módulo de recurso da AVM para o Serviço de Pesquisa

Formato de recurso

Para criar um recurso Microsoft.Search/searchServices, adicione o Terraform a seguir ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Search/searchServices@2026-09-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 = ?
      }
      autoGeneratedDomainNameLabelScope = "string"
      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"
    }
  }
}

Objetos DataIdentity

Defina a propriedade @odata.type para especificar o tipo de objeto.

Para #Microsoft.Azure.Search.DataNoneIdentity, use:

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

Para #Microsoft.Azure.Search.DataUserAssignedIdentity, use:

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

Valores de propriedade

Microsoft.Search/searchServices

Nome Descrição Valor
identidade A identidade do recurso. Identidade
local A localização geográfica onde o recurso reside cadeia de caracteres (obrigatório)
nome O nome do recurso string

Restrições:
Padrão = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obrigatório)
Propriedades Propriedades do serviço de pesquisa. Propriedades do serviço de pesquisa
Sku A SKU do serviço de pesquisa, que determina o tipo de preço e os limites de capacidade. Essa propriedade é necessária ao criar um novo serviço de pesquisa. de SKU
Tags Marcas de recurso Dicionário de nomes e valores de marca.
tipo O tipo de recurso "Microsoft. Busca/searchServices@2026-09-01-prévia"

AzureActiveDirectoryApplicationCredentials

Nome Descrição Valor
ID do aplicativo O ID do aplicativo (cliente) de um registro de aplicativo no locatário. cadeia
segredo do aplicativo Um segredo de cliente AAD gerado para o Registro de Aplicativos usado para autenticação com o Azure Key Vault. string

Restrições:
Valor confidencial. Passe como um parâmetro seguro.

Identidade de dados

Nome Descrição Valor
@odata.type Defina como '#Microsoft.Azure.Search.DataNoneIdentity' para o tipo DataNoneIdentity. Defina como '#Microsoft.Azure.Search.DataUserAssignedIdentity' para o tipo DataUserAssignedIdentity. '#Microsoft.Azure.Search.DataNoneIdentity'
'#Microsoft.Azure.Search.DataUserAssignedIdentity' (obrigatório)

DataNoneIdentity

Nome Descrição Valor
@odata.type Um fragmento de URI especificando o tipo de identidade. '#Microsoft.Azure.Search.DataNoneIdentity' (obrigatório)

DataPlaneAadOrApiKeyAuthOption

Nome Descrição Valor
aadAuthFailureMode Descreve qual resposta a API do plano de dados de um serviço de pesquisa enviaria para solicitações que falharam na autenticação. 'http401WithBearerChallenge'
'http403'

Opções de Autenticação de Plano de Dados

Nome Descrição Valor
aadOrApiKey Indica que a chave de API ou um token de acesso de um locatário da ID do Microsoft Entra pode ser usado para autenticação. DataPlaneAadOrApiKeyAuthOption
apiKeyOnly Indica que somente a chave de API pode ser usada para autenticação. qualquer

DataUserAssignedIdentity

Nome Descrição Valor
@odata.type Um fragmento de URI especificando o tipo de identidade. '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obrigatório)
federatedIdentityClientId Opcional para suporte a CMK Multi-tenant User-Assigned Managed Identity: O id do cliente (como UUID) do Registro de Aplicativos multi-tenant que foi configurado para federar com o userAssignedIdentity. cadeia
userAssignedIdentity A ID de recurso do Azure totalmente qualificada de uma identidade gerenciada atribuída pelo usuário, normalmente no formato "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" que deveria ter sido atribuída ao serviço de pesquisa. cadeia de caracteres (obrigatório)

EncryptionWithCmk

Nome Descrição Valor
execução Descreve como um serviço de pesquisa deve impor a conformidade se encontrar objetos que não são criptografados com a chave gerenciada pelo cliente. 'Desabilitado'
'Habilitado'
'Não especificado'
serviceLevelEncryptionKey Descreve a configuração da chave gerenciada pelo cliente para criptografar o serviço de busca. SearchResourceEncryptionKey

Identidade

Nome Descrição Valor
tipo O tipo de identidade usado para o recurso. O tipo 'SystemAssigned, UserAssigned' inclui uma identidade criada pelo sistema e um conjunto de identidades atribuídas pelo usuário. O tipo 'None' removerá todas as identidades do serviço. 'Nenhum'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned' (obrigatório)
Identidades Atribuídas pelo Usuário A lista de identidades de usuário associadas ao recurso. As referências de chave do dicionário de identidade do usuário serão IDs de recurso do ARM no formulário: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. IdentidadeUserAssignedIdentities

IdentityUserAssignedIdentities

Nome Descrição Valor

Regra de IP

Nome Descrição Valor
valor Valor correspondente a um único endereço IPv4 (por exemplo, 123.1.2.3) ou um intervalo de IP no formato CIDR (por exemplo, 123.1.2.3/24) a ser permitido. cadeia

Conjunto de regras de rede

Nome Descrição Valor
contornar Possíveis origens do tráfego de entrada que podem ignorar as regras definidas na seção 'ipRules'. 'AzurePortal'
'AzureServices'
'Nenhum'
ipRules Uma lista de regras de restrição de IP que define as redes de entrada com a permissão de acesso ao ponto de extremidade do serviço de pesquisa. Enquanto isso, todas as outras redes DE IP públicas são bloqueadas pelo firewall. Essas regras de restrição são aplicadas somente quando o 'publicNetworkAccess' do serviço de pesquisa está 'habilitado'; caso contrário, o tráfego pela interface pública não é permitido mesmo com nenhuma regra de IP pública, e as conexões de ponto de extremidade privado seriam o método de acesso exclusivo. Regra de Ip

SearchResourceEncryptionKey

Nome Descrição Valor
accessCredentials Credenciais opcionais do Azure Active Directory usadas para acessar o Azure Key Vault. Não é necessário se estiver usando a identidade gerenciada. AzureActiveDirectoryApplicationCredentials
identidade Uma identidade gerenciada explícita a ser usada para essa chave de criptografia. Se não for especificado e a propriedade de credenciais de acesso for nula, a identidade gerenciada atribuída pelo sistema será usada. Ao atualizar para o recurso, se a identidade explícita não for especificada, ela permanecerá inalterada. Se "nenhum" for especificado, o valor dessa propriedade será limpo. Identidade de dados
keyVaultKeyName O nome da chave do Azure Key Vault a ser usada para criptografar seus dados em repouso. cadeia
keyVaultKeyVersion A versão da chave do Azure Key Vault a ser usada para criptografar seus dados em repouso. cadeia
keyVaultUri O URI do Azure Key Vault, também conhecido como nome DNS, que contém a chave a ser usada para criptografar seus dados em repouso. Um URI de exemplo pode ser https://my-keyvault-name.vault.azure.net. cadeia

Propriedades do serviço de pesquisa

Nome Descrição Valor
Opções de autenticação Define as opções de como a API do plano de dados de um serviço de pesquisa autentica solicitações. Isso não poderá ser definido se 'disableLocalAuth' estiver definido como true. DataPlaneAuthOptions
autoGeneratedDomainNameLabelScope Define o nível de reutilização do rótulo do nome de domínio gerado automaticamente para o serviço de busca (por exemplo, myservice-uniqueId.search.windows.net<>). Se não especificado, nenhum rótulo de domínio gerado automaticamente é criado para o serviço de busca. 'Sem Reutilização'
'SubscriptionReuse'
'Reutilização de inquilino'
Tipo de computação Configure essa propriedade para dar suporte ao serviço de pesquisa usando a Computação Padrão ou a Computação Confidencial do Azure. 'Confidencial'
'Padrão'
dataExfiltrationProtections Uma lista de cenários de exfiltração de dados explicitamente não permitidos para o serviço de pesquisa. Atualmente, o único valor com suporte é "Todos" para desabilitar todos os cenários possíveis de exportação de dados com controles mais refinados planejados para o futuro. Matriz de cadeia de caracteres que contém qualquer um dos:
'BlockAll'
disableLocalAuth Quando definido como true, as chamadas para o serviço de pesquisa não terão permissão para utilizar chaves de API para autenticação. Isso não poderá ser definido como true se 'dataPlaneAuthOptions' estiver definido. Bool
encryptionWithCmk Especifica qualquer política relativa à criptografia de recursos (como índices) usando chaves do gerenciador de clientes em um serviço de pesquisa. EncryptionWithCmk
ponto de extremidade O ponto de extremidade do serviço Pesquisa de IA do Azure . cadeia
hostingMode Aplicável somente para o SKU standard3. Você pode definir essa propriedade para habilitar até 3 partições de alta densidade que permitem até 1000 índices, o que é muito maior do que os índices máximos permitidos para qualquer outra SKU. Para o SKU standard3, o valor é 'Default' ou 'HighDensity'. Para todos os outros SKUs, esse valor deve ser 'Padrão'. 'Padrão'
'Alta densidade'
conhecimentoRecuperação Especifica o plano de faturamento para recuperação de agentes no serviço Pesquisa de IA do Azure . Essa configuração está disponível apenas para determinados níveis de preço em determinadas regiões. 'gratuito'
'padrão'
networkRuleSet Regras específicas de rede que determinam como o serviço Pesquisa de IA do Azure  pode ser atingido. NetworkRuleSet
partitionCount O número de partições no serviço de busca dedicado; Se especificado, pode ser 1, 2, 3, 4, 6 ou 12. Valores maiores que 1 são válidos apenas para SKUs padrão. Para serviços 'standard3' com hostingMode definido como 'highDensity', os valores permitidos estão entre 1 e 3. int

Restrições:
Valor mínimo = 1
Valor máximo = 12
públicoAcessoRedeAcesso Esse valor pode ser definido como 'Habilitado' para evitar alterações significativas nos recursos e modelos existentes do cliente. Se definido como 'Desativado', o tráfego pela interface pública não é permitido e as conexões de ponto de extremidade privado seriam o método de acesso exclusivo. 'Desabilitado'
'Habilitado'
'SecuredByPerimeter'
contagem de réplicas O número de réplicas no serviço de busca dedicado. Se especificado, ele deve ser um valor entre 1 e 12, inclusive para SKUs padrão ou entre 1 e 3, inclusive para SKU básica. int

Restrições:
Valor mínimo = 1
Valor máximo = 12
semânticaPesquisa Especifica a disponibilidade e o plano de cobrança para busca semântica no serviço Pesquisa de IA do Azure . Essa configuração está disponível apenas para determinados níveis de preço em determinadas regiões. 'desabilitado'
'gratuito'
'padrão'
atualização disponível Indica se o serviço de pesquisa tem uma atualização disponível. 'disponível'
'não disponível'

Sku

Nome Descrição Valor
nome A SKU do serviço de pesquisa. Os valores válidos incluem: 'gratuito': serviço compartilhado. 'basic': serviço dedicado com até 3 réplicas. 'standard': serviço dedicado com até 12 partições e 12 réplicas. 'standard2': semelhante ao padrão, mas com mais capacidade por unidade de pesquisa. 'standard3': a maior oferta Standard com até 12 partições e 12 réplicas (ou até 3 partições com mais índices se você também definir a propriedade hostingMode como 'highDensity'). 'storage_optimized_l1': dá suporte a 1 TB por partição, até 12 partições. 'storage_optimized_l2': Suporta 2TB por partição, até 12 partições. 'Serverless': Nível serverless com capacidade de auto-escalonamento. 'básico'
'gratuito'
'Sem servidor'
'padrão'
'padrão2'
'padrão 3'
'storage_optimized_l1'
'storage_optimized_l2'

TrackedResourceTags

Nome Descrição Valor

UserAssignedIdentity

Nome Descrição Valor