Microsoft. Server SQL 2025-08-01-preview

Definizione di risorsa Bicep

Il tipo di risorsa server può essere distribuito con operazioni destinate a:

  • Resource groups - Vedi resource group

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.

Esempi di utilizzo

Esempi di Bicep

Un esempio base di distribuzione di Microsoft SQL Azure Database Server.

param resourceName string = 'acctest0001'
param location string = 'westeurope'
@secure()
@description('The administrator password for the SQL server')
param sqlAdministratorPassword string

resource server 'Microsoft.Sql/servers@2021-02-01-preview' = {
  name: resourceName
  location: location
  properties: {
    administratorLogin: 'mradministrator'
    administratorLoginPassword: sqlAdministratorPassword
    minimalTlsVersion: '1.2'
    publicNetworkAccess: 'Enabled'
    restrictOutboundNetworkAccess: 'Disabled'
    version: '12.0'
  }
}

Moduli verificati di Azure

Per distribuire questo tipo di risorsa, è possibile usare moduli verificati di Azure.

Modulo Description
SQL Server di Azure AVM Resource Module per Azure SQL Server

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 Description
Azure SQL Server con Audit scritto a Log Analytics Questo template ti permette di distribuire un server Azure SQL con Auditing abilitato per scrivere log di audit su Log Analytics (OMS workspace)
Crea un SQL Server e un database Questo modello consente di creare un database SQL e un server.
Pool SQL dedicato con crittografia trasparente Crea un SQL Server e un pool SQL dedicato (precedentemente SQL DW) con Transparent Data Encryption.
Distribuire Sports Analytics nell'architettura di Azure Crea un account di archiviazione di Azure con ADLS Gen 2 abilitato, un'istanza di Azure Data Factory con servizi collegati per l'account di archiviazione (un database SQL di Azure se distribuito) e un'istanza di Azure Databricks. All'identità di AAD per l'utente che distribuisce il modello e all'identità gestita per l'istanza di Azure Data Factory verrà concesso il ruolo Collaboratore ai dati del BLOB di archiviazione nell'account di archiviazione. Sono disponibili anche opzioni per distribuire un'istanza di Azure Key Vault, un database SQL di Azure e un hub eventi di Azure (per i casi d'uso di streaming). Quando viene distribuito un insieme di credenziali delle chiavi di Azure, all'identità gestita della data factory e all'identità di AAD per l'utente che distribuisce il modello verrà concesso il ruolo utente Segreti dell'insieme di credenziali delle chiavi.
esempio di endpoint privato Questo modello illustra come creare un endpoint privato che punta ad Azure SQL Server
Effettuare il provisioning di un'app Web con un database SQL Questo modello effettua il provisioning di un'app Web, un database SQL, impostazioni di scalabilità automatica, regole di avviso e Informazioni dettagliate app. Configura una stringa di connessione nell'app Web per il database.
'app Web Docker Sonarqube in Linux con Azure SQL Questo modello distribuisce Sonarqube in un contenitore Linux dell'app Web del servizio app di Azure usando l'immagine Sonarqube ufficiale e supportata da un'istanza di Azure SQL Server.
SQL Questo modello consente di creare un server logico SQL.
'app Web con identità gestita, SQL Server e ΑΙ Esempio semplice per distribuire l'infrastruttura di Azure per app + dati + identità gestita e monitoraggio

Formato risorsa

Per creare un Microsoft. Risorsa SQL/server, aggiungi il seguente Bicep al tuo template.

resource symbolicname 'Microsoft.Sql/servers@2025-08-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    administratorLogin: 'string'
    administratorLoginPassword: 'string'
    administrators: {
      administratorType: 'string'
      azureADOnlyAuthentication: bool
      login: 'string'
      principalType: 'string'
      sid: 'string'
      tenantId: 'string'
    }
    createMode: 'string'
    federatedClientId: 'string'
    isIPv6Enabled: 'string'
    keyId: 'string'
    minimalTlsVersion: 'string'
    primaryUserAssignedIdentityId: 'string'
    publicNetworkAccess: 'string'
    restrictOutboundNetworkAccess: 'string'
    retentionDays: int
    version: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Valori delle proprietà

Microsoft.Sql/servers

Nome Description Value
identity Identità di Azure Active Directory del server. ResourceIdentity
location Posizione geografica in cui risiede la risorsa stringa (obbligatorio)
nome Nome della risorsa stringa (obbligatorio)
properties Proprietà delle risorse. ServerProperties
etichette Tag delle risorse Dizionario di nomi e valori di tag. Vedi tag nei template

ResourceIdentity

Nome Description Value
type Tipo di identità. Impostare questa opzione su "SystemAssigned" per creare e assegnare automaticamente un'entità di azure Active Directory per la risorsa. 'Nessuno'
'Assegnato dal sistema'
'SystemAssigned,UserAssigned'
'UserAssigned'
userAssignedIdentities ID risorsa delle identità assegnate dall'utente da usare ResourceIdentityUserAssignedIdentities

ResourceIdentityUserAssignedIdentities

Nome Description Value

ServerExternalAdministrator

Nome Description Value
administratorType Tipo dell'amministratore di sever. 'ActiveDirectory'
azureADOnlyAuthentication Autenticazione di Azure Active Directory abilitata solo. bool
Accesso al sistema Nome di accesso dell'amministratore del server. string
principalType Tipo di entità dell'amministratore di sever. 'Application'
'Gruppo'
'User'
sid SID (ID oggetto) dell'amministratore del server. string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
tenantId ID tenant dell'amministratore. string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$

ServerProperties

Nome Description Value
administratorLogin Nome utente amministratore per il server. Una volta creato, non è possibile modificarlo. string
administratorLoginPassword Password di accesso dell'amministratore (necessaria per la creazione del server). string

Vincoli:
Valore sensibile. Passare come parametro sicuro.
administrators L'amministratore di Azure Active Directory può essere usato durante la creazione del server e per gli aggiornamenti del server, ad eccezione della proprietà azureADOnlyAuthentication. Per aggiornare la proprietà azureADOnlyAuthentication, è necessario usare una singola API. ServerExternalAdministrator
createMode Modalità di creazione per il server, gli unici valori validi per questo sono Normale e Ripristino. 'Normal'
'Ripristina'
federatedClientId ID client usato per lo scenario cmk tra tenant string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
isIPv6Enabled Indica se abilitare o meno il supporto IPv6 per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
keyId URI della chiave da usare per la crittografia. string
minimalTlsVersion Versione minima di TLS. Valori consentiti: 'Nessuno', 1.0', '1.1', '1.2', '1.3' '1.0'
'1.1'
'1.2'
'1.3'
'Nessuno'
primaryUserAssignedIdentityId ID risorsa di un'identità assegnata dall'utente da usare per impostazione predefinita. string
publicNetworkAccess Indica se l'accesso all'endpoint pubblico è consentito per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' o 'SecuredByPerimeter' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
restrictOutboundNetworkAccess Indica se limitare o meno l'accesso alla rete in uscita per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
retentionDays Numero di giorni in cui il server rimarrà eliminato temporaneamente. int
version Versione del server. string

TrackedResourceTags

Nome Description Value

UserIdentity

Nome Description Value

Definizione di risorsa del modello di Resource Manager

Il tipo di risorsa server può essere distribuito con operazioni destinate a:

Esempi di utilizzo

Modelli di avvio rapido di Azure

I modelli di avvio rapido di Azure seguenti distribuire questo tipo di risorsa.

Template Description
'ambiente del servizio app con back-end SQL di Azure

Pubblica su Azure
Questo modello crea un ambiente del servizio app con un back-end SQL di Azure insieme agli endpoint privati insieme alle risorse associate in genere usate in un ambiente privato/isolato.
ridimensionamento automatico del set di scalabilità di macchine virtuali Windows LANSA con il database SQL di Azure

Pubblica su Azure
Il modello distribuisce un set di scalabilità di macchine virtuali Windows con un numero desiderato di macchine virtuali nel set di scalabilità e un'identità del servizio gestito laNSA da installare in ogni macchina virtuale. Dopo aver distribuito il set di scalabilità di macchine virtuali, viene usata un'estensione di script personalizzata per installare l'identità del servizio gestito LANSA)
Sql Server di Azure con il controllo scritto in un archivio BLOB

Pubblica su Azure
Questo modello consente di distribuire un server SQL di Azure con il controllo abilitato per scrivere log di controllo in un archivio BLOB
Azure SQL Server con Audit scritto su Event Hub

Pubblica su Azure
Questo template ti permette di distribuire un server Azure SQL con Auditing abilitato per scrivere i log di audit su Event Hub
Azure SQL Server con Audit scritto a Log Analytics

Pubblica su Azure
Questo template ti permette di distribuire un server Azure SQL con Auditing abilitato per scrivere log di audit su Log Analytics (OMS workspace)
Crea un SQL Server e un database

Pubblica su Azure
Questo modello consente di creare un database SQL e un server.
Creare un'app Web + Cache Redis + database SQL con un modello

Pubblica su Azure
Questo modello crea un'app Web di Azure con cache Redis e un database SQL.
Crea un Azure SQL Server, con protezione per crittografia dati

Pubblica su Azure
Questo template crea un server Azure SQL, attiva il data encryption protector utilizzando una determinata chiave memorizzata in un determinato Key Vault
Crea server Azure SQL e database con Gruppo di Failover

Pubblica su Azure
Crea due server Azure SQL, un database e un gruppo di failover.
Creare, configurare e distribuire un'applicazione Web in una macchina virtuale di Azure

Pubblica su Azure
Creare e configurare una macchina virtuale Windows con il database sql di Azure e distribuire l'applicazione Web nell'ambiente usando PowerShell DSC
Pool SQL dedicato con crittografia trasparente

Pubblica su Azure
Crea un SQL Server e un pool SQL dedicato (precedentemente SQL DW) con Transparent Data Encryption.
Distribuire un cluster HDInsight e un database SQL

Pubblica su Azure
Questo modello consente di creare un cluster HDInsight e un database SQL per il test di Sqoop.
Distribuisci un nuovo SQL Elastic Pool

Pubblica su Azure
Questo template ti permette di distribuire un nuovo SQL Elastic Pool con il nuovo SQL Server associato e nuovi database SQL da assegnare.
Distribuire Octopus Deploy 3.0 con una licenza di valutazione

Pubblica su Azure
Questo modello consente di distribuire un singolo server Octopus Deploy 3.0 con una licenza di valutazione. Verrà distribuita in una singola macchina virtuale Windows Server 2012R2 (D2 Standard) e in un database SQL (livello S1) nel percorso specificato per il gruppo di risorse.
Distribuire Sports Analytics nell'architettura di Azure

Pubblica su Azure
Crea un account di archiviazione di Azure con ADLS Gen 2 abilitato, un'istanza di Azure Data Factory con servizi collegati per l'account di archiviazione (un database SQL di Azure se distribuito) e un'istanza di Azure Databricks. All'identità di AAD per l'utente che distribuisce il modello e all'identità gestita per l'istanza di Azure Data Factory verrà concesso il ruolo Collaboratore ai dati del BLOB di archiviazione nell'account di archiviazione. Sono disponibili anche opzioni per distribuire un'istanza di Azure Key Vault, un database SQL di Azure e un hub eventi di Azure (per i casi d'uso di streaming). Quando viene distribuito un insieme di credenziali delle chiavi di Azure, all'identità gestita della data factory e all'identità di AAD per l'utente che distribuisce il modello verrà concesso il ruolo utente Segreti dell'insieme di credenziali delle chiavi.
'app Django con database SQL

