Microsoft.DataProtection backupVaults/backupInstances 2021-07-01

Bicep resource definition

The backupVaults/backupInstances resource type can be deployed to:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataProtection/backupVaults/backupInstances resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.DataProtection/backupVaults/backupInstances@2021-07-01' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    datasourceAuthCredentials: {
      objectType: 'string'
      // For remaining properties, see AuthCredentials objects
    }
    dataSourceInfo: {
      datasourceType: 'string'
      objectType: 'string'
      resourceID: 'string'
      resourceLocation: 'string'
      resourceName: 'string'
      resourceType: 'string'
      resourceUri: 'string'
    }
    dataSourceSetInfo: {
      datasourceType: 'string'
      objectType: 'string'
      resourceID: 'string'
      resourceLocation: 'string'
      resourceName: 'string'
      resourceType: 'string'
      resourceUri: 'string'
    }
    friendlyName: 'string'
    objectType: 'string'
    policyInfo: {
      policyId: 'string'
      policyParameters: {
        dataStoreParametersList: [
          {
            dataStoreType: 'string'
            objectType: 'string'
            // For remaining properties, see DataStoreParameters objects
          }
        ]
      }
    }
  }
}

AuthCredentials objects

Set the objectType property to specify the type of object.

For SecretStoreBasedAuthCredentials, use:

  objectType: 'SecretStoreBasedAuthCredentials'
  secretStoreResource: {
    secretStoreType: 'string'
    uri: 'string'
  }

DataStoreParameters objects

Set the objectType property to specify the type of object.

For AzureOperationalStoreParameters, use:

  objectType: 'AzureOperationalStoreParameters'
  resourceGroupId: 'string'

Property values

