{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "Subscription_Id": { "defaultValue": "f39588f8-a5eb-47fc-8605-68dd157901bd", "type": "String" }, "server_owner_email": { "defaultValue": "", "type": "String" }, "servers_sample_db_server_mas_name": { "defaultValue":"[concat('samplesqldb-', uniqueString(resourceGroup().id))]", "type": "String" }, "privateEndpoints_private_db_name": { "defaultValue": "private-db", "type": "String" }, "virtualNetworks_default_vnet_name": { "defaultValue": "defaultvnet", "type": "String" }, "servers_sql_db_awd_login_user": { "defaultValue": "sql-admin", "type": "String" }, "servers_sql_db_awd_login_password": { "defaultValue": "", "type": "securestring" }, "storageAccounts_storagessqldb_name": { "defaultValue":"[concat('stgsql', uniqueString(resourceGroup().id)) ]", "type": "String" }, "servers_sampledbmodel_name": { "defaultValue": "sampledbmodel", "type": "String" }, "privateEndpoints_data_endpoint_name": { "defaultValue": "data-endpoint", "type": "String" }, "networkInterfaces_private_db_nic_name": { "defaultValue": "[concat('private-db.nic.', uniqueString(resourceGroup().id))]", "type": "String" } }, "variables": {}, "resources": [ { "type": "Microsoft.AnalysisServices/servers", "apiVersion": "2017-08-01", "name": "[concat(parameters('servers_sampledbmodel_name'),uniqueString(resourceGroup().id))]", "location": "[resourceGroup().location]", "sku": { "name": "D1", "tier": "Development", "capacity": 1 }, "properties": { "managedMode": 1, "asAdministrators": { "members": [ "[parameters('server_owner_email')]" ] }, "querypoolConnectionMode": "All", "serverMonitorMode": 1 } }, { "type": "Microsoft.Network/networkInterfaces", "apiVersion": "2020-11-01", "name": "[parameters('networkInterfaces_private_db_nic_name')]", "location": "[resourceGroup().location]", "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_default_vnet_name'))]" ], "properties": { "ipConfigurations": [ { "name": "[concat('privateEndpointIpConfig.', uniqueString(resourceGroup().id))]", "properties": { "privateIPAddress": "10.0.2.4", "privateIPAllocationMethod": "Dynamic", "subnet": { "id": "[concat('/subscriptions/', concat(parameters('Subscription_Id'),concat('/resourceGroups/' ,concat(resourceGroup().name, concat('/providers/Microsoft.Network/virtualNetworks/',parameters('virtualNetworks_default_vnet_name'))))), '/subnets/private-data')]"}, "primary": true, "privateIPAddressVersion": "IPv4" } } ], "dnsSettings": { "dnsServers": [] }, "enableAcceleratedNetworking": false, "enableIPForwarding": false } }, { "type": "Microsoft.Network/virtualNetworks", "apiVersion": "2020-11-01", "name": "[parameters('virtualNetworks_default_vnet_name')]", "location": "[resourceGroup().location]", "properties": { "addressSpace": { "addressPrefixes": [ "10.0.0.0/16" ] }, "subnets": [ { "name": "default", "properties": { "addressPrefix": "10.0.0.0/24", "delegations": [], "privateEndpointNetworkPolicies": "Enabled", "privateLinkServiceNetworkPolicies": "Enabled" } }, { "name": "private-data", "properties": { "addressPrefix": "10.0.1.0/24", "serviceEndpoints": [ { "service": "Microsoft.Sql", "locations": [ "[resourceGroup().location]" ] } ], "delegations": [], "privateEndpointNetworkPolicies": "Disabled", "privateLinkServiceNetworkPolicies": "Enabled" } } ], "virtualNetworkPeerings": [], "enableDdosProtection": false } }, { "type": "Microsoft.Sql/servers", "apiVersion": "2021-08-01-preview", "name": "[parameters('servers_sample_db_server_mas_name')]", "location": "[resourceGroup().location]", "kind": "v12.0", "properties": { "administratorLogin": "[parameters('servers_sql_db_awd_login_user')]", "administratorLoginPassword": "[parameters('servers_sql_db_awd_login_password')]", "version": "12.0", "minimalTlsVersion": "1.2", "publicNetworkAccess": "Enabled", "restrictOutboundNetworkAccess": "Disabled" } }, { "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2021-08-01", "name": "[parameters('storageAccounts_storagessqldb_name')]", "location": "[resourceGroup().location]", "sku": { "name": "Standard_LRS", "tier": "Standard" }, "kind": "StorageV2", "properties": { "minimumTlsVersion": "TLS1_2", "allowBlobPublicAccess": false, "networkAcls": { "bypass": "AzureServices", "virtualNetworkRules": [], "ipRules": [], "defaultAction": "Allow" }, "supportsHttpsTrafficOnly": true, "encryption": { "services": { "file": { "keyType": "Account", "enabled": true }, "blob": { "keyType": "Account", "enabled": true } }, "keySource": "Microsoft.Storage" }, "accessTier": "Hot" } }, { "type": "Microsoft.Network/privateEndpoints", "apiVersion": "2020-11-01", "name": "[parameters('privateEndpoints_private_db_name')]", "location": "[resourceGroup().location]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]", "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_default_vnet_name'))]", "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "privateLinkServiceConnections": [ { "name": "[parameters('privateEndpoints_private_db_name')]", "properties": { "privateLinkServiceId": "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]", "groupIds": [ "SqlServer" ], "privateLinkServiceConnectionState": { "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" } } } ], "manualPrivateLinkServiceConnections": [], "subnet": { "id": "[concat('/subscriptions/', concat(parameters('Subscription_Id'),concat('/resourceGroups/' ,concat(resourceGroup().name, concat('/providers/Microsoft.Network/virtualNetworks/',parameters('virtualNetworks_default_vnet_name'))))), '/subnets/private-data')]" }, "customDnsConfigs": [ { "fqdn": "sample-db-server-mas.database.windows.net", "ipAddresses": [ "10.0.2.4" ] } ] } }, { "type": "Microsoft.Network/virtualNetworks/subnets", "apiVersion": "2020-11-01", "name": "[concat(parameters('virtualNetworks_default_vnet_name'), '/default')]", "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_default_vnet_name'))]" ], "properties": { "addressPrefix": "10.0.0.0/24", "delegations": [], "privateEndpointNetworkPolicies": "Enabled", "privateLinkServiceNetworkPolicies": "Enabled" } }, { "type": "Microsoft.Network/virtualNetworks/subnets", "apiVersion": "2020-11-01", "name": "[concat(parameters('virtualNetworks_default_vnet_name'), '/private-data')]", "dependsOn": [ "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworks_default_vnet_name'))]" ], "properties": { "addressPrefix": "10.0.1.0/24", "serviceEndpoints": [ { "service": "Microsoft.Sql", "locations": [ "[resourceGroup().location]" ] } ], "delegations": [], "privateEndpointNetworkPolicies": "Disabled", "privateLinkServiceNetworkPolicies": "Enabled" } }, { "type": "Microsoft.Sql/servers/advisors", "apiVersion": "2014-04-01", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/ForceLastGoodPlan')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "properties": { "autoExecuteValue": "Enabled" } }, { "type": "Microsoft.Sql/servers/connectionPolicies", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/default')]", "location": "[resourceGroup().location]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "properties": { "connectionType": "Default" } }, { "type": "Microsoft.Sql/servers/encryptionProtector", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/current')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "kind": "servicemanaged", "properties": { "serverKeyName": "ServiceManaged", "serverKeyType": "ServiceManaged", "autoRotationEnabled": false } }, { "type": "Microsoft.Sql/servers/firewallRules", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/ClientIPAddress_2022-3-22_15-12-16')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "properties": { "startIpAddress": "78.18.89.56", "endIpAddress": "78.18.89.56" } }, { "type": "Microsoft.Sql/servers/firewallRules", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/manual')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "properties": { "startIpAddress": "13.93.92.205", "endIpAddress": "13.93.92.205" } }, { "type": "Microsoft.Sql/servers/securityAlertPolicies", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/Default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "properties": { "state": "Enabled", "disabledAlerts": [ "" ], "emailAddresses": [ "" ], "emailAccountAdmins": true, "retentionDays": 0 } }, { "type": "Microsoft.Storage/storageAccounts/blobServices", "apiVersion": "2021-08-01", "name": "[concat(parameters('storageAccounts_storagessqldb_name'), '/default')]", "dependsOn": [ "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccounts_storagessqldb_name'))]" ], "sku": { "name": "Standard_LRS", "tier": "Standard" }, "properties": { "cors": { "corsRules": [] }, "deleteRetentionPolicy": { "enabled": false } } }, { "type": "Microsoft.Storage/storageAccounts/fileServices", "apiVersion": "2021-08-01", "name": "[concat(parameters('storageAccounts_storagessqldb_name'), '/default')]", "dependsOn": [ "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccounts_storagessqldb_name'))]" ], "sku": { "name": "Premium_LRS", "tier": "Premium" }, "kind": "FileStorage", "properties": { "allowBlobPublicAccess": true, "networkAcls": { "bypass": "AzureServices", "virtualNetworkRules": [], "ipRules": [], "defaultAction": "Allow" }, "supportsHttpsTrafficOnly": true, "encryption": { "services": { "file": { "keyType": "Account", "enabled": true }, "blob": { "keyType": "Account", "enabled": true } }, "keySource": "Microsoft.Storage" } } }, { "type": "Microsoft.Storage/storageAccounts/queueServices", "apiVersion": "2021-08-01", "name": "[concat(parameters('storageAccounts_storagessqldb_name'), '/default')]", "dependsOn": [ "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccounts_storagessqldb_name'))]" ], "properties": { "cors": { "corsRules": [] } } }, { "type": "Microsoft.Storage/storageAccounts/tableServices", "apiVersion": "2021-08-01", "name": "[concat(parameters('storageAccounts_storagessqldb_name'), '/default')]", "dependsOn": [ "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccounts_storagessqldb_name'))]" ], "properties": { "cors": { "corsRules": [] } } }, { "type": "Microsoft.Storage/storageAccounts/blobServices/containers", "apiVersion": "2021-08-01", "name": "[concat(parameters('storageAccounts_storagessqldb_name'), '/default/vulnerability-assessment')]", "dependsOn": [ "[resourceId('Microsoft.Storage/storageAccounts/blobServices', parameters('storageAccounts_storagessqldb_name'), 'default')]", "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccounts_storagessqldb_name'))]" ], "properties": { "immutableStorageWithVersioning": { "enabled": false }, "defaultEncryptionScope": "$account-encryption-key", "denyEncryptionScopeOverride": false, "publicAccess": "None" } }, { "type": "Microsoft.Sql/servers/databases", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers', parameters('servers_sample_db_server_mas_name'))]" ], "location": "[resourceGroup().location]", "sku": { "name": "GP_Gen5", "tier": "GeneralPurpose", "family": "Gen5", "capacity": 2 }, "kind": "v12.0,user,vcore", "properties": { "collation": "SQL_Latin1_General_CP1_CI_AS", "maxSizeBytes": 34359738368, "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", "zoneRedundant": false, "licenseType": "LicenseIncluded", "readScale": "Disabled", "requestedBackupStorageRedundancy": "local", "maintenanceConfigurationId": "/subscriptions/f39588f8-a5eb-47fc-8605-68dd157901bd/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default", "isLedgerOn": false, "sampleName": "AdventureWorksLT" } }, { "type": "Microsoft.Sql/servers/databases/advisors", "apiVersion": "2014-04-01", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/CreateIndex')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "autoExecuteValue": "Disabled" } }, { "type": "Microsoft.Sql/servers/databases/advisors", "apiVersion": "2014-04-01", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/DropIndex')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "autoExecuteValue": "Disabled" } }, { "type": "Microsoft.Sql/servers/databases/advisors", "apiVersion": "2014-04-01", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/ForceLastGoodPlan')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "autoExecuteValue": "Enabled" } }, { "type": "Microsoft.Sql/servers/databases/auditingPolicies", "apiVersion": "2014-04-01", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/Default')]", "location": "[resourceGroup().location]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "auditingState": "Disabled" } }, { "type": "Microsoft.Sql/servers/databases/auditingSettings", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/Default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "retentionDays": 0, "isAzureMonitorTargetEnabled": false, "state": "Disabled", "storageAccountSubscriptionId": "[parameters('Subscription_Id')]" } }, { "type": "Microsoft.Sql/servers/databases/backupLongTermRetentionPolicies", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "weeklyRetention": "PT0S", "monthlyRetention": "PT0S", "yearlyRetention": "PT0S", "weekOfYear": 1 } }, { "type": "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "retentionDays": 7, "diffBackupIntervalInHours": 12 } }, { "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/Default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "retentionDays": 0, "isAzureMonitorTargetEnabled": false, "state": "Disabled", "storageAccountSubscriptionId": "[parameters('Subscription_Id')]" } }, { "type": "Microsoft.Sql/servers/databases/geoBackupPolicies", "apiVersion": "2014-04-01", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/Default')]", "location": "[resourceGroup().location]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "state": "Disabled" } }, { "type": "Microsoft.Sql/servers/databases/securityAlertPolicies", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/Default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "state": "Disabled", "disabledAlerts": [ "" ], "emailAddresses": [ "" ], "emailAccountAdmins": false, "retentionDays": 0 } }, { "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", "apiVersion": "2021-08-01-preview", "name": "[concat(parameters('servers_sample_db_server_mas_name'), '/samplesales/Default')]", "dependsOn": [ "[resourceId('Microsoft.Sql/servers/databases', parameters('servers_sample_db_server_mas_name'), 'samplesales')]" ], "properties": { "recurringScans": { "isEnabled": false, "emailSubscriptionAdmins": true } } } ] }