Pubblica su Azure
Questo modello usa l'estensione CustomScript linux di Azure per distribuire un'applicazione. Questo esempio crea una macchina virtuale Ubuntu, esegue un'installazione invisibile all'utente di Python, Django e Apache, quindi crea una semplice app Django. Il modello crea anche un database SQL, con una tabella di esempio con alcuni dati di esempio visualizzati nel Web browser usando una query
Enterprise Governance-AppService, database SQL, AD, OMS, Runbook

Pubblica su Azure
L'adozione del cloud per un'azienda, piccola o grande, richiede modelli di governance responsabili ed efficienti per derivare valore dalle distribuzioni cloud. CloudWise (un nome di codice per la soluzione), è una soluzione composita disponibile nelle guide introduttive per i partner di Azure, è un abilitatore di adozione per clienti, integratori di sistemi e partner, che offre una soluzione self-service, automatizzata e operativa, incentrata sull'ottimizzazione dei costi, sul miglioramento dell'affidabilità delle applicazioni, sulla riduzione dei rischi aziendali. La soluzione evidenzia i pilastri principali della governance di Visibility and Control.
EPiserverCMS in Azure

Pubblica su Azure
Questo modello consente di creare risorse necessarie per la distribuzione EpiServerCMS in Azure
sito Web eShop con l'ambiente del servizio app con bilanciamento del carico interno