backupVaults/backupInstances

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
string (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: backupVaults
properties BackupInstanceResource properties BackupInstance

BackupInstance

Name Description Value
datasourceAuthCredentials Credentials to use to authenticate with data source provider. AuthCredentials
dataSourceInfo Gets or sets the data source information. Datasource (required)
dataSourceSetInfo Gets or sets the data source set information. DatasourceSet
friendlyName Gets or sets the Backup Instance friendly name. string
objectType string (required)
policyInfo Gets or sets the policy information. PolicyInfo (required)

AuthCredentials

Name Description Value
objectType Set the object type SecretStoreBasedAuthCredentials (required)

SecretStoreBasedAuthCredentials

Name Description Value
objectType Type of the specific object - used for deserializing 'SecretStoreBasedAuthCredentials' (required)
secretStoreResource Secret store resource SecretStoreResource

SecretStoreResource

Name Description Value
secretStoreType Gets or sets the type of secret store 'AzureKeyVault'
'Invalid' (required)
uri Uri to get to the resource string

Datasource

Name Description Value
datasourceType DatasourceType of the resource. string
objectType Type of Datasource object, used to initialize the right inherited type string
resourceID Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. string (required)
resourceLocation Location of datasource. string
resourceName Unique identifier of the resource in the context of parent. string
resourceType Resource Type of Datasource. string
resourceUri Uri of the resource. string

DatasourceSet

Name Description Value
datasourceType DatasourceType of the resource. string
objectType Type of Datasource object, used to initialize the right inherited type string
resourceID Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. string (required)
resourceLocation Location of datasource. string
resourceName Unique identifier of the resource in the context of parent. string
resourceType Resource Type of Datasource. string
resourceUri Uri of the resource. string

PolicyInfo

Name Description Value
policyId string (required)
policyParameters Policy parameters for the backup instance PolicyParameters

PolicyParameters

Name Description Value
dataStoreParametersList Gets or sets the DataStore Parameters DataStoreParameters[]

DataStoreParameters

Name Description Value
dataStoreType type of datastore; Operational/Vault/Archive 'ArchiveStore'
'OperationalStore'
'VaultStore' (required)
objectType Set the object type AzureOperationalStoreParameters (required)

AzureOperationalStoreParameters

Name Description Value
objectType Type of the specific object - used for deserializing 'AzureOperationalStoreParameters' (required)
resourceGroupId Gets or sets the Snapshot Resource Group Uri. string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create Disk & enable protection via Backup Vault

Deploy to Azure
Template that creates a disk and enables protection via Backup Vault
Create MySqlFlex server & enable protection via Backup Vault

Deploy to Azure
Template that creates a MySQL Flexible Server and enables protection via Backup Vault
Create PgFlex server & enable protection via Backup Vault

Deploy to Azure
Template that creates a PostgreSQL Flexible Server and enables protection via Backup Vault
Create Storage Account & enable protection via Backup Vault

Deploy to Azure
Template that creates storage account and enable operational and vaulted backup via Backup Vault

ARM template resource definition

The backupVaults/backupInstances resource type can be deployed to:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataProtection/backupVaults/backupInstances resource, add the following JSON to your template.

{
  "type": "Microsoft.DataProtection/backupVaults/backupInstances",
  "apiVersion": "2021-07-01",
  "name": "string",
  "properties": {
    "datasourceAuthCredentials": {
      "objectType": "string"
      // For remaining properties, see AuthCredentials objects
    },
    "dataSourceInfo": {
      "datasourceType": "string",
      "objectType": "string",
      "resourceID": "string",
      "resourceLocation": "string",
      "resourceName": "string",
      "resourceType": "string",
      "resourceUri": "string"
    },
    "dataSourceSetInfo": {
      "datasourceType": "string",
      "objectType": "string",
      "resourceID": "string",
      "resourceLocation": "string",
      "resourceName": "string",
      "resourceType": "string",
      "resourceUri": "string"
    },
    "friendlyName": "string",
    "objectType": "string",
    "policyInfo": {
      "policyId": "string",
      "policyParameters": {
        "dataStoreParametersList": [
          {
            "dataStoreType": "string",
            "objectType": "string"
            // For remaining properties, see DataStoreParameters objects
          }
        ]
      }
    }
  }
}

AuthCredentials objects

Set the objectType property to specify the type of object.

For SecretStoreBasedAuthCredentials, use:

  "objectType": "SecretStoreBasedAuthCredentials",
  "secretStoreResource": {
    "secretStoreType": "string",
    "uri": "string"
  }

DataStoreParameters objects

Set the objectType property to specify the type of object.

For AzureOperationalStoreParameters, use:

  "objectType": "AzureOperationalStoreParameters",
  "resourceGroupId": "string"

Property values

backupVaults/backupInstances

Name Description Value
type The resource type 'Microsoft.DataProtection/backupVaults/backupInstances'
apiVersion The resource api version '2021-07-01'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
properties BackupInstanceResource properties BackupInstance

BackupInstance

Name Description Value
datasourceAuthCredentials Credentials to use to authenticate with data source provider. AuthCredentials
dataSourceInfo Gets or sets the data source information. Datasource (required)
dataSourceSetInfo Gets or sets the data source set information. DatasourceSet
friendlyName Gets or sets the Backup Instance friendly name. string
objectType string (required)
policyInfo Gets or sets the policy information. PolicyInfo (required)

AuthCredentials

Name Description Value
objectType Set the object type SecretStoreBasedAuthCredentials (required)

SecretStoreBasedAuthCredentials

Name Description Value
objectType Type of the specific object - used for deserializing 'SecretStoreBasedAuthCredentials' (required)
secretStoreResource Secret store resource SecretStoreResource

SecretStoreResource

Name Description Value
secretStoreType Gets or sets the type of secret store 'AzureKeyVault'
'Invalid' (required)
uri Uri to get to the resource string

Datasource

Name Description Value
datasourceType DatasourceType of the resource. string
objectType Type of Datasource object, used to initialize the right inherited type string
resourceID Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. string (required)
resourceLocation Location of datasource. string
resourceName Unique identifier of the resource in the context of parent. string
resourceType Resource Type of Datasource. string
resourceUri Uri of the resource. string

DatasourceSet

Name Description Value
datasourceType DatasourceType of the resource. string
objectType Type of Datasource object, used to initialize the right inherited type string
resourceID Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. string (required)
resourceLocation Location of datasource. string
resourceName Unique identifier of the resource in the context of parent. string
resourceType Resource Type of Datasource. string
resourceUri Uri of the resource. string

PolicyInfo

Name Description Value
policyId string (required)
policyParameters Policy parameters for the backup instance PolicyParameters

PolicyParameters

Name Description Value
dataStoreParametersList Gets or sets the DataStore Parameters DataStoreParameters[]

DataStoreParameters

Name Description Value
dataStoreType type of datastore; Operational/Vault/Archive 'ArchiveStore'
'OperationalStore'
'VaultStore' (required)
objectType Set the object type AzureOperationalStoreParameters (required)

AzureOperationalStoreParameters

Name Description Value
objectType Type of the specific object - used for deserializing 'AzureOperationalStoreParameters' (required)
resourceGroupId Gets or sets the Snapshot Resource Group Uri. string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create Disk & enable protection via Backup Vault

Deploy to Azure
Template that creates a disk and enables protection via Backup Vault
Create MySqlFlex server & enable protection via Backup Vault

Deploy to Azure
Template that creates a MySQL Flexible Server and enables protection via Backup Vault
Create PgFlex server & enable protection via Backup Vault

Deploy to Azure
Template that creates a PostgreSQL Flexible Server and enables protection via Backup Vault
Create Storage Account & enable protection via Backup Vault

Deploy to Azure
Template that creates storage account and enable operational and vaulted backup via Backup Vault

Terraform (AzAPI provider) resource definition

The backupVaults/backupInstances resource type can be deployed to:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataProtection/backupVaults/backupInstances resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DataProtection/backupVaults/backupInstances@2021-07-01"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      datasourceAuthCredentials = {
        objectType = "string"
        // For remaining properties, see AuthCredentials objects
      }
      dataSourceInfo = {
        datasourceType = "string"
        objectType = "string"
        resourceID = "string"
        resourceLocation = "string"
        resourceName = "string"
        resourceType = "string"
        resourceUri = "string"
      }
      dataSourceSetInfo = {
        datasourceType = "string"
        objectType = "string"
        resourceID = "string"
        resourceLocation = "string"
        resourceName = "string"
        resourceType = "string"
        resourceUri = "string"
      }
      friendlyName = "string"
      objectType = "string"
      policyInfo = {
        policyId = "string"
        policyParameters = {
          dataStoreParametersList = [
            {
              dataStoreType = "string"
              objectType = "string"
              // For remaining properties, see DataStoreParameters objects
            }
          ]
        }
      }
    }
  })
}

