Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Définition de ressource Bicep
Le type de ressource searchServices peut être déployé avec des opérations qui ciblent :
- groupes de ressources - Consultez commandes de déploiement de groupes de ressources
Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.
Exemples d’utilisation
Exemples Bicep
Exemple de base de déploiement du service de recherche.
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'
}
}
Modules vérifiés Azure
Les modules vérifiés Azure suivants peuvent être utilisés pour déployer ce type de ressource.
| Module | Descriptif |
|---|---|
| service de recherche | Module de ressources AVM pour le service de recherche |
Exemples de démarrage rapide Azure
Les modèles de démarrage rapide Azure suivants contiennent des exemples Bicep pour le déploiement de ce type de ressource.
| Fichier Bicep | Descriptif |
|---|---|
| Réseau Azure AI Foundry restreint | Cet ensemble de modèles montre comment configurer Azure AI Foundry avec la liaison privée et la sortie désactivées, à l’aide de clés gérées par Microsoft pour le chiffrement et de la configuration d’identité gérée par Microsoft pour la ressource IA. |
| service Recherche cognitive Azure | Ce modèle crée un service Recherche cognitive Azure |
| Agent sécurisé réseau avec d’identité managée par l’utilisateur | Cet ensemble de modèles montre comment configurer azure AI Agent Service avec isolation de réseau virtuel à l’aide de l’authentification d’identité managée par l’utilisateur pour la connexion AI Service/AOAI et les liens de réseau privé pour connecter l’agent à vos données sécurisées. |
| configuration de l’agent standard | Cet ensemble de modèles montre comment configurer azure AI Agent Service avec la configuration standard, ce qui signifie qu’avec l’authentification d’identité managée pour les connexions project/hub et l’accès à Internet public activé. Les agents utilisent des ressources de stockage et de recherche à locataire unique appartenant au client. Avec cette configuration, vous disposez d’un contrôle total et d’une visibilité sur ces ressources, mais vous entraînez des coûts en fonction de votre utilisation. |
Format de ressource
Pour créer une ressource Microsoft.Search/searchServices, ajoutez le bicep suivant à votre modèle.
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'
}
}
Objets DataIdentity
Définissez la propriété
Pour #Microsoft.Azure.Search.DataNoneIdentity, utilisez :
{
@odata.type: '#Microsoft.Azure.Search.DataNoneIdentity'
}
Pour #Microsoft.Azure.Search.DataUserAssignedIdentity, utilisez :
{
@odata.type: '#Microsoft.Azure.Search.DataUserAssignedIdentity'
federatedIdentityClientId: 'string'
userAssignedIdentity: 'string'
}
Valeurs de propriété
Microsoft.Search/searchServices
| Nom | Descriptif | Valeur |
|---|---|---|
| identité | Identité de la ressource. | Identité |
| emplacement | Emplacement géographique où réside la ressource | chaîne (obligatoire) |
| nom | Nom de la ressource | string Contraintes: Modèle = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obligatoire) |
| Propriétés | Propriétés du service de recherche. | SearchServiceProperties |
| Sku | Référence SKU du service de recherche, qui détermine le niveau tarifaire et les limites de capacité. Cette propriété est requise lors de la création d’un service de recherche. | référence SKU |
| étiquettes | Balises de ressource | Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
AzureActiveDirectoryApplicationCredentials
| Nom | Descriptif | Valeur |
|---|---|---|
| applicationId | L’identifiant de l’application (client) d’un enregistrement d’application dans le locataire. | corde |
| applicationSecret | Un secret client AAD généré pour l’enregistrement de l’application utilisé pour s’authentifier avec Azure Key Vault. | string Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
DataIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Définissez la valeur « #Microsoft.Azure.Search.DataNoneIdentity » pour le type DataNoneIdentity. Définissez la valeur « #Microsoft.Azure.Search.DataUserAssignedIdentity » pour le type DataUserAssignedIdentity. | « #Microsoft.Azure.Search.DataNoneIdentity » '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obligatoire) |
DataNoneIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Fragment d’URI spécifiant le type d’identité. | « #Microsoft.Azure.Search.DataNoneIdentity » (obligatoire) |
DataPlaneAadOrApiKeyAuthOption
| Nom | Descriptif | Valeur |
|---|---|---|
| aadAuthFailureMode | Décrit la réponse que l’API du plan de données d’un service de recherche envoie pour les demandes qui ont échoué. | 'http401WithBearerChallenge' 'http403' |
DataPlaneAuthOptions
| Nom | Descriptif | Valeur |
|---|---|---|
| aadOrApiKey | Indique que la clé API ou un jeton d’accès à partir d’un locataire Microsoft Entra ID peut être utilisé pour l’authentification. | DataPlaneAadOrApiKeyAuthOption |
| apiKeyOnly | Indique que seule la clé API peut être utilisée pour l’authentification. | quelconque |
DataUserAssignedIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Fragment d’URI spécifiant le type d’identité. | '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obligatoire) |
| federatedIdentityClientId | Optionnel pour le support CMK Multi-locataire User-Assigned Identité Gérée : L’identifiant client (en tant qu’UUID) de l’enregistrement multi-locataire de l’application configuré pour fédérer avec l’IdentitéAssignée utilisateur. | corde |
| userAssignedIdentity | ID de ressource Azure complet d’un utilisateur affecté à une identité managée, généralement sous la forme « /subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId » qui aurait dû être attribué au service de recherche. | chaîne (obligatoire) |
EncryptionWithCmk
| Nom | Descriptif | Valeur |
|---|---|---|
| application | Décrit comment un service de recherche doit appliquer la conformité s’il trouve des objets qui ne sont pas chiffrés avec la clé gérée par le client. | 'Désactivé' 'Activé' 'Non spécifié' |
| serviceLevelEncryptionKey | Décrit la configuration de clé gérée par le client pour le chiffrement du service de recherche. | SearchResourceEncryptionKey |
Identité
| Nom | Descriptif | Valeur |
|---|---|---|
| type | Type d’identité utilisé pour la ressource. Le type « SystemAssigned, UserAssigned » inclut à la fois une identité créée par le système et un ensemble d’identités affectées par l’utilisateur. Le type « None » supprime toutes les identités du service. | « Aucun » 'SystemAssigned' « SystemAssigned, UserAssigned » 'UserAssigned' (obligatoire) |
| Identités attribuées par l'utilisateur | Liste des identités utilisateur associées à la ressource. Les références de clé de dictionnaire d’identité utilisateur seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} ». | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
| Nom | Descriptif | Valeur |
|---|
IpRule
| Nom | Descriptif | Valeur |
|---|---|---|
| valeur | Valeur correspondant à une seule adresse IPv4 (par exemple, 123.1.2.3) ou à une plage IP au format CIDR (par exemple, 123.1.2.3/24) à autoriser. | corde |
NetworkRuleSet
SearchResourceEncryptionKey
| Nom | Descriptif | Valeur |
|---|---|---|
| accessCredentials | Informations d’identification Azure Active Directory facultatives utilisées pour accéder à votre coffre de clés Azure. Non requis si vous utilisez l’identité managée à la place. | AzureActiveDirectoryApplicationCredentials |
| identité | Identité managée explicite à utiliser pour cette clé de chiffrement. Si elle n’est pas spécifiée et que la propriété d’informations d’identification d’accès est null, l’identité managée affectée par le système est utilisée. Lors de la mise à jour vers la ressource, si l’identité explicite n’est pas spécifiée, elle reste inchangée. Si « none » est spécifié, la valeur de cette propriété est effacée. | DataIdentity |
| keyVaultKeyName | Nom de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. | corde |
| keyVaultKeyVersion | Version de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. | corde |
| keyVaultUri | URI de votre coffre de clés Azure, également appelé nom DNS, qui contient la clé à utiliser pour chiffrer vos données au repos. Un exemple d’URI peut être https://my-keyvault-name.vault.azure.net. |
corde |
SearchServiceProperties
| Nom | Descriptif | Valeur |
|---|---|---|
| authOptions | Définit les options pour la façon dont l’API de plan de données d’un service de recherche authentifie les demandes. Cela ne peut pas être défini si « disableLocalAuth » a la valeur true. | DataPlaneAuthOptions |
| autoGeneratedDomainNameLabelScope | Définit le niveau de réutilisation de l’étiquette de nom de domaine auto-générée pour le service de recherche (par exemple myservice-uniqueId.search.windows.net<>). Si ce n’est pas spécifié, aucune étiquette de nom de domaine générée automatiquement n’est créée pour le service de recherche. | 'NoReuse' 'Réutilisation de l’abonnement' 'Réutilisation des locataires' |
| ComputeType | Configurez cette propriété pour prendre en charge le service de recherche à l’aide du calcul par défaut ou du calcul confidentiel Azure. | 'Confidentiel' 'Default' |
| dataExfiltrationProtections | Liste des scénarios d’exfiltration de données qui sont explicitement interdits pour le service de recherche. Actuellement, la seule valeur prise en charge est « All » pour désactiver tous les scénarios d’exportation de données possibles avec des contrôles plus précis prévus pour l’avenir. | Tableau de chaînes contenant l’un des éléments suivants : 'BlockAll' |
| disableLocalAuth | Lorsque la valeur est true, les appels au service de recherche ne sont pas autorisés à utiliser les clés API pour l’authentification. Cela ne peut pas être défini sur true si « dataPlaneAuthOptions » sont définis. | Bool |
| encryptionWithCmk | Spécifie toute stratégie concernant le chiffrement des ressources (telles que les index) à l’aide de clés de gestionnaire de clients au sein d’un service de recherche. | EncryptionWithCmk |
| extrémité | Point de terminaison du service Recherche d’IA Azure. | corde |
| mode d’hébergement | Applicable uniquement pour la référence SKU standard3. Vous pouvez définir cette propriété pour activer jusqu’à 3 partitions à haute densité qui autorisent jusqu’à 1 000 index, ce qui est beaucoup plus élevé que les index maximum autorisés pour toute autre référence SKU. Pour la référence SKU standard3, la valeur est « Par défaut » ou « HighDensity ». Pour toutes les autres références SKU, cette valeur doit être « Par défaut ». | 'Default' « Haute densité » |
| ConnaissanceRécupération | Spécifie le plan de facturation pour la récupération d’agents sur le service Recherche Azure AI. Cette configuration n’est disponible que pour certains fourchettes de prix dans certaines régions. | « Libre » « Standard » |
| networkRuleSet | Règles spécifiques au réseau qui déterminent la façon dont le service Recherche d’IA Azure peut être atteint. | NetworkRuleSet |
| nombre de partitions | Le nombre de partitions dans le service de recherche dédié ; Si spécifié, cela peut être 1, 2, 3, 4, 6 ou 12. Les valeurs supérieures à 1 sont valides uniquement pour les références SKU standard. Pour les services « standard3 » avec hostingMode défini sur « highDensity », les valeurs autorisées sont comprises entre 1 et 3. | Int Contraintes: Valeur minimale = 1 Valeur maximale = 12 |
| publicNetworkAccess | Cette valeur peut être définie sur « Activé » pour éviter de casser les modifications sur les ressources et les modèles clients existants. Si la valeur est « Désactivé », le trafic sur l’interface publique n’est pas autorisé et les connexions de point de terminaison privé sont la méthode d’accès exclusive. | 'Désactivé' 'Activé' « SecuredByPerimeter » |
| replicaCount | Le nombre de répliques dans le service de recherche dédié. S’il est spécifié, il doit s’agir d’une valeur comprise entre 1 et 12 inclus pour les références SKU standard ou comprises entre 1 et 3 pour la référence SKU de base. | Int Contraintes: Valeur minimale = 1 Valeur maximale = 12 |
| semanticSearch | Spécifie la disponibilité et le plan de facturation pour la recherche sémantique sur le service Recherche Azure AI. Cette configuration n’est disponible que pour certains fourchettes de prix dans certaines régions. | « Handicapé » « Libre » « Standard » |
| mise à niveauDisponible | Indique si le service de recherche dispose d’une mise à niveau disponible. | 'disponible' 'notAvailable' |
Sku
| Nom | Descriptif | Valeur |
|---|---|---|
| nom | Référence SKU du service de recherche. Les valeurs valides sont les suivantes : « gratuit » : service partagé. « de base » : service dédié avec jusqu’à 3 réplicas. « standard » : service dédié avec jusqu’à 12 partitions et 12 réplicas. « standard2 » : similaire à la norme, mais avec plus de capacité par unité de recherche. « standard3 » : la plus grande offre Standard avec jusqu’à 12 partitions et 12 réplicas (ou jusqu’à 3 partitions avec plus d’index si vous définissez également la propriété hostingMode sur « highDensity »). 'storage_optimized_l1' : prend en charge 1 To par partition, jusqu’à 12 partitions. 'storage_optimized_l2' : Prend en charge 2 To par partition, jusqu’à 12 partitions. « serverless » : Niveau serverless avec capacités d’auto-scaling. | « Basique » « Libre » « sans serveur » « Standard » 'Norme 2' 'Norme 3' 'storage_optimized_l1' 'storage_optimized_l2' |
TrackedResourceTags
| Nom | Descriptif | Valeur |
|---|
userAssignedIdentity
| Nom | Descriptif | Valeur |
|---|
Définition de ressource de modèle ARM
Le type de ressource searchServices peut être déployé avec des opérations qui ciblent :
- Groupes de ressources - Voir commandes de déploiement des groupes de ressources Pour une liste des propriétés modifiées dans chaque version d’API, voir journal des changements.
Exemples d’utilisation
Modèles de démarrage rapide Azure
Les modèles de démarrage rapide Azure suivants déployer ce type de ressource.
| Modèle | Descriptif |
|---|---|
|
Réseau Azure AI Foundry restreint |
Cet ensemble de modèles montre comment configurer Azure AI Foundry avec la liaison privée et la sortie désactivées, à l’aide de clés gérées par Microsoft pour le chiffrement et de la configuration d’identité gérée par Microsoft pour la ressource IA. |
|
service Recherche cognitive Azure |
Ce modèle crée un service Recherche cognitive Azure |
|
service Recherche cognitive Azure avec de point de terminaison privé |
Ce modèle crée un service Recherche cognitive Azure avec un point de terminaison privé. |
|
Agent sécurisé réseau avec d’identité managée par l’utilisateur |
Cet ensemble de modèles montre comment configurer azure AI Agent Service avec isolation de réseau virtuel à l’aide de l’authentification d’identité managée par l’utilisateur pour la connexion AI Service/AOAI et les liens de réseau privé pour connecter l’agent à vos données sécurisées. |
|
configuration de l’agent standard |
Cet ensemble de modèles montre comment configurer azure AI Agent Service avec la configuration standard, ce qui signifie qu’avec l’authentification d’identité managée pour les connexions project/hub et l’accès à Internet public activé. Les agents utilisent des ressources de stockage et de recherche à locataire unique appartenant au client. Avec cette configuration, vous disposez d’un contrôle total et d’une visibilité sur ces ressources, mais vous entraînez des coûts en fonction de votre utilisation. |
|
Application web avec une base de données SQL, Azure Cosmos DB, azure Search |
Ce modèle provisionne une application web, une base de données SQL, Azure Cosmos DB, Azure Search et Application Insights. |
Format de ressource
Pour créer une ressource Microsoft.Search/searchServices, ajoutez le code JSON suivant à votre modèle.
{
"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"
}
}
Objets DataIdentity
Définissez la propriété
Pour #Microsoft.Azure.Search.DataNoneIdentity, utilisez :
{
"@odata.type": "#Microsoft.Azure.Search.DataNoneIdentity"
}
Pour #Microsoft.Azure.Search.DataUserAssignedIdentity, utilisez :
{
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"federatedIdentityClientId": "string",
"userAssignedIdentity": "string"
}
Valeurs de propriété
Microsoft.Search/searchServices
| Nom | Descriptif | Valeur |
|---|---|---|
| apiVersion | Version de l’API | « Aperçu 2026-09-01- » |
| identité | Identité de la ressource. | Identité |
| emplacement | Emplacement géographique où réside la ressource | chaîne (obligatoire) |
| nom | Nom de la ressource | string Contraintes: Modèle = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obligatoire) |
| Propriétés | Propriétés du service de recherche. | SearchServiceProperties |
| Sku | Référence SKU du service de recherche, qui détermine le niveau tarifaire et les limites de capacité. Cette propriété est requise lors de la création d’un service de recherche. | référence SKU |
| étiquettes | Balises de ressource | Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles |
| type | Type de ressource | 'Microsoft.Search/searchServices' |
AzureActiveDirectoryApplicationCredentials
| Nom | Descriptif | Valeur |
|---|---|---|
| applicationId | L’identifiant de l’application (client) d’un enregistrement d’application dans le locataire. | corde |
| applicationSecret | Un secret client AAD généré pour l’enregistrement de l’application utilisé pour s’authentifier avec Azure Key Vault. | string Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
DataIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Définissez la valeur « #Microsoft.Azure.Search.DataNoneIdentity » pour le type DataNoneIdentity. Définissez la valeur « #Microsoft.Azure.Search.DataUserAssignedIdentity » pour le type DataUserAssignedIdentity. | « #Microsoft.Azure.Search.DataNoneIdentity » '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obligatoire) |
DataNoneIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Fragment d’URI spécifiant le type d’identité. | « #Microsoft.Azure.Search.DataNoneIdentity » (obligatoire) |
DataPlaneAadOrApiKeyAuthOption
| Nom | Descriptif | Valeur |
|---|---|---|
| aadAuthFailureMode | Décrit la réponse que l’API du plan de données d’un service de recherche envoie pour les demandes qui ont échoué. | 'http401WithBearerChallenge' 'http403' |
DataPlaneAuthOptions
| Nom | Descriptif | Valeur |
|---|---|---|
| aadOrApiKey | Indique que la clé API ou un jeton d’accès à partir d’un locataire Microsoft Entra ID peut être utilisé pour l’authentification. | DataPlaneAadOrApiKeyAuthOption |
| apiKeyOnly | Indique que seule la clé API peut être utilisée pour l’authentification. | quelconque |
DataUserAssignedIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Fragment d’URI spécifiant le type d’identité. | '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obligatoire) |
| federatedIdentityClientId | Optionnel pour le support CMK Multi-locataire User-Assigned Identité Gérée : L’identifiant client (en tant qu’UUID) de l’enregistrement multi-locataire de l’application configuré pour fédérer avec l’IdentitéAssignée utilisateur. | corde |
| userAssignedIdentity | ID de ressource Azure complet d’un utilisateur affecté à une identité managée, généralement sous la forme « /subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId » qui aurait dû être attribué au service de recherche. | chaîne (obligatoire) |
EncryptionWithCmk
| Nom | Descriptif | Valeur |
|---|---|---|
| application | Décrit comment un service de recherche doit appliquer la conformité s’il trouve des objets qui ne sont pas chiffrés avec la clé gérée par le client. | 'Désactivé' 'Activé' 'Non spécifié' |
| serviceLevelEncryptionKey | Décrit la configuration de clé gérée par le client pour le chiffrement du service de recherche. | SearchResourceEncryptionKey |
Identité
| Nom | Descriptif | Valeur |
|---|---|---|
| type | Type d’identité utilisé pour la ressource. Le type « SystemAssigned, UserAssigned » inclut à la fois une identité créée par le système et un ensemble d’identités affectées par l’utilisateur. Le type « None » supprime toutes les identités du service. | « Aucun » 'SystemAssigned' « SystemAssigned, UserAssigned » 'UserAssigned' (obligatoire) |
| Identités attribuées par l'utilisateur | Liste des identités utilisateur associées à la ressource. Les références de clé de dictionnaire d’identité utilisateur seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} ». | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
| Nom | Descriptif | Valeur |
|---|
IpRule
| Nom | Descriptif | Valeur |
|---|---|---|
| valeur | Valeur correspondant à une seule adresse IPv4 (par exemple, 123.1.2.3) ou à une plage IP au format CIDR (par exemple, 123.1.2.3/24) à autoriser. | corde |
NetworkRuleSet
SearchResourceEncryptionKey
| Nom | Descriptif | Valeur |
|---|---|---|
| accessCredentials | Informations d’identification Azure Active Directory facultatives utilisées pour accéder à votre coffre de clés Azure. Non requis si vous utilisez l’identité managée à la place. | AzureActiveDirectoryApplicationCredentials |
| identité | Identité managée explicite à utiliser pour cette clé de chiffrement. Si elle n’est pas spécifiée et que la propriété d’informations d’identification d’accès est null, l’identité managée affectée par le système est utilisée. Lors de la mise à jour vers la ressource, si l’identité explicite n’est pas spécifiée, elle reste inchangée. Si « none » est spécifié, la valeur de cette propriété est effacée. | DataIdentity |
| keyVaultKeyName | Nom de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. | corde |
| keyVaultKeyVersion | Version de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. | corde |
| keyVaultUri | URI de votre coffre de clés Azure, également appelé nom DNS, qui contient la clé à utiliser pour chiffrer vos données au repos. Un exemple d’URI peut être https://my-keyvault-name.vault.azure.net. |
corde |
SearchServiceProperties
| Nom | Descriptif | Valeur |
|---|---|---|
| authOptions | Définit les options pour la façon dont l’API de plan de données d’un service de recherche authentifie les demandes. Cela ne peut pas être défini si « disableLocalAuth » a la valeur true. | DataPlaneAuthOptions |
| autoGeneratedDomainNameLabelScope | Définit le niveau de réutilisation de l’étiquette de nom de domaine auto-générée pour le service de recherche (par exemple myservice-uniqueId.search.windows.net<>). Si ce n’est pas spécifié, aucune étiquette de nom de domaine générée automatiquement n’est créée pour le service de recherche. | 'NoReuse' 'Réutilisation de l’abonnement' 'Réutilisation des locataires' |
| ComputeType | Configurez cette propriété pour prendre en charge le service de recherche à l’aide du calcul par défaut ou du calcul confidentiel Azure. | 'Confidentiel' 'Default' |
| dataExfiltrationProtections | Liste des scénarios d’exfiltration de données qui sont explicitement interdits pour le service de recherche. Actuellement, la seule valeur prise en charge est « All » pour désactiver tous les scénarios d’exportation de données possibles avec des contrôles plus précis prévus pour l’avenir. | Tableau de chaînes contenant l’un des éléments suivants : 'BlockAll' |
| disableLocalAuth | Lorsque la valeur est true, les appels au service de recherche ne sont pas autorisés à utiliser les clés API pour l’authentification. Cela ne peut pas être défini sur true si « dataPlaneAuthOptions » sont définis. | Bool |
| encryptionWithCmk | Spécifie toute stratégie concernant le chiffrement des ressources (telles que les index) à l’aide de clés de gestionnaire de clients au sein d’un service de recherche. | EncryptionWithCmk |
| extrémité | Point de terminaison du service Recherche d’IA Azure. | corde |
| mode d’hébergement | Applicable uniquement pour la référence SKU standard3. Vous pouvez définir cette propriété pour activer jusqu’à 3 partitions à haute densité qui autorisent jusqu’à 1 000 index, ce qui est beaucoup plus élevé que les index maximum autorisés pour toute autre référence SKU. Pour la référence SKU standard3, la valeur est « Par défaut » ou « HighDensity ». Pour toutes les autres références SKU, cette valeur doit être « Par défaut ». | 'Default' « Haute densité » |
| ConnaissanceRécupération | Spécifie le plan de facturation pour la récupération d’agents sur le service Recherche Azure AI. Cette configuration n’est disponible que pour certains fourchettes de prix dans certaines régions. | « Libre » « Standard » |
| networkRuleSet | Règles spécifiques au réseau qui déterminent la façon dont le service Recherche d’IA Azure peut être atteint. | NetworkRuleSet |
| nombre de partitions | Le nombre de partitions dans le service de recherche dédié ; Si spécifié, cela peut être 1, 2, 3, 4, 6 ou 12. Les valeurs supérieures à 1 sont valides uniquement pour les références SKU standard. Pour les services « standard3 » avec hostingMode défini sur « highDensity », les valeurs autorisées sont comprises entre 1 et 3. | Int Contraintes: Valeur minimale = 1 Valeur maximale = 12 |
| publicNetworkAccess | Cette valeur peut être définie sur « Activé » pour éviter de casser les modifications sur les ressources et les modèles clients existants. Si la valeur est « Désactivé », le trafic sur l’interface publique n’est pas autorisé et les connexions de point de terminaison privé sont la méthode d’accès exclusive. | 'Désactivé' 'Activé' « SecuredByPerimeter » |
| replicaCount | Le nombre de répliques dans le service de recherche dédié. S’il est spécifié, il doit s’agir d’une valeur comprise entre 1 et 12 inclus pour les références SKU standard ou comprises entre 1 et 3 pour la référence SKU de base. | Int Contraintes: Valeur minimale = 1 Valeur maximale = 12 |
| semanticSearch | Spécifie la disponibilité et le plan de facturation pour la recherche sémantique sur le service Recherche Azure AI. Cette configuration n’est disponible que pour certains fourchettes de prix dans certaines régions. | « Handicapé » « Libre » « Standard » |
| mise à niveauDisponible | Indique si le service de recherche dispose d’une mise à niveau disponible. | 'disponible' 'notAvailable' |
Sku
| Nom | Descriptif | Valeur |
|---|---|---|
| nom | Référence SKU du service de recherche. Les valeurs valides sont les suivantes : « gratuit » : service partagé. « de base » : service dédié avec jusqu’à 3 réplicas. « standard » : service dédié avec jusqu’à 12 partitions et 12 réplicas. « standard2 » : similaire à la norme, mais avec plus de capacité par unité de recherche. « standard3 » : la plus grande offre Standard avec jusqu’à 12 partitions et 12 réplicas (ou jusqu’à 3 partitions avec plus d’index si vous définissez également la propriété hostingMode sur « highDensity »). 'storage_optimized_l1' : prend en charge 1 To par partition, jusqu’à 12 partitions. 'storage_optimized_l2' : Prend en charge 2 To par partition, jusqu’à 12 partitions. « serverless » : Niveau serverless avec capacités d’auto-scaling. | « Basique » « Libre » « sans serveur » « Standard » 'Norme 2' 'Norme 3' 'storage_optimized_l1' 'storage_optimized_l2' |
TrackedResourceTags
| Nom | Descriptif | Valeur |
|---|
userAssignedIdentity
| Nom | Descriptif | Valeur |
|---|
Définition de ressource Terraform (fournisseur AzAPI)
Le type de ressource searchServices peut être déployé avec des opérations qui ciblent :
- Groupes de ressources Pour une liste des propriétés modifiées dans chaque version d’API, voir journal des modifications.
Exemples d’utilisation
Échantillons Terraform
Exemple de base de déploiement du service de recherche.
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 = ["*"]
}
Modules vérifiés Azure
Les modules vérifiés Azure suivants peuvent être utilisés pour déployer ce type de ressource.
| Module | Descriptif |
|---|---|
| service de recherche | Module de ressources AVM pour le service de recherche |
Format de ressource
Pour créer une ressource Microsoft.Search/searchServices, ajoutez terraform suivant à votre modèle.
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"
}
}
}
Objets DataIdentity
Définissez la propriété
Pour #Microsoft.Azure.Search.DataNoneIdentity, utilisez :
{
@odata.type = "#Microsoft.Azure.Search.DataNoneIdentity"
}
Pour #Microsoft.Azure.Search.DataUserAssignedIdentity, utilisez :
{
@odata.type = "#Microsoft.Azure.Search.DataUserAssignedIdentity"
federatedIdentityClientId = "string"
userAssignedIdentity = "string"
}
Valeurs de propriété
Microsoft.Search/searchServices
| Nom | Descriptif | Valeur |
|---|---|---|
| identité | Identité de la ressource. | Identité |
| emplacement | Emplacement géographique où réside la ressource | chaîne (obligatoire) |
| nom | Nom de la ressource | string Contraintes: Modèle = ^(?=.{2,60}$)[a-z0-9][a-z0-9]+(-[a-z0-9]+)*$ (obligatoire) |
| Propriétés | Propriétés du service de recherche. | SearchServiceProperties |
| Sku | Référence SKU du service de recherche, qui détermine le niveau tarifaire et les limites de capacité. Cette propriété est requise lors de la création d’un service de recherche. | référence SKU |
| étiquettes | Balises de ressource | Dictionnaire de noms et de valeurs d’étiquettes. |
| type | Type de ressource | « Microsoft. Recherche/searchServices@2026-09-01-aperçu » |
AzureActiveDirectoryApplicationCredentials
| Nom | Descriptif | Valeur |
|---|---|---|
| applicationId | L’identifiant de l’application (client) d’un enregistrement d’application dans le locataire. | corde |
| applicationSecret | Un secret client AAD généré pour l’enregistrement de l’application utilisé pour s’authentifier avec Azure Key Vault. | string Contraintes: Valeur sensible. Passez en tant que paramètre sécurisé. |
DataIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Définissez la valeur « #Microsoft.Azure.Search.DataNoneIdentity » pour le type DataNoneIdentity. Définissez la valeur « #Microsoft.Azure.Search.DataUserAssignedIdentity » pour le type DataUserAssignedIdentity. | « #Microsoft.Azure.Search.DataNoneIdentity » '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obligatoire) |
DataNoneIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Fragment d’URI spécifiant le type d’identité. | « #Microsoft.Azure.Search.DataNoneIdentity » (obligatoire) |
DataPlaneAadOrApiKeyAuthOption
| Nom | Descriptif | Valeur |
|---|---|---|
| aadAuthFailureMode | Décrit la réponse que l’API du plan de données d’un service de recherche envoie pour les demandes qui ont échoué. | 'http401WithBearerChallenge' 'http403' |
DataPlaneAuthOptions
| Nom | Descriptif | Valeur |
|---|---|---|
| aadOrApiKey | Indique que la clé API ou un jeton d’accès à partir d’un locataire Microsoft Entra ID peut être utilisé pour l’authentification. | DataPlaneAadOrApiKeyAuthOption |
| apiKeyOnly | Indique que seule la clé API peut être utilisée pour l’authentification. | quelconque |
DataUserAssignedIdentity
| Nom | Descriptif | Valeur |
|---|---|---|
| @odata.type | Fragment d’URI spécifiant le type d’identité. | '#Microsoft.Azure.Search.DataUserAssignedIdentity' (obligatoire) |
| federatedIdentityClientId | Optionnel pour le support CMK Multi-locataire User-Assigned Identité Gérée : L’identifiant client (en tant qu’UUID) de l’enregistrement multi-locataire de l’application configuré pour fédérer avec l’IdentitéAssignée utilisateur. | corde |
| userAssignedIdentity | ID de ressource Azure complet d’un utilisateur affecté à une identité managée, généralement sous la forme « /subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId » qui aurait dû être attribué au service de recherche. | chaîne (obligatoire) |
EncryptionWithCmk
| Nom | Descriptif | Valeur |
|---|---|---|
| application | Décrit comment un service de recherche doit appliquer la conformité s’il trouve des objets qui ne sont pas chiffrés avec la clé gérée par le client. | 'Désactivé' 'Activé' 'Non spécifié' |
| serviceLevelEncryptionKey | Décrit la configuration de clé gérée par le client pour le chiffrement du service de recherche. | SearchResourceEncryptionKey |
Identité
| Nom | Descriptif | Valeur |
|---|---|---|
| type | Type d’identité utilisé pour la ressource. Le type « SystemAssigned, UserAssigned » inclut à la fois une identité créée par le système et un ensemble d’identités affectées par l’utilisateur. Le type « None » supprime toutes les identités du service. | « Aucun » 'SystemAssigned' « SystemAssigned, UserAssigned » 'UserAssigned' (obligatoire) |
| Identités attribuées par l'utilisateur | Liste des identités utilisateur associées à la ressource. Les références de clé de dictionnaire d’identité utilisateur seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} ». | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
| Nom | Descriptif | Valeur |
|---|
IpRule
| Nom | Descriptif | Valeur |
|---|---|---|
| valeur | Valeur correspondant à une seule adresse IPv4 (par exemple, 123.1.2.3) ou à une plage IP au format CIDR (par exemple, 123.1.2.3/24) à autoriser. | corde |
NetworkRuleSet
SearchResourceEncryptionKey
| Nom | Descriptif | Valeur |
|---|---|---|
| accessCredentials | Informations d’identification Azure Active Directory facultatives utilisées pour accéder à votre coffre de clés Azure. Non requis si vous utilisez l’identité managée à la place. | AzureActiveDirectoryApplicationCredentials |
| identité | Identité managée explicite à utiliser pour cette clé de chiffrement. Si elle n’est pas spécifiée et que la propriété d’informations d’identification d’accès est null, l’identité managée affectée par le système est utilisée. Lors de la mise à jour vers la ressource, si l’identité explicite n’est pas spécifiée, elle reste inchangée. Si « none » est spécifié, la valeur de cette propriété est effacée. | DataIdentity |
| keyVaultKeyName | Nom de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. | corde |
| keyVaultKeyVersion | Version de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. | corde |
| keyVaultUri | URI de votre coffre de clés Azure, également appelé nom DNS, qui contient la clé à utiliser pour chiffrer vos données au repos. Un exemple d’URI peut être https://my-keyvault-name.vault.azure.net. |
corde |
SearchServiceProperties
| Nom | Descriptif | Valeur |
|---|---|---|
| authOptions | Définit les options pour la façon dont l’API de plan de données d’un service de recherche authentifie les demandes. Cela ne peut pas être défini si « disableLocalAuth » a la valeur true. | DataPlaneAuthOptions |
| autoGeneratedDomainNameLabelScope | Définit le niveau de réutilisation de l’étiquette de nom de domaine auto-générée pour le service de recherche (par exemple myservice-uniqueId.search.windows.net<>). Si ce n’est pas spécifié, aucune étiquette de nom de domaine générée automatiquement n’est créée pour le service de recherche. | 'NoReuse' 'Réutilisation de l’abonnement' 'Réutilisation des locataires' |
| ComputeType | Configurez cette propriété pour prendre en charge le service de recherche à l’aide du calcul par défaut ou du calcul confidentiel Azure. | 'Confidentiel' 'Default' |
| dataExfiltrationProtections | Liste des scénarios d’exfiltration de données qui sont explicitement interdits pour le service de recherche. Actuellement, la seule valeur prise en charge est « All » pour désactiver tous les scénarios d’exportation de données possibles avec des contrôles plus précis prévus pour l’avenir. | Tableau de chaînes contenant l’un des éléments suivants : 'BlockAll' |
| disableLocalAuth | Lorsque la valeur est true, les appels au service de recherche ne sont pas autorisés à utiliser les clés API pour l’authentification. Cela ne peut pas être défini sur true si « dataPlaneAuthOptions » sont définis. | Bool |
| encryptionWithCmk | Spécifie toute stratégie concernant le chiffrement des ressources (telles que les index) à l’aide de clés de gestionnaire de clients au sein d’un service de recherche. | EncryptionWithCmk |
| extrémité | Point de terminaison du service Recherche d’IA Azure. | corde |
| mode d’hébergement | Applicable uniquement pour la référence SKU standard3. Vous pouvez définir cette propriété pour activer jusqu’à 3 partitions à haute densité qui autorisent jusqu’à 1 000 index, ce qui est beaucoup plus élevé que les index maximum autorisés pour toute autre référence SKU. Pour la référence SKU standard3, la valeur est « Par défaut » ou « HighDensity ». Pour toutes les autres références SKU, cette valeur doit être « Par défaut ». | 'Default' « Haute densité » |
| ConnaissanceRécupération | Spécifie le plan de facturation pour la récupération d’agents sur le service Recherche Azure AI. Cette configuration n’est disponible que pour certains fourchettes de prix dans certaines régions. | « Libre » « Standard » |
| networkRuleSet | Règles spécifiques au réseau qui déterminent la façon dont le service Recherche d’IA Azure peut être atteint. | NetworkRuleSet |
| nombre de partitions | Le nombre de partitions dans le service de recherche dédié ; Si spécifié, cela peut être 1, 2, 3, 4, 6 ou 12. Les valeurs supérieures à 1 sont valides uniquement pour les références SKU standard. Pour les services « standard3 » avec hostingMode défini sur « highDensity », les valeurs autorisées sont comprises entre 1 et 3. | Int Contraintes: Valeur minimale = 1 Valeur maximale = 12 |
| publicNetworkAccess | Cette valeur peut être définie sur « Activé » pour éviter de casser les modifications sur les ressources et les modèles clients existants. Si la valeur est « Désactivé », le trafic sur l’interface publique n’est pas autorisé et les connexions de point de terminaison privé sont la méthode d’accès exclusive. | 'Désactivé' 'Activé' « SecuredByPerimeter » |
| replicaCount | Le nombre de répliques dans le service de recherche dédié. S’il est spécifié, il doit s’agir d’une valeur comprise entre 1 et 12 inclus pour les références SKU standard ou comprises entre 1 et 3 pour la référence SKU de base. | Int Contraintes: Valeur minimale = 1 Valeur maximale = 12 |
| semanticSearch | Spécifie la disponibilité et le plan de facturation pour la recherche sémantique sur le service Recherche Azure AI. Cette configuration n’est disponible que pour certains fourchettes de prix dans certaines régions. | « Handicapé » « Libre » « Standard » |
| mise à niveauDisponible | Indique si le service de recherche dispose d’une mise à niveau disponible. | 'disponible' 'notAvailable' |
Sku
| Nom | Descriptif | Valeur |
|---|---|---|
| nom | Référence SKU du service de recherche. Les valeurs valides sont les suivantes : « gratuit » : service partagé. « de base » : service dédié avec jusqu’à 3 réplicas. « standard » : service dédié avec jusqu’à 12 partitions et 12 réplicas. « standard2 » : similaire à la norme, mais avec plus de capacité par unité de recherche. « standard3 » : la plus grande offre Standard avec jusqu’à 12 partitions et 12 réplicas (ou jusqu’à 3 partitions avec plus d’index si vous définissez également la propriété hostingMode sur « highDensity »). 'storage_optimized_l1' : prend en charge 1 To par partition, jusqu’à 12 partitions. 'storage_optimized_l2' : Prend en charge 2 To par partition, jusqu’à 12 partitions. « serverless » : Niveau serverless avec capacités d’auto-scaling. | « Basique » « Libre » « sans serveur » « Standard » 'Norme 2' 'Norme 3' 'storage_optimized_l1' 'storage_optimized_l2' |
TrackedResourceTags
| Nom | Descriptif | Valeur |
|---|
userAssignedIdentity
| Nom | Descriptif | Valeur |
|---|