Pubblica su Azure
Un ambiente del servizio app è un'opzione del piano di servizio Premium del servizio app di Azure che offre un ambiente completamente isolato e dedicato per l'esecuzione sicura di app del servizio app di Azure su larga scala, tra cui app Web, app per dispositivi mobili e app per le API.
Esperienza Kentico

Pubblica su Azure
Questo modello facilita la distribuzione delle risorse necessarie per ospitare gli ambienti Kentico Xperience in Microsoft Azure.
Eseguire la migrazione al database SQL di Azure usando Servizio Migrazione del database di Azure

Pubblica su Azure
Il Servizio Migrazione del database di Azure è progettato per semplificare il processo di migrazione dei database locali ad Azure. Il Servizio Migrazione del database semplifica la migrazione dei database SQL Server e Oracle locali esistenti al database SQL di Azure, all'istanza gestita di SQL di Azure o a Microsoft SQL Server in una macchina virtuale di Azure. Questo modello distribuirà un'istanza del servizio Migrazione del database di Azure, una macchina virtuale di Azure in cui è installato SQL Server che fungerà da server di origine con database creato in modo preliminare e un server di database SQL di Azure di destinazione che avrà uno schema pre-creato del database di cui eseguire la migrazione dal server di origine al server di destinazione. Il modello distribuirà anche le risorse necessarie, ad esempio scheda di interfaccia di rete, rete virtuale e così via, per supportare la macchina virtuale di origine, il servizio Servizio Migrazione del database e il server di destinazione.
app Web del portale video di Orchard CMS