AuthCredentials objects

Set the objectType property to specify the type of object.

For SecretStoreBasedAuthCredentials, use:

  objectType = "SecretStoreBasedAuthCredentials"
  secretStoreResource = {
    secretStoreType = "string"
    uri = "string"
  }

DataStoreParameters objects

Set the objectType property to specify the type of object.

For AzureOperationalStoreParameters, use:

  objectType = "AzureOperationalStoreParameters"
  resourceGroupId = "string"

Property values

backupVaults/backupInstances

Name Description Value
type The resource type "Microsoft.DataProtection/backupVaults/backupInstances@2021-07-01"
name The resource name string (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: backupVaults
properties BackupInstanceResource properties BackupInstance

BackupInstance

Name Description Value
datasourceAuthCredentials Credentials to use to authenticate with data source provider. AuthCredentials
dataSourceInfo Gets or sets the data source information. Datasource (required)
dataSourceSetInfo Gets or sets the data source set information. DatasourceSet
friendlyName Gets or sets the Backup Instance friendly name. string
objectType string (required)
policyInfo Gets or sets the policy information. PolicyInfo (required)

AuthCredentials

Name Description Value
objectType Set the object type SecretStoreBasedAuthCredentials (required)

SecretStoreBasedAuthCredentials

Name Description Value
objectType Type of the specific object - used for deserializing "SecretStoreBasedAuthCredentials" (required)
secretStoreResource Secret store resource SecretStoreResource

SecretStoreResource

Name Description Value
secretStoreType Gets or sets the type of secret store "AzureKeyVault"
"Invalid" (required)
uri Uri to get to the resource string

Datasource

Name Description Value
datasourceType DatasourceType of the resource. string
objectType Type of Datasource object, used to initialize the right inherited type string
resourceID Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. string (required)
resourceLocation Location of datasource. string
resourceName Unique identifier of the resource in the context of parent. string
resourceType Resource Type of Datasource. string
resourceUri Uri of the resource. string

DatasourceSet

Name Description Value
datasourceType DatasourceType of the resource. string
objectType Type of Datasource object, used to initialize the right inherited type string
resourceID Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault. string (required)
resourceLocation Location of datasource. string
resourceName Unique identifier of the resource in the context of parent. string
resourceType Resource Type of Datasource. string
resourceUri Uri of the resource. string

PolicyInfo

Name Description Value
policyId string (required)
policyParameters Policy parameters for the backup instance PolicyParameters

PolicyParameters

Name Description Value
dataStoreParametersList Gets or sets the DataStore Parameters DataStoreParameters[]

DataStoreParameters

Name Description Value
dataStoreType type of datastore; Operational/Vault/Archive "ArchiveStore"
"OperationalStore"
"VaultStore" (required)
objectType Set the object type AzureOperationalStoreParameters (required)

AzureOperationalStoreParameters

Name Description Value
objectType Type of the specific object - used for deserializing "AzureOperationalStoreParameters" (required)
resourceGroupId Gets or sets the Snapshot Resource Group Uri. string