Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Definizione di risorsa Bicep
Il tipo di risorsa searchServices può essere distribuito con operazioni destinate a:
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Esempi di utilizzo
Esempi bicep
Esempio di base di distribuzione del servizio di ricerca.
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'
}
}
Moduli verificati di Azure
Per distribuire questo tipo di risorsa, è possibile usare moduli verificati di Azure.
| Modulo | Descrizione |
|---|---|
| servizio di ricerca | Modulo di risorse AVM per il servizio di ricerca |
Esempi di avvio rapido di Azure
I modelli di avvio rapido di Azure seguenti contengono esempi Bicep per la distribuzione di questo tipo di risorsa.
| File bicipite | Descrizione |
|---|---|
| Rete di fonderia di intelligenza artificiale di Azure con restrizioni | Questo set di modelli illustra come configurare Azure AI Foundry con il collegamento privato e l'uscita disabilitati, usando le chiavi gestite da Microsoft per la crittografia e la configurazione dell'identità gestita da Microsoft per la risorsa di intelligenza artificiale. |
| servizio Ricerca cognitiva di Azure | Questo modello crea un servizio Ricerca cognitiva di Azure |
| agente protetto dalla rete con identità gestita dall'utente | Questo set di modelli illustra come configurare il servizio Agente di intelligenza artificiale di Azure con isolamento della rete virtuale usando l'autenticazione dell'identità gestita dall'utente per la connessione al servizio di intelligenza artificiale/AOAI e i collegamenti di rete privata per connettere l'agente ai dati sicuri. |
| configurazione dell'agente standard | Questo set di modelli illustra come configurare il servizio Azure AI Agent con la configurazione standard, ovvero con l'autenticazione dell'identità gestita per le connessioni di progetto/hub e l'accesso a Internet pubblico abilitato. Gli agenti usano risorse di ricerca e archiviazione a tenant singolo di proprietà del cliente. Con questa configurazione, si ha il controllo completo e la visibilità su queste risorse, ma si comportano costi in base all'utilizzo. |
Formato risorsa
Per creare una risorsa Microsoft.Search/searchServices, aggiungere il bicep seguente al modello.
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'
}
}
Oggetti DataIdentity
Impostare la proprietà @odata.type per specificare il tipo di oggetto.
Per #Microsoft.Azure.Search.DataNoneIdentity, usare:
{
@odata.type: '#Microsoft.Azure.Search.DataNoneIdentity'
}
Per #Microsoft.Azure.Search.DataUserAssignedIdentity, usare:
{
@odata.type: '#Microsoft.Azure.Search.DataUserAssignedIdentity'
federatedIdentityClientId: 'string'
userAssignedIdentity: 'string'
}
Valori delle proprietà
Microsoft.Search/servizi di ricerca
| Nome | Descrizione | Valore |
|---|---|---|
| identità | Identità della risorsa. | identity |
| ubicazione | Posizione geografica in cui risiede la risorsa | stringa (obbligatorio) |
| nome | Nome della risorsa | string Vincoli: Pattern = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obbligatorio) |
| proprietà | Proprietà del servizio di ricerca. | Proprietà SearchService |
| Sku | SKU del servizio di ricerca, che determina il livello di prezzo e i limiti di capacità. Questa proprietà è necessaria quando si crea un nuovo servizio di ricerca. | sku |
| Tag | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
AzureActiveDirectoryApplicationCredentials
| Nome | Descrizione | Valore |
|---|---|---|
| applicationId | L'ID dell'applicazione (client) di una registrazione dell'app nel tenant. | corda |
| applicationSecret | Un client secret AAD generato per la registrazione dell'app usato per l'autenticazione con Azure Key Vault. | string Vincoli: Valore sensibile. Passare come parametro sicuro. |
Identità dei dati
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Impostare su '#Microsoft.Azure.Search.DataNoneIdentity' per il tipo DataNoneIdentity. Impostare su '#Microsoft.Azure.Search.DataUserAssignedIdentity' per il tipo DataUserAssignedIdentity. | '#Microsoft.Azure.Search.DataNoneIdentity' '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obbligatorio) |
DataNoneIdentity
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Frammento di URI che specifica il tipo di identità. | '#Microsoft.Azure.Search.DataNoneIdentity' (obbligatorio) |
DataPlaneAadOrApiKeyAuthOption
| Nome | Descrizione | Valore |
|---|---|---|
| aadAuthFailureMode | Descrive la risposta inviata dall'API del piano dati di un servizio di ricerca per le richieste che hanno avuto esito negativo. | 'http401WithBearerChallenge' 'http403' |
DataPlaneAuthOptions
| Nome | Descrizione | Valore |
|---|---|---|
| aadOrApiKey | Indica che è possibile usare la chiave API o un token di accesso da un tenant di Microsoft Entra ID per l'autenticazione. | DataPlaneAadOrApiKeyAuthOption |
| apiKeyOnly | Indica che solo la chiave API può essere usata per l'autenticazione. | qualunque |
DataUserAssignedIdentity
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Frammento di URI che specifica il tipo di identità. | '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obbligatorio) |
| federatedIdentityClientId | Opzionale per il supporto CMK Multi-tenant User-Assigned Managed Identity: L'id client (come UUID) della registrazione dell'app multi-tenant configurata per federarsi con userAssignedIdentity. | corda |
| userAssignedIdentity | L'ID risorsa di Azure completo di un'identità gestita assegnata all'utente, in genere nel formato "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" che avrebbe dovuto essere assegnato al servizio di ricerca. | stringa (obbligatorio) |
EncryptionWithCmk
| Nome | Descrizione | Valore |
|---|---|---|
| rinforzo | Descrive in che modo un servizio di ricerca deve applicare la conformità se trova oggetti non crittografati con la chiave gestita dal cliente. | 'Disabilitato' 'Abilitato' 'Non specificato' |
| serviceLevelEncryptionKey | Descrive la configurazione della chiave gestita dal cliente per la crittografia del servizio di ricerca. | SearchResourceEncryptionKey |
Identità
| Nome | Descrizione | Valore |
|---|---|---|
| digitare | Tipo di identità usata per la risorsa. Il tipo 'SystemAssigned, UserAssigned' include sia un'identità creata dal sistema che un set di identità assegnate dall'utente. Il tipo 'None' rimuoverà tutte le identità dal servizio. | 'Nessuno' 'Assegnato dal sistema' 'SystemAssigned, UserAssigned' 'UserAssigned' (obbligatorio) |
| userAssignedIdentities | Elenco di identità utente associate alla risorsa. I riferimenti alla chiave del dizionario delle identità utente saranno ID risorsa ARM nel formato '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
| Nome | Descrizione | Valore |
|---|
IpRule
| Nome | Descrizione | Valore |
|---|---|---|
| valore | Valore corrispondente a un singolo indirizzo IPv4 (ad esempio, 123.1.2.3) o a un intervallo IP in formato CIDR (ad esempio, 123.1.2.3/24) da consentire. | corda |
Set di regole di rete
Chiave di crittografia SearchResourceEncryption
| Nome | Descrizione | Valore |
|---|---|---|
| accessCredentials | Credenziali facoltative di Azure Active Directory usate per l'accesso ad Azure Key Vault. Non necessario se si usa l'identità gestita. | AzureActiveDirectoryApplicationCredentials |
| identità | Identità gestita esplicita da usare per questa chiave di crittografia. Se non specificato e la proprietà delle credenziali di accesso è Null, viene usata l'identità gestita assegnata dal sistema. Se l'identità esplicita non viene specificata, l'aggiornamento alla risorsa rimane invariato. Se si specifica "none", il valore di questa proprietà viene cancellato. | Identità dei dati |
| keyVaultKeyName | Nome della chiave di Azure Key Vault da usare per crittografare i dati inattivi. | corda |
| keyVaultKeyVersion | Versione della chiave di Azure Key Vault da usare per crittografare i dati inattivi. | corda |
| keyVaultUri | L'URI dell'insieme di credenziali delle chiavi di Azure, detto anche nome DNS, che contiene la chiave da usare per crittografare i dati inattivi. Un URI di esempio potrebbe essere https://my-keyvault-name.vault.azure.net. |
corda |
Proprietà SearchService
| Nome | Descrizione | Valore |
|---|---|---|
| authOpzioni | Definisce le opzioni per il modo in cui l'API del piano dati di un servizio di ricerca autentica le richieste. Non è possibile impostare questa impostazione se 'disableLocalAuth' è impostato su true. | DataPlaneAuthOptions |
| autoGeneratedDomainNameLabelScope | Definisce il livello di riutilizzo per l'etichetta del nome di dominio auto-generata per il servizio di ricerca (ad esempio myservice-uniqueId.search.windows.net<>). Se non specificato, non viene creata alcuna etichetta di dominio generata automaticamente per il servizio di ricerca. | 'Nessun riutilizzo' 'Riutilizzo dell'abbonamento' 'Riutilizzo degli inquilini' |
| computeType | Configurare questa proprietà per supportare il servizio di ricerca usando il calcolo predefinito o il calcolo riservato di Azure. | 'Riservato' 'Default' |
| datiEsfiltrazioneProtezioni | Elenco di scenari di esfiltrazione di dati non consentiti in modo esplicito per il servizio di ricerca. Attualmente, l'unico valore supportato è "All" per disabilitare tutti i possibili scenari di esportazione dei dati con controlli più granulari pianificati per il futuro. | Matrice di stringhe contenente uno dei seguenti elementi: 'Bloccatutto' |
| disableLocalAuth | Se impostato su true, le chiamate al servizio di ricerca non saranno autorizzate a usare le chiavi API per l'autenticazione. Non è possibile impostare su true se è definito 'dataPlaneAuthOptions'. | Bool |
| encryptionWithCmk | Specifica i criteri relativi alla crittografia delle risorse (ad esempio gli indici) usando le chiavi di Customer Manager all'interno di un servizio di ricerca. | EncryptionWithCmk |
| Endpoint | Endpoint del servizio Ricerca intelligenza artificiale di Azure. | corda |
| Modalità di hosting | Applicabile solo per lo SKU Standard3. È possibile impostare questa proprietà per abilitare fino a 3 partizioni ad alta densità che consentono fino a 1000 indici, che è molto più alto rispetto agli indici massimi consentiti per qualsiasi altro SKU. Per lo SKU standard3, il valore è 'Default' o 'HighDensity'. Per tutti gli altri SKU, questo valore deve essere "Predefinito". | 'Default' 'Alta densità' |
| conoscenzaRecupero | Specifica il piano di fatturazione per il recupero agentico sul servizio Azure AI Search. Questa configurazione è disponibile solo per determinati livelli di prezzo in determinate regioni. | 'libero' 'standard' |
| networkRuleSet | Regole specifiche della rete che determinano il modo in cui è possibile raggiungere il servizio Ricerca di intelligenza artificiale di Azure. | Set di regole di rete |
| numero di partizioni | Il numero di partizioni nel servizio di ricerca dedicato; Se specificato, può essere 1, 2, 3, 4, 6 o 12. I valori maggiori di 1 sono validi solo per gli SKU standard. Per i servizi 'standard3' con hostingMode impostato su 'highDensity', i valori consentiti sono compresi tra 1 e 3. | Int Vincoli: Valore minimo = 1 Valore massimo = 12 |
| pubblicoAccesso alla rete | Questo valore può essere impostato su "Abilitato" per evitare di apportare modifiche di rilievo alle risorse e ai modelli dei clienti esistenti. Se impostato su "Disabilitato", il traffico sull'interfaccia pubblica non è consentito e le connessioni all'endpoint privato sarebbero il metodo di accesso esclusivo. | 'Disabilitato' 'Abilitato' 'SecuredByPerimeter' |
| replicaCount | Il numero di repliche nel servizio di ricerca dedicato. Se specificato, deve essere un valore compreso tra 1 e 12 inclusi per gli SKU standard o compreso tra 1 e 3 inclusi per lo SKU basic. | Int Vincoli: Valore minimo = 1 Valore massimo = 12 |
| semanticSearch | Specifica la disponibilità e il piano di fatturazione per la ricerca semantica sul servizio Azure AI Search. Questa configurazione è disponibile solo per determinati livelli di prezzo in determinate regioni. | 'disabilitato' 'libero' 'standard' |
| aggiornamentoDisponibile | Indica se il servizio di ricerca dispone di un aggiornamento disponibile. | 'disponibile' 'non disponibile' |
Sku
| Nome | Descrizione | Valore |
|---|---|---|
| nome | SKU del servizio di ricerca. I valori validi includono: 'free': Servizio condiviso. 'basic': servizio dedicato con un massimo di 3 repliche. 'standard': servizio dedicato con un massimo di 12 partizioni e 12 repliche. 'standard2': simile allo standard, ma con una maggiore capacità per ogni unità di ricerca. 'standard3': la più grande offerta Standard con un massimo di 12 partizioni e 12 repliche (o fino a 3 partizioni con più indici se si imposta anche la proprietà hostingMode su 'highDensity'). 'storage_optimized_l1': supporta 1 TB per partizione, fino a 12 partizioni. 'storage_optimized_l2': Supporta 2TB per partizione, fino a 12 partizioni. 'serverless': livello serverless con capacità di auto-scaling. | 'di base' 'libero' 'senza server' 'standard' 'standard2' 'standard3' 'storage_optimized_l1' 'storage_optimized_l2' |
TrackedResourceTags
| Nome | Descrizione | Valore |
|---|
Identità Assegnata dall'Utente
| Nome | Descrizione | Valore |
|---|
Definizione di risorsa del modello di Resource Manager
Il tipo di risorsa searchServices può essere distribuito con operazioni destinate a:
- Gruppi di risorse - Vedi comandi di distribuzione dei gruppi di risorse Per un elenco delle proprietà modificate in ciascuna versione API, vedi registro delle modifiche.
Esempi di utilizzo
Modelli di avvio rapido di Azure
I modelli di avvio rapido di Azure seguenti distribuire questo tipo di risorsa.
| Sagoma | Descrizione |
|---|---|
|
Rete di fonderia di intelligenza artificiale di Azure con restrizioni |
Questo set di modelli illustra come configurare Azure AI Foundry con il collegamento privato e l'uscita disabilitati, usando le chiavi gestite da Microsoft per la crittografia e la configurazione dell'identità gestita da Microsoft per la risorsa di intelligenza artificiale. |
|
servizio Ricerca cognitiva di Azure |
Questo modello crea un servizio Ricerca cognitiva di Azure |
|
servizio Ricerca cognitiva di Azure con endpoint privato |
Questo modello crea un servizio Ricerca cognitiva di Azure con un endpoint privato. |
|
agente protetto dalla rete con identità gestita dall'utente |
Questo set di modelli illustra come configurare il servizio Agente di intelligenza artificiale di Azure con isolamento della rete virtuale usando l'autenticazione dell'identità gestita dall'utente per la connessione al servizio di intelligenza artificiale/AOAI e i collegamenti di rete privata per connettere l'agente ai dati sicuri. |
|
configurazione dell'agente standard |
Questo set di modelli illustra come configurare il servizio Azure AI Agent con la configurazione standard, ovvero con l'autenticazione dell'identità gestita per le connessioni di progetto/hub e l'accesso a Internet pubblico abilitato. Gli agenti usano risorse di ricerca e archiviazione a tenant singolo di proprietà del cliente. Con questa configurazione, si ha il controllo completo e la visibilità su queste risorse, ma si comportano costi in base all'utilizzo. |
|
'app Web con un database SQL, Azure Cosmos DB, Ricerca di Azure |
Questo modello effettua il provisioning di un'app Web, un database SQL, Azure Cosmos DB, Ricerca di Azure e Application Insights. |
Formato risorsa
Per creare una risorsa Microsoft.Search/searchServices, aggiungere il codice JSON seguente al modello.
{
"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"
}
}
Oggetti DataIdentity
Impostare la proprietà @odata.type per specificare il tipo di oggetto.
Per #Microsoft.Azure.Search.DataNoneIdentity, usare:
{
"@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity"
}
Per #Microsoft.Azure.Search.DataUserAssignedIdentity, usare:
{
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"federatedIdentityClientId": "string",
"userAssignedIdentity": "string"
}
Valori delle proprietà
Microsoft.Search/servizi di ricerca
| Nome | Descrizione | Valore |
|---|---|---|
| versione dell'API | Versione dell'API | 'Anteprima 2026-09-01' |
| identità | Identità della risorsa. | identity |
| ubicazione | Posizione geografica in cui risiede la risorsa | stringa (obbligatorio) |
| nome | Nome della risorsa | string Vincoli: Pattern = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obbligatorio) |
| proprietà | Proprietà del servizio di ricerca. | Proprietà SearchService |
| Sku | SKU del servizio di ricerca, che determina il livello di prezzo e i limiti di capacità. Questa proprietà è necessaria quando si crea un nuovo servizio di ricerca. | sku |
| Tag | Tag delle risorse | Dizionario di nomi e valori di tag. Vedere tag nei modelli |
| digitare | Tipo di risorsa | 'Microsoft.Search/searchServices' |
AzureActiveDirectoryApplicationCredentials
| Nome | Descrizione | Valore |
|---|---|---|
| applicationId | L'ID dell'applicazione (client) di una registrazione dell'app nel tenant. | corda |
| applicationSecret | Un client secret AAD generato per la registrazione dell'app usato per l'autenticazione con Azure Key Vault. | string Vincoli: Valore sensibile. Passare come parametro sicuro. |
Identità dei dati
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Impostare su '#Microsoft.Azure.Search.DataNoneIdentity' per il tipo DataNoneIdentity. Impostare su '#Microsoft.Azure.Search.DataUserAssignedIdentity' per il tipo DataUserAssignedIdentity. | '#Microsoft.Azure.Search.DataNoneIdentity' '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obbligatorio) |
DataNoneIdentity
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Frammento di URI che specifica il tipo di identità. | '#Microsoft.Azure.Search.DataNoneIdentity' (obbligatorio) |
DataPlaneAadOrApiKeyAuthOption
| Nome | Descrizione | Valore |
|---|---|---|
| aadAuthFailureMode | Descrive la risposta inviata dall'API del piano dati di un servizio di ricerca per le richieste che hanno avuto esito negativo. | 'http401WithBearerChallenge' 'http403' |
DataPlaneAuthOptions
| Nome | Descrizione | Valore |
|---|---|---|
| aadOrApiKey | Indica che è possibile usare la chiave API o un token di accesso da un tenant di Microsoft Entra ID per l'autenticazione. | DataPlaneAadOrApiKeyAuthOption |
| apiKeyOnly | Indica che solo la chiave API può essere usata per l'autenticazione. | qualunque |
DataUserAssignedIdentity
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Frammento di URI che specifica il tipo di identità. | '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obbligatorio) |
| federatedIdentityClientId | Opzionale per il supporto CMK Multi-tenant User-Assigned Managed Identity: L'id client (come UUID) della registrazione dell'app multi-tenant configurata per federarsi con userAssignedIdentity. | corda |
| userAssignedIdentity | L'ID risorsa di Azure completo di un'identità gestita assegnata all'utente, in genere nel formato "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" che avrebbe dovuto essere assegnato al servizio di ricerca. | stringa (obbligatorio) |
EncryptionWithCmk
| Nome | Descrizione | Valore |
|---|---|---|
| rinforzo | Descrive in che modo un servizio di ricerca deve applicare la conformità se trova oggetti non crittografati con la chiave gestita dal cliente. | 'Disabilitato' 'Abilitato' 'Non specificato' |
| serviceLevelEncryptionKey | Descrive la configurazione della chiave gestita dal cliente per la crittografia del servizio di ricerca. | SearchResourceEncryptionKey |
Identità
| Nome | Descrizione | Valore |
|---|---|---|
| digitare | Tipo di identità usata per la risorsa. Il tipo 'SystemAssigned, UserAssigned' include sia un'identità creata dal sistema che un set di identità assegnate dall'utente. Il tipo 'None' rimuoverà tutte le identità dal servizio. | 'Nessuno' 'Assegnato dal sistema' 'SystemAssigned, UserAssigned' 'UserAssigned' (obbligatorio) |
| userAssignedIdentities | Elenco di identità utente associate alla risorsa. I riferimenti alla chiave del dizionario delle identità utente saranno ID risorsa ARM nel formato '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
| Nome | Descrizione | Valore |
|---|
IpRule
| Nome | Descrizione | Valore |
|---|---|---|
| valore | Valore corrispondente a un singolo indirizzo IPv4 (ad esempio, 123.1.2.3) o a un intervallo IP in formato CIDR (ad esempio, 123.1.2.3/24) da consentire. | corda |
Set di regole di rete
Chiave di crittografia SearchResourceEncryption
| Nome | Descrizione | Valore |
|---|---|---|
| accessCredentials | Credenziali facoltative di Azure Active Directory usate per l'accesso ad Azure Key Vault. Non necessario se si usa l'identità gestita. | AzureActiveDirectoryApplicationCredentials |
| identità | Identità gestita esplicita da usare per questa chiave di crittografia. Se non specificato e la proprietà delle credenziali di accesso è Null, viene usata l'identità gestita assegnata dal sistema. Se l'identità esplicita non viene specificata, l'aggiornamento alla risorsa rimane invariato. Se si specifica "none", il valore di questa proprietà viene cancellato. | Identità dei dati |
| keyVaultKeyName | Nome della chiave di Azure Key Vault da usare per crittografare i dati inattivi. | corda |
| keyVaultKeyVersion | Versione della chiave di Azure Key Vault da usare per crittografare i dati inattivi. | corda |
| keyVaultUri | L'URI dell'insieme di credenziali delle chiavi di Azure, detto anche nome DNS, che contiene la chiave da usare per crittografare i dati inattivi. Un URI di esempio potrebbe essere https://my-keyvault-name.vault.azure.net. |
corda |
Proprietà SearchService
| Nome | Descrizione | Valore |
|---|---|---|
| authOpzioni | Definisce le opzioni per il modo in cui l'API del piano dati di un servizio di ricerca autentica le richieste. Non è possibile impostare questa impostazione se 'disableLocalAuth' è impostato su true. | DataPlaneAuthOptions |
| autoGeneratedDomainNameLabelScope | Definisce il livello di riutilizzo per l'etichetta del nome di dominio auto-generata per il servizio di ricerca (ad esempio myservice-uniqueId.search.windows.net<>). Se non specificato, non viene creata alcuna etichetta di dominio generata automaticamente per il servizio di ricerca. | 'Nessun riutilizzo' 'Riutilizzo dell'abbonamento' 'Riutilizzo degli inquilini' |
| computeType | Configurare questa proprietà per supportare il servizio di ricerca usando il calcolo predefinito o il calcolo riservato di Azure. | 'Riservato' 'Default' |
| datiEsfiltrazioneProtezioni | Elenco di scenari di esfiltrazione di dati non consentiti in modo esplicito per il servizio di ricerca. Attualmente, l'unico valore supportato è "All" per disabilitare tutti i possibili scenari di esportazione dei dati con controlli più granulari pianificati per il futuro. | Matrice di stringhe contenente uno dei seguenti elementi: 'Bloccatutto' |
| disableLocalAuth | Se impostato su true, le chiamate al servizio di ricerca non saranno autorizzate a usare le chiavi API per l'autenticazione. Non è possibile impostare su true se è definito 'dataPlaneAuthOptions'. | Bool |
| encryptionWithCmk | Specifica i criteri relativi alla crittografia delle risorse (ad esempio gli indici) usando le chiavi di Customer Manager all'interno di un servizio di ricerca. | EncryptionWithCmk |
| Endpoint | Endpoint del servizio Ricerca intelligenza artificiale di Azure. | corda |
| Modalità di hosting | Applicabile solo per lo SKU Standard3. È possibile impostare questa proprietà per abilitare fino a 3 partizioni ad alta densità che consentono fino a 1000 indici, che è molto più alto rispetto agli indici massimi consentiti per qualsiasi altro SKU. Per lo SKU standard3, il valore è 'Default' o 'HighDensity'. Per tutti gli altri SKU, questo valore deve essere "Predefinito". | 'Default' 'Alta densità' |
| conoscenzaRecupero | Specifica il piano di fatturazione per il recupero agentico sul servizio Azure AI Search. Questa configurazione è disponibile solo per determinati livelli di prezzo in determinate regioni. | 'libero' 'standard' |
| networkRuleSet | Regole specifiche della rete che determinano il modo in cui è possibile raggiungere il servizio Ricerca di intelligenza artificiale di Azure. | Set di regole di rete |
| numero di partizioni | Il numero di partizioni nel servizio di ricerca dedicato; Se specificato, può essere 1, 2, 3, 4, 6 o 12. I valori maggiori di 1 sono validi solo per gli SKU standard. Per i servizi 'standard3' con hostingMode impostato su 'highDensity', i valori consentiti sono compresi tra 1 e 3. | Int Vincoli: Valore minimo = 1 Valore massimo = 12 |
| pubblicoAccesso alla rete | Questo valore può essere impostato su "Abilitato" per evitare di apportare modifiche di rilievo alle risorse e ai modelli dei clienti esistenti. Se impostato su "Disabilitato", il traffico sull'interfaccia pubblica non è consentito e le connessioni all'endpoint privato sarebbero il metodo di accesso esclusivo. | 'Disabilitato' 'Abilitato' 'SecuredByPerimeter' |
| replicaCount | Il numero di repliche nel servizio di ricerca dedicato. Se specificato, deve essere un valore compreso tra 1 e 12 inclusi per gli SKU standard o compreso tra 1 e 3 inclusi per lo SKU basic. | Int Vincoli: Valore minimo = 1 Valore massimo = 12 |
| semanticSearch | Specifica la disponibilità e il piano di fatturazione per la ricerca semantica sul servizio Azure AI Search. Questa configurazione è disponibile solo per determinati livelli di prezzo in determinate regioni. | 'disabilitato' 'libero' 'standard' |
| aggiornamentoDisponibile | Indica se il servizio di ricerca dispone di un aggiornamento disponibile. | 'disponibile' 'non disponibile' |
Sku
| Nome | Descrizione | Valore |
|---|---|---|
| nome | SKU del servizio di ricerca. I valori validi includono: 'free': Servizio condiviso. 'basic': servizio dedicato con un massimo di 3 repliche. 'standard': servizio dedicato con un massimo di 12 partizioni e 12 repliche. 'standard2': simile allo standard, ma con una maggiore capacità per ogni unità di ricerca. 'standard3': la più grande offerta Standard con un massimo di 12 partizioni e 12 repliche (o fino a 3 partizioni con più indici se si imposta anche la proprietà hostingMode su 'highDensity'). 'storage_optimized_l1': supporta 1 TB per partizione, fino a 12 partizioni. 'storage_optimized_l2': Supporta 2TB per partizione, fino a 12 partizioni. 'serverless': livello serverless con capacità di auto-scaling. | 'di base' 'libero' 'senza server' 'standard' 'standard2' 'standard3' 'storage_optimized_l1' 'storage_optimized_l2' |
TrackedResourceTags
| Nome | Descrizione | Valore |
|---|
Identità Assegnata dall'Utente
| Nome | Descrizione | Valore |
|---|
Definizione di risorsa Terraform (provider AzAPI)
Il tipo di risorsa searchServices può essere distribuito con operazioni destinate a:
- Gruppi di risorse Per un elenco delle proprietà modificate in ogni versione dell'API, vedi il registro modifiche.
Esempi di utilizzo
Esempi di Terraform
Esempio di base di distribuzione del servizio di ricerca.
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 = ["*"]
}
Moduli verificati di Azure
Per distribuire questo tipo di risorsa, è possibile usare moduli verificati di Azure.
| Modulo | Descrizione |
|---|---|
| servizio di ricerca | Modulo di risorse AVM per il servizio di ricerca |
Formato risorsa
Per creare una risorsa Microsoft.Search/searchServices, aggiungere il codice Terraform seguente al modello.
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"
}
}
}
Oggetti DataIdentity
Impostare la proprietà @odata.type per specificare il tipo di oggetto.
Per #Microsoft.Azure.Search.DataNoneIdentity, usare:
{
@odata.type = "#Microsoft.Azure.Search.DataNoneIdentity"
}
Per #Microsoft.Azure.Search.DataUserAssignedIdentity, usare:
{
@odata.type = "#Microsoft.Azure.Search.DataUserAssignedIdentity"
federatedIdentityClientId = "string"
userAssignedIdentity = "string"
}
Valori delle proprietà
Microsoft.Search/servizi di ricerca
| Nome | Descrizione | Valore |
|---|---|---|
| identità | Identità della risorsa. | identity |
| ubicazione | Posizione geografica in cui risiede la risorsa | stringa (obbligatorio) |
| nome | Nome della risorsa | string Vincoli: Pattern = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obbligatorio) |
| proprietà | Proprietà del servizio di ricerca. | Proprietà SearchService |
| Sku | SKU del servizio di ricerca, che determina il livello di prezzo e i limiti di capacità. Questa proprietà è necessaria quando si crea un nuovo servizio di ricerca. | sku |
| Tag | Tag delle risorse | Dizionario di nomi e valori di tag. |
| digitare | Tipo di risorsa | "Microsoft. Ricerca/searchServices@2026-09-01-anteprima" |
AzureActiveDirectoryApplicationCredentials
| Nome | Descrizione | Valore |
|---|---|---|
| applicationId | L'ID dell'applicazione (client) di una registrazione dell'app nel tenant. | corda |
| applicationSecret | Un client secret AAD generato per la registrazione dell'app usato per l'autenticazione con Azure Key Vault. | string Vincoli: Valore sensibile. Passare come parametro sicuro. |
Identità dei dati
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Impostare su '#Microsoft.Azure.Search.DataNoneIdentity' per il tipo DataNoneIdentity. Impostare su '#Microsoft.Azure.Search.DataUserAssignedIdentity' per il tipo DataUserAssignedIdentity. | '#Microsoft.Azure.Search.DataNoneIdentity' '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obbligatorio) |
DataNoneIdentity
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Frammento di URI che specifica il tipo di identità. | '#Microsoft.Azure.Search.DataNoneIdentity' (obbligatorio) |
DataPlaneAadOrApiKeyAuthOption
| Nome | Descrizione | Valore |
|---|---|---|
| aadAuthFailureMode | Descrive la risposta inviata dall'API del piano dati di un servizio di ricerca per le richieste che hanno avuto esito negativo. | 'http401WithBearerChallenge' 'http403' |
DataPlaneAuthOptions
| Nome | Descrizione | Valore |
|---|---|---|
| aadOrApiKey | Indica che è possibile usare la chiave API o un token di accesso da un tenant di Microsoft Entra ID per l'autenticazione. | DataPlaneAadOrApiKeyAuthOption |
| apiKeyOnly | Indica che solo la chiave API può essere usata per l'autenticazione. | qualunque |
DataUserAssignedIdentity
| Nome | Descrizione | Valore |
|---|---|---|
| @odata.type | Frammento di URI che specifica il tipo di identità. | '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obbligatorio) |
| federatedIdentityClientId | Opzionale per il supporto CMK Multi-tenant User-Assigned Managed Identity: L'id client (come UUID) della registrazione dell'app multi-tenant configurata per federarsi con userAssignedIdentity. | corda |
| userAssignedIdentity | L'ID risorsa di Azure completo di un'identità gestita assegnata all'utente, in genere nel formato "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" che avrebbe dovuto essere assegnato al servizio di ricerca. | stringa (obbligatorio) |
EncryptionWithCmk
| Nome | Descrizione | Valore |
|---|---|---|
| rinforzo | Descrive in che modo un servizio di ricerca deve applicare la conformità se trova oggetti non crittografati con la chiave gestita dal cliente. | 'Disabilitato' 'Abilitato' 'Non specificato' |
| serviceLevelEncryptionKey | Descrive la configurazione della chiave gestita dal cliente per la crittografia del servizio di ricerca. | SearchResourceEncryptionKey |
Identità
| Nome | Descrizione | Valore |
|---|---|---|
| digitare | Tipo di identità usata per la risorsa. Il tipo 'SystemAssigned, UserAssigned' include sia un'identità creata dal sistema che un set di identità assegnate dall'utente. Il tipo 'None' rimuoverà tutte le identità dal servizio. | 'Nessuno' 'Assegnato dal sistema' 'SystemAssigned, UserAssigned' 'UserAssigned' (obbligatorio) |
| userAssignedIdentities | Elenco di identità utente associate alla risorsa. I riferimenti alla chiave del dizionario delle identità utente saranno ID risorsa ARM nel formato '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
| Nome | Descrizione | Valore |
|---|
IpRule
| Nome | Descrizione | Valore |
|---|---|---|
| valore | Valore corrispondente a un singolo indirizzo IPv4 (ad esempio, 123.1.2.3) o a un intervallo IP in formato CIDR (ad esempio, 123.1.2.3/24) da consentire. | corda |
Set di regole di rete
Chiave di crittografia SearchResourceEncryption
| Nome | Descrizione | Valore |
|---|---|---|
| accessCredentials | Credenziali facoltative di Azure Active Directory usate per l'accesso ad Azure Key Vault. Non necessario se si usa l'identità gestita. | AzureActiveDirectoryApplicationCredentials |
| identità | Identità gestita esplicita da usare per questa chiave di crittografia. Se non specificato e la proprietà delle credenziali di accesso è Null, viene usata l'identità gestita assegnata dal sistema. Se l'identità esplicita non viene specificata, l'aggiornamento alla risorsa rimane invariato. Se si specifica "none", il valore di questa proprietà viene cancellato. | Identità dei dati |
| keyVaultKeyName | Nome della chiave di Azure Key Vault da usare per crittografare i dati inattivi. | corda |
| keyVaultKeyVersion | Versione della chiave di Azure Key Vault da usare per crittografare i dati inattivi. | corda |
| keyVaultUri | L'URI dell'insieme di credenziali delle chiavi di Azure, detto anche nome DNS, che contiene la chiave da usare per crittografare i dati inattivi. Un URI di esempio potrebbe essere https://my-keyvault-name.vault.azure.net. |
corda |
Proprietà SearchService
| Nome | Descrizione | Valore |
|---|---|---|
| authOpzioni | Definisce le opzioni per il modo in cui l'API del piano dati di un servizio di ricerca autentica le richieste. Non è possibile impostare questa impostazione se 'disableLocalAuth' è impostato su true. | DataPlaneAuthOptions |
| autoGeneratedDomainNameLabelScope | Definisce il livello di riutilizzo per l'etichetta del nome di dominio auto-generata per il servizio di ricerca (ad esempio myservice-uniqueId.search.windows.net<>). Se non specificato, non viene creata alcuna etichetta di dominio generata automaticamente per il servizio di ricerca. | 'Nessun riutilizzo' 'Riutilizzo dell'abbonamento' 'Riutilizzo degli inquilini' |
| computeType | Configurare questa proprietà per supportare il servizio di ricerca usando il calcolo predefinito o il calcolo riservato di Azure. | 'Riservato' 'Default' |
| datiEsfiltrazioneProtezioni | Elenco di scenari di esfiltrazione di dati non consentiti in modo esplicito per il servizio di ricerca. Attualmente, l'unico valore supportato è "All" per disabilitare tutti i possibili scenari di esportazione dei dati con controlli più granulari pianificati per il futuro. | Matrice di stringhe contenente uno dei seguenti elementi: 'Bloccatutto' |
| disableLocalAuth | Se impostato su true, le chiamate al servizio di ricerca non saranno autorizzate a usare le chiavi API per l'autenticazione. Non è possibile impostare su true se è definito 'dataPlaneAuthOptions'. | Bool |
| encryptionWithCmk | Specifica i criteri relativi alla crittografia delle risorse (ad esempio gli indici) usando le chiavi di Customer Manager all'interno di un servizio di ricerca. | EncryptionWithCmk |
| Endpoint | Endpoint del servizio Ricerca intelligenza artificiale di Azure. | corda |
| Modalità di hosting | Applicabile solo per lo SKU Standard3. È possibile impostare questa proprietà per abilitare fino a 3 partizioni ad alta densità che consentono fino a 1000 indici, che è molto più alto rispetto agli indici massimi consentiti per qualsiasi altro SKU. Per lo SKU standard3, il valore è 'Default' o 'HighDensity'. Per tutti gli altri SKU, questo valore deve essere "Predefinito". | 'Default' 'Alta densità' |
| conoscenzaRecupero | Specifica il piano di fatturazione per il recupero agentico sul servizio Azure AI Search. Questa configurazione è disponibile solo per determinati livelli di prezzo in determinate regioni. | 'libero' 'standard' |
| networkRuleSet | Regole specifiche della rete che determinano il modo in cui è possibile raggiungere il servizio Ricerca di intelligenza artificiale di Azure. | Set di regole di rete |
| numero di partizioni | Il numero di partizioni nel servizio di ricerca dedicato; Se specificato, può essere 1, 2, 3, 4, 6 o 12. I valori maggiori di 1 sono validi solo per gli SKU standard. Per i servizi 'standard3' con hostingMode impostato su 'highDensity', i valori consentiti sono compresi tra 1 e 3. | Int Vincoli: Valore minimo = 1 Valore massimo = 12 |
| pubblicoAccesso alla rete | Questo valore può essere impostato su "Abilitato" per evitare di apportare modifiche di rilievo alle risorse e ai modelli dei clienti esistenti. Se impostato su "Disabilitato", il traffico sull'interfaccia pubblica non è consentito e le connessioni all'endpoint privato sarebbero il metodo di accesso esclusivo. | 'Disabilitato' 'Abilitato' 'SecuredByPerimeter' |
| replicaCount | Il numero di repliche nel servizio di ricerca dedicato. Se specificato, deve essere un valore compreso tra 1 e 12 inclusi per gli SKU standard o compreso tra 1 e 3 inclusi per lo SKU basic. | Int Vincoli: Valore minimo = 1 Valore massimo = 12 |
| semanticSearch | Specifica la disponibilità e il piano di fatturazione per la ricerca semantica sul servizio Azure AI Search. Questa configurazione è disponibile solo per determinati livelli di prezzo in determinate regioni. | 'disabilitato' 'libero' 'standard' |
| aggiornamentoDisponibile | Indica se il servizio di ricerca dispone di un aggiornamento disponibile. | 'disponibile' 'non disponibile' |
Sku
| Nome | Descrizione | Valore |
|---|---|---|
| nome | SKU del servizio di ricerca. I valori validi includono: 'free': Servizio condiviso. 'basic': servizio dedicato con un massimo di 3 repliche. 'standard': servizio dedicato con un massimo di 12 partizioni e 12 repliche. 'standard2': simile allo standard, ma con una maggiore capacità per ogni unità di ricerca. 'standard3': la più grande offerta Standard con un massimo di 12 partizioni e 12 repliche (o fino a 3 partizioni con più indici se si imposta anche la proprietà hostingMode su 'highDensity'). 'storage_optimized_l1': supporta 1 TB per partizione, fino a 12 partizioni. 'storage_optimized_l2': Supporta 2TB per partizione, fino a 12 partizioni. 'serverless': livello serverless con capacità di auto-scaling. | 'di base' 'libero' 'senza server' 'standard' 'standard2' 'standard3' 'storage_optimized_l1' 'storage_optimized_l2' |
TrackedResourceTags
| Nome | Descrizione | Valore |
|---|
Identità Assegnata dall'Utente
| Nome | Descrizione | Valore |
|---|