Pubblica su Azure
Questo modello offre un modo semplice per distribuire Orchard CMS nelle app Web del servizio app di Azure con il modulo Servizi multimediali di Azure abilitato e configurato.
esempio di endpoint privato

Pubblica su Azure
Questo modello illustra come creare un endpoint privato che punta ad Azure SQL Server
Effettuare il provisioning di un'app per dispositivi mobili con un database SQL

Pubblica su Azure
Questo modello effettua il provisioning di un'app per dispositivi mobili, un database SQL e un hub di notifica. Configura una stringa di connessione nell'app per dispositivi mobili per il database e l'hub di notifica.
Provisiona un database SQL con TDE

Pubblica su Azure
Questo modello prevede un SQL Server con firewall aperto per il traffico Azure e un database SQL con Transparent Data Encryption (TDE).
Effettuare il provisioning di un'app Web con un database SQL

Pubblica su Azure
Questo modello effettua il provisioning di un'app Web, un database SQL, impostazioni di scalabilità automatica, regole di avviso e Informazioni dettagliate app. Configura una stringa di connessione nell'app Web per il database.
Servizi Desktop remoto con a disponibilità elevata

Pubblica su Azure
Questo codice di esempio di modello di Resource Manager distribuirà un lab di raccolta di sessioni di Servizi Desktop remoto 2019 con disponibilità elevata. L'obiettivo è distribuire una soluzione completamente ridondante e a disponibilità elevata per Servizi Desktop remoto usando Windows Server 2019.
app Web Umbraco CMS scalabile

Pubblica su Azure
Questo modello offre un modo semplice per distribuire l'app Web umbraco CMS nelle app Web del servizio app di Azure.
semplice app Web Umbraco CMS

Pubblica su Azure
Questo modello offre un modo semplice per distribuire l'app Web umbraco CMS nelle app Web del servizio app di Azure.
'app Web Docker Sonarqube in Linux con Azure SQL

Pubblica su Azure
Questo modello distribuisce Sonarqube in un contenitore Linux dell'app Web del servizio app di Azure usando l'immagine Sonarqube ufficiale e supportata da un'istanza di Azure SQL Server.
SQL

Pubblica su Azure
Questo modello consente di creare un server logico SQL.
SQL con autenticazione solo Azure AD

Pubblica su Azure
Questo modello ti permette di creare server SQL in Azure con il set di amministrazione di Azure AD e la funzione di autenticazione solo per Azure AD abilitate.
App Web con un database SQL, Azure Cosmos DB, Ricerca di Azure

Pubblica su Azure
Questo modello effettua il provisioning di un'app Web, un database SQL, Azure Cosmos DB, Ricerca di Azure e Application Insights.
'app Web con identità gestita, SQL Server e ΑΙ

Pubblica su Azure
Esempio semplice per distribuire l'infrastruttura di Azure per app + dati + identità gestita e monitoraggio
'app Web che usa un endpoint privato SQL di Azure

Pubblica su Azure
Questo modello illustra come creare un'app Web che usa un endpoint privato che punta ad Azure SQL Server

Formato risorsa

Per creare un Microsoft. Risorsa SQL/server, aggiungi il seguente JSON al tuo template.

{
  "type": "Microsoft.Sql/servers",
  "apiVersion": "2025-08-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "administratorLogin": "string",
    "administratorLoginPassword": "string",
    "administrators": {
      "administratorType": "string",
      "azureADOnlyAuthentication": "bool",
      "login": "string",
      "principalType": "string",
      "sid": "string",
      "tenantId": "string"
    },
    "createMode": "string",
    "federatedClientId": "string",
    "isIPv6Enabled": "string",
    "keyId": "string",
    "minimalTlsVersion": "string",
    "primaryUserAssignedIdentityId": "string",
    "publicNetworkAccess": "string",
    "restrictOutboundNetworkAccess": "string",
    "retentionDays": "int",
    "version": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valori delle proprietà

Microsoft.Sql/servers

Nome Description Value
apiVersion Versione dell'API '2025-08-01-anteprima'
identity Identità di Azure Active Directory del server. ResourceIdentity
location Posizione geografica in cui risiede la risorsa stringa (obbligatorio)
nome Nome della risorsa stringa (obbligatorio)
properties Proprietà delle risorse. ServerProperties
etichette Tag delle risorse Dizionario di nomi e valori di tag. Vedi tag nei template
type Tipo di risorsa 'Microsoft.Sql/server'

ResourceIdentity

Nome Description Value
type Tipo di identità. Impostare questa opzione su "SystemAssigned" per creare e assegnare automaticamente un'entità di azure Active Directory per la risorsa. 'Nessuno'
'Assegnato dal sistema'
'SystemAssigned,UserAssigned'
'UserAssigned'
userAssignedIdentities ID risorsa delle identità assegnate dall'utente da usare ResourceIdentityUserAssignedIdentities

ResourceIdentityUserAssignedIdentities

Nome Description Value

ServerExternalAdministrator

Nome Description Value
administratorType Tipo dell'amministratore di sever. 'ActiveDirectory'
azureADOnlyAuthentication Autenticazione di Azure Active Directory abilitata solo. bool
Accesso al sistema Nome di accesso dell'amministratore del server. string
principalType Tipo di entità dell'amministratore di sever. 'Application'
'Gruppo'
'User'
sid SID (ID oggetto) dell'amministratore del server. string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
tenantId ID tenant dell'amministratore. string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$

ServerProperties

Nome Description Value
administratorLogin Nome utente amministratore per il server. Una volta creato, non è possibile modificarlo. string
administratorLoginPassword Password di accesso dell'amministratore (necessaria per la creazione del server). string

Vincoli:
Valore sensibile. Passare come parametro sicuro.
administrators L'amministratore di Azure Active Directory può essere usato durante la creazione del server e per gli aggiornamenti del server, ad eccezione della proprietà azureADOnlyAuthentication. Per aggiornare la proprietà azureADOnlyAuthentication, è necessario usare una singola API. ServerExternalAdministrator
createMode Modalità di creazione per il server, gli unici valori validi per questo sono Normale e Ripristino. 'Normal'
'Ripristina'
federatedClientId ID client usato per lo scenario cmk tra tenant string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
isIPv6Enabled Indica se abilitare o meno il supporto IPv6 per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
keyId URI della chiave da usare per la crittografia. string
minimalTlsVersion Versione minima di TLS. Valori consentiti: 'Nessuno', 1.0', '1.1', '1.2', '1.3' '1.0'
'1.1'
'1.2'
'1.3'
'Nessuno'
primaryUserAssignedIdentityId ID risorsa di un'identità assegnata dall'utente da usare per impostazione predefinita. string
publicNetworkAccess Indica se l'accesso all'endpoint pubblico è consentito per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' o 'SecuredByPerimeter' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
restrictOutboundNetworkAccess Indica se limitare o meno l'accesso alla rete in uscita per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
retentionDays Numero di giorni in cui il server rimarrà eliminato temporaneamente. int
version Versione del server. string

TrackedResourceTags

Nome Description Value

UserIdentity

Nome Description Value

Definizione di risorsa Terraform (provider AzAPI)

Il tipo di risorsa server 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

Un esempio base di distribuzione di Microsoft SQL Azure Database Server.

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

variable "sql_administrator_password" {
  type        = string
  description = "The administrator password for the SQL server"
  sensitive   = true
}

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

resource "azapi_resource" "server" {
  type      = "Microsoft.Sql/servers@2021-02-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.sql_administrator_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Moduli verificati di Azure

Per distribuire questo tipo di risorsa, è possibile usare moduli verificati di Azure.

Modulo Description
SQL Server di Azure AVM Resource Module per Azure SQL Server

Formato risorsa

Per creare un Microsoft. Risorsa SQL/server, aggiungi il seguente Terraform al tuo template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers@2025-08-01-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      administratorLogin = "string"
      administratorLoginPassword = "string"
      administrators = {
        administratorType = "string"
        azureADOnlyAuthentication = bool
        login = "string"
        principalType = "string"
        sid = "string"
        tenantId = "string"
      }
      createMode = "string"
      federatedClientId = "string"
      isIPv6Enabled = "string"
      keyId = "string"
      minimalTlsVersion = "string"
      primaryUserAssignedIdentityId = "string"
      publicNetworkAccess = "string"
      restrictOutboundNetworkAccess = "string"
      retentionDays = int
      version = "string"
    }
  }
}

Valori delle proprietà

Microsoft.Sql/servers

Nome Description Value
identity Identità di Azure Active Directory del server. ResourceIdentity
location Posizione geografica in cui risiede la risorsa stringa (obbligatorio)
nome Nome della risorsa stringa (obbligatorio)
properties Proprietà delle risorse. ServerProperties
etichette Tag delle risorse Dizionario di nomi e valori di tag.
type Tipo di risorsa "Microsoft. Sql/servers@2025-08-01-anteprima"

ResourceIdentity

Nome Description Value
type Tipo di identità. Impostare questa opzione su "SystemAssigned" per creare e assegnare automaticamente un'entità di azure Active Directory per la risorsa. 'Nessuno'
'Assegnato dal sistema'
'SystemAssigned,UserAssigned'
'UserAssigned'
userAssignedIdentities ID risorsa delle identità assegnate dall'utente da usare ResourceIdentityUserAssignedIdentities

ResourceIdentityUserAssignedIdentities

Nome Description Value

ServerExternalAdministrator

Nome Description Value
administratorType Tipo dell'amministratore di sever. 'ActiveDirectory'
azureADOnlyAuthentication Autenticazione di Azure Active Directory abilitata solo. bool
Accesso al sistema Nome di accesso dell'amministratore del server. string
principalType Tipo di entità dell'amministratore di sever. 'Application'
'Gruppo'
'User'
sid SID (ID oggetto) dell'amministratore del server. string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
tenantId ID tenant dell'amministratore. string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$

ServerProperties

Nome Description Value
administratorLogin Nome utente amministratore per il server. Una volta creato, non è possibile modificarlo. string
administratorLoginPassword Password di accesso dell'amministratore (necessaria per la creazione del server). string

Vincoli:
Valore sensibile. Passare come parametro sicuro.
administrators L'amministratore di Azure Active Directory può essere usato durante la creazione del server e per gli aggiornamenti del server, ad eccezione della proprietà azureADOnlyAuthentication. Per aggiornare la proprietà azureADOnlyAuthentication, è necessario usare una singola API. ServerExternalAdministrator
createMode Modalità di creazione per il server, gli unici valori validi per questo sono Normale e Ripristino. 'Normal'
'Ripristina'
federatedClientId ID client usato per lo scenario cmk tra tenant string

Vincoli:
Lunghezza minima = 36
Lunghezza massima = 36
Modello = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
isIPv6Enabled Indica se abilitare o meno il supporto IPv6 per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
keyId URI della chiave da usare per la crittografia. string
minimalTlsVersion Versione minima di TLS. Valori consentiti: 'Nessuno', 1.0', '1.1', '1.2', '1.3' '1.0'
'1.1'
'1.2'
'1.3'
'Nessuno'
primaryUserAssignedIdentityId ID risorsa di un'identità assegnata dall'utente da usare per impostazione predefinita. string
publicNetworkAccess Indica se l'accesso all'endpoint pubblico è consentito per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' o 'SecuredByPerimeter' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
restrictOutboundNetworkAccess Indica se limitare o meno l'accesso alla rete in uscita per questo server. Il valore è facoltativo, ma se passato, deve essere 'Enabled' o 'Disabled' 'Disabilitato'
'Abilitato'
'SecuredByPerimeter'
retentionDays Numero di giorni in cui il server rimarrà eliminato temporaneamente. int
version Versione del server. string

TrackedResourceTags

Nome Description Value

UserIdentity

Nome Description Value