Поделиться через


Microsoft.Compute restorePointCollections/restorePoints 2025-04-01

Определение ресурсов Bicep

Тип ресурса restorePointCollections/restorePoints можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.Compute/restorePointCollections/restorePoints, добавьте следующий Bicep в шаблон.

resource symbolicname 'Microsoft.Compute/restorePointCollections/restorePoints@2025-04-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    consistencyMode: 'string'
    excludeDisks: [
      {
        id: 'string'
      }
    ]
    instantAccessDurationMinutes: int
    sourceMetadata: {
      storageProfile: {
        dataDisks: [
          {
            diskRestorePoint: {
              encryption: {
                diskEncryptionSet: {
                  id: 'string'
                }
                type: 'string'
              }
              sourceDiskRestorePoint: {
                id: 'string'
              }
            }
            managedDisk: {
              diskEncryptionSet: {
                id: 'string'
              }
              id: 'string'
              securityProfile: {
                diskEncryptionSet: {
                  id: 'string'
                }
                securityEncryptionType: 'string'
              }
              storageAccountType: 'string'
            }
          }
        ]
        osDisk: {
          diskRestorePoint: {
            encryption: {
              diskEncryptionSet: {
                id: 'string'
              }
              type: 'string'
            }
            sourceDiskRestorePoint: {
              id: 'string'
            }
          }
          managedDisk: {
            diskEncryptionSet: {
              id: 'string'
            }
            id: 'string'
            securityProfile: {
              diskEncryptionSet: {
                id: 'string'
              }
              securityEncryptionType: 'string'
            }
            storageAccountType: 'string'
          }
        }
      }
    }
    sourceRestorePoint: {
      id: 'string'
    }
    timeCreated: 'string'
  }
}

Значения свойств

Microsoft.Compute/restorePointCollections/restorePoints

Имя Description Ценность
имя имя ресурса. строка (обязательно)
parent В Bicep можно указать родительский ресурс для дочернего ресурса. Это свойство необходимо добавить, только если дочерний ресурс объявлен за пределами родительского ресурса.

Дополнительные сведения см. в разделе Дочерний ресурс за пределами родительского ресурса.
Символьное имя ресурса типа: restorePointCollections
properties Свойства точки восстановления. Свойства RestorePointProperties

Ссылка на ApiEntityReference

Имя Description Ценность
id Идентификатор ресурса ARM в виде /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... струна

DiskEncryptionSetParameters

Имя Description Ценность
id Идентификатор ресурса струна

DiskRestorePointAttributes

Имя Description Ценность
encryption Параметры шифрования неактивных данных для точки восстановления диска. Это необязательное свойство, которое можно указать во входных данных при создании точки восстановления. Шифрование RestorePointEncryption
sourceDiskRestorePoint Идентификатор ресурса точки восстановления исходного диска. Ссылка на ApiEntityReference

Управляемые параметры диска

Имя Description Ценность
Набор diskEncryptionSet Указывает идентификатор ресурса набора шифрования управляемых пользователем дисков для управляемого диска. DiskEncryptionSetParameters
id Идентификатор ресурса струна
securityProfile Указывает профиль безопасности управляемого диска. VMDiskSecurityProfile
storageAccountType Указывает тип учетной записи хранения для управляемого диска. ПРИМЕЧАНИЕ. UltraSSD_LRS можно использовать только с дисками данных, его нельзя использовать с диском ОС. 'PremiumV2_LRS'
'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

Шифрование RestorePointEncryption

Имя Description Ценность
Набор diskEncryptionSet Описывает параметр набора ресурсов набора шифрования управляемых клиентом дисков, который можно указать для диска. Примечание. идентификатор ресурса набора шифрования дисков можно указать только для управляемого диска. Дополнительные сведения см. в https://aka.ms/mdssewithcmkoverview. DiskEncryptionSetParameters
type Тип ключа, используемого для шифрования данных точки восстановления диска. EncryptionAtRestWithCustomerKey
EncryptionAtRestWithPlatformAndCustomerKeys
EncryptionAtRestWithPlatformKey

Свойства RestorePointProperties

Имя Description Ценность
consistencyMode ConsistencyMode объекта RestorePoint. Можно указать во входных данных при создании точки восстановления. В настоящее время только CrashConsistent принимается в качестве допустимых входных данных. Дополнительные сведения см. в https://aka.ms/RestorePoints. ApplicationConsistent
"CrashConsistent"
FileSystemConsistent
excludeDisks Список идентификаторов ресурсов диска, которые клиент хочет исключить из точки восстановления. Если диски не указаны, все диски будут включены. ApiEntityReference[]
instantAccessDurationMinutes Это свойство определяет время в минутах, в течение которого моментальный снимок сохраняется в виде мгновенного доступа для восстановления диска SSD (цен. категория "Премиум") версии 2 или диска ценовой категории "Ультра" с высокой производительностью восстановления в этой точке восстановления. инт
sourceMetadata Возвращает сведения о виртуальной машине, захваченной во время создания точки восстановления. Метаданные RestorePointSource
sourceRestorePoint Идентификатор ресурса исходной точки восстановления, из которой необходимо создать копию. Ссылка на ApiEntityReference
timeCreated Возвращает время создания точки восстановления. струна

Метаданные RestorePointSource

Имя Description Ценность
storageProfile Возвращает профиль хранилища. RestorePointSourceVMStorageProfile

RestorePointSourceVMDataDisk

Имя Description Ценность
diskRestorePoint Содержит свойства точки восстановления диска. DiskRestorePointAttributes
managedDisk Содержит сведения об управляемом диске. Управляемые параметры диска

RestorePointSourceVmosDisk

Имя Description Ценность
diskRestorePoint Содержит свойства точки восстановления диска. DiskRestorePointAttributes
managedDisk Возвращает сведения об управляемом диске Управляемые параметры диска

RestorePointSourceVMStorageProfile

Имя Description Ценность
Диски данных Возвращает диски данных виртуальной машины, захваченные во время создания точки восстановления. RestorePointSourceVMDataDisk[]
osDisk Возвращает диск ОС виртуальной машины, захваченной во время создания точки восстановления. RestorePointSourceVmosDisk

VMDiskSecurityProfile

Имя Description Ценность
Набор diskEncryptionSet Указывает идентификатор ресурса набора ресурсов шифрования управляемых пользователем дисков для управляемого диска, который используется для зашифрованного диска ОПЕРАЦИОННОй системы Конфиденциальной виртуальной машины и большого двоичного объекта VMGuest. DiskEncryptionSetParameters
securityEncryptionType Указывает тип шифрования управляемого диска. Он имеет значение DiskWithVMGuestState для шифрования управляемого диска вместе с большим двоичным объектом VMGuestState, VMGuestStateOnly для шифрования только большого двоичного объекта VMGuestState и NonPersistedTPM для сохранения состояния встроенного ПО в BLOB-объекте VMGuestState. Примечание. Его можно задать только для конфиденциальных виртуальных машин. DiskWithVMGuestState
NonPersistedTPM
VmGuestStateOnly

Определение ресурса шаблона ARM

Тип ресурса restorePointCollections/restorePoints можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.Compute/restorePointCollections/restorePoints, добавьте следующий код JSON в шаблон.

{
  "type": "Microsoft.Compute/restorePointCollections/restorePoints",
  "apiVersion": "2025-04-01",
  "name": "string",
  "properties": {
    "consistencyMode": "string",
    "excludeDisks": [
      {
        "id": "string"
      }
    ],
    "instantAccessDurationMinutes": "int",
    "sourceMetadata": {
      "storageProfile": {
        "dataDisks": [
          {
            "diskRestorePoint": {
              "encryption": {
                "diskEncryptionSet": {
                  "id": "string"
                },
                "type": "string"
              },
              "sourceDiskRestorePoint": {
                "id": "string"
              }
            },
            "managedDisk": {
              "diskEncryptionSet": {
                "id": "string"
              },
              "id": "string",
              "securityProfile": {
                "diskEncryptionSet": {
                  "id": "string"
                },
                "securityEncryptionType": "string"
              },
              "storageAccountType": "string"
            }
          }
        ],
        "osDisk": {
          "diskRestorePoint": {
            "encryption": {
              "diskEncryptionSet": {
                "id": "string"
              },
              "type": "string"
            },
            "sourceDiskRestorePoint": {
              "id": "string"
            }
          },
          "managedDisk": {
            "diskEncryptionSet": {
              "id": "string"
            },
            "id": "string",
            "securityProfile": {
              "diskEncryptionSet": {
                "id": "string"
              },
              "securityEncryptionType": "string"
            },
            "storageAccountType": "string"
          }
        }
      }
    },
    "sourceRestorePoint": {
      "id": "string"
    },
    "timeCreated": "string"
  }
}

Значения свойств

Microsoft.Compute/restorePointCollections/restorePoints

Имя Description Ценность
apiVersion Версия API '2025-04-01'
имя имя ресурса. строка (обязательно)
properties Свойства точки восстановления. Свойства RestorePointProperties
type Тип ресурса "Microsoft.Compute/restorePointCollections/restorePoints"

Ссылка на ApiEntityReference

Имя Description Ценность
id Идентификатор ресурса ARM в виде /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... струна

DiskEncryptionSetParameters

Имя Description Ценность
id Идентификатор ресурса струна

DiskRestorePointAttributes

Имя Description Ценность
encryption Параметры шифрования неактивных данных для точки восстановления диска. Это необязательное свойство, которое можно указать во входных данных при создании точки восстановления. Шифрование RestorePointEncryption
sourceDiskRestorePoint Идентификатор ресурса точки восстановления исходного диска. Ссылка на ApiEntityReference

Управляемые параметры диска

Имя Description Ценность
Набор diskEncryptionSet Указывает идентификатор ресурса набора шифрования управляемых пользователем дисков для управляемого диска. DiskEncryptionSetParameters
id Идентификатор ресурса струна
securityProfile Указывает профиль безопасности управляемого диска. VMDiskSecurityProfile
storageAccountType Указывает тип учетной записи хранения для управляемого диска. ПРИМЕЧАНИЕ. UltraSSD_LRS можно использовать только с дисками данных, его нельзя использовать с диском ОС. 'PremiumV2_LRS'
'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

Шифрование RestorePointEncryption

Имя Description Ценность
Набор diskEncryptionSet Описывает параметр набора ресурсов набора шифрования управляемых клиентом дисков, который можно указать для диска. Примечание. идентификатор ресурса набора шифрования дисков можно указать только для управляемого диска. Дополнительные сведения см. в https://aka.ms/mdssewithcmkoverview. DiskEncryptionSetParameters
type Тип ключа, используемого для шифрования данных точки восстановления диска. EncryptionAtRestWithCustomerKey
EncryptionAtRestWithPlatformAndCustomerKeys
EncryptionAtRestWithPlatformKey

Свойства RestorePointProperties

Имя Description Ценность
consistencyMode ConsistencyMode объекта RestorePoint. Можно указать во входных данных при создании точки восстановления. В настоящее время только CrashConsistent принимается в качестве допустимых входных данных. Дополнительные сведения см. в https://aka.ms/RestorePoints. ApplicationConsistent
"CrashConsistent"
FileSystemConsistent
excludeDisks Список идентификаторов ресурсов диска, которые клиент хочет исключить из точки восстановления. Если диски не указаны, все диски будут включены. ApiEntityReference[]
instantAccessDurationMinutes Это свойство определяет время в минутах, в течение которого моментальный снимок сохраняется в виде мгновенного доступа для восстановления диска SSD (цен. категория "Премиум") версии 2 или диска ценовой категории "Ультра" с высокой производительностью восстановления в этой точке восстановления. инт
sourceMetadata Возвращает сведения о виртуальной машине, захваченной во время создания точки восстановления. Метаданные RestorePointSource
sourceRestorePoint Идентификатор ресурса исходной точки восстановления, из которой необходимо создать копию. Ссылка на ApiEntityReference
timeCreated Возвращает время создания точки восстановления. струна

Метаданные RestorePointSource

Имя Description Ценность
storageProfile Возвращает профиль хранилища. RestorePointSourceVMStorageProfile

RestorePointSourceVMDataDisk

Имя Description Ценность
diskRestorePoint Содержит свойства точки восстановления диска. DiskRestorePointAttributes
managedDisk Содержит сведения об управляемом диске. Управляемые параметры диска

RestorePointSourceVmosDisk

Имя Description Ценность
diskRestorePoint Содержит свойства точки восстановления диска. DiskRestorePointAttributes
managedDisk Возвращает сведения об управляемом диске Управляемые параметры диска

RestorePointSourceVMStorageProfile

Имя Description Ценность
Диски данных Возвращает диски данных виртуальной машины, захваченные во время создания точки восстановления. RestorePointSourceVMDataDisk[]
osDisk Возвращает диск ОС виртуальной машины, захваченной во время создания точки восстановления. RestorePointSourceVmosDisk

VMDiskSecurityProfile

Имя Description Ценность
Набор diskEncryptionSet Указывает идентификатор ресурса набора ресурсов шифрования управляемых пользователем дисков для управляемого диска, который используется для зашифрованного диска ОПЕРАЦИОННОй системы Конфиденциальной виртуальной машины и большого двоичного объекта VMGuest. DiskEncryptionSetParameters
securityEncryptionType Указывает тип шифрования управляемого диска. Он имеет значение DiskWithVMGuestState для шифрования управляемого диска вместе с большим двоичным объектом VMGuestState, VMGuestStateOnly для шифрования только большого двоичного объекта VMGuestState и NonPersistedTPM для сохранения состояния встроенного ПО в BLOB-объекте VMGuestState. Примечание. Его можно задать только для конфиденциальных виртуальных машин. DiskWithVMGuestState
NonPersistedTPM
VmGuestStateOnly

Примеры использования

Определение ресурса Terraform (поставщик AzAPI)

Тип ресурса restorePointCollections/restorePoints можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.Compute/restorePointCollections/restorePoints, добавьте следующий объект Terraform в шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Compute/restorePointCollections/restorePoints@2025-04-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      consistencyMode = "string"
      excludeDisks = [
        {
          id = "string"
        }
      ]
      instantAccessDurationMinutes = int
      sourceMetadata = {
        storageProfile = {
          dataDisks = [
            {
              diskRestorePoint = {
                encryption = {
                  diskEncryptionSet = {
                    id = "string"
                  }
                  type = "string"
                }
                sourceDiskRestorePoint = {
                  id = "string"
                }
              }
              managedDisk = {
                diskEncryptionSet = {
                  id = "string"
                }
                id = "string"
                securityProfile = {
                  diskEncryptionSet = {
                    id = "string"
                  }
                  securityEncryptionType = "string"
                }
                storageAccountType = "string"
              }
            }
          ]
          osDisk = {
            diskRestorePoint = {
              encryption = {
                diskEncryptionSet = {
                  id = "string"
                }
                type = "string"
              }
              sourceDiskRestorePoint = {
                id = "string"
              }
            }
            managedDisk = {
              diskEncryptionSet = {
                id = "string"
              }
              id = "string"
              securityProfile = {
                diskEncryptionSet = {
                  id = "string"
                }
                securityEncryptionType = "string"
              }
              storageAccountType = "string"
            }
          }
        }
      }
      sourceRestorePoint = {
        id = "string"
      }
      timeCreated = "string"
    }
  }
}

Значения свойств

Microsoft.Compute/restorePointCollections/restorePoints

Имя Description Ценность
имя имя ресурса. строка (обязательно)
parent_id Идентификатор ресурса, который является родительским для этого ресурса. Идентификатор ресурса типа: restorePointCollections
properties Свойства точки восстановления. Свойства RestorePointProperties
type Тип ресурса "Microsoft.Compute/restorePointCollections/restorePoints@2025-04-01"

Ссылка на ApiEntityReference

Имя Description Ценность
id Идентификатор ресурса ARM в виде /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... струна

DiskEncryptionSetParameters

Имя Description Ценность
id Идентификатор ресурса струна

DiskRestorePointAttributes

Имя Description Ценность
encryption Параметры шифрования неактивных данных для точки восстановления диска. Это необязательное свойство, которое можно указать во входных данных при создании точки восстановления. Шифрование RestorePointEncryption
sourceDiskRestorePoint Идентификатор ресурса точки восстановления исходного диска. Ссылка на ApiEntityReference

Управляемые параметры диска

Имя Description Ценность
Набор diskEncryptionSet Указывает идентификатор ресурса набора шифрования управляемых пользователем дисков для управляемого диска. DiskEncryptionSetParameters
id Идентификатор ресурса струна
securityProfile Указывает профиль безопасности управляемого диска. VMDiskSecurityProfile
storageAccountType Указывает тип учетной записи хранения для управляемого диска. ПРИМЕЧАНИЕ. UltraSSD_LRS можно использовать только с дисками данных, его нельзя использовать с диском ОС. 'PremiumV2_LRS'
'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

Шифрование RestorePointEncryption

Имя Description Ценность
Набор diskEncryptionSet Описывает параметр набора ресурсов набора шифрования управляемых клиентом дисков, который можно указать для диска. Примечание. идентификатор ресурса набора шифрования дисков можно указать только для управляемого диска. Дополнительные сведения см. в https://aka.ms/mdssewithcmkoverview. DiskEncryptionSetParameters
type Тип ключа, используемого для шифрования данных точки восстановления диска. EncryptionAtRestWithCustomerKey
EncryptionAtRestWithPlatformAndCustomerKeys
EncryptionAtRestWithPlatformKey

Свойства RestorePointProperties

Имя Description Ценность
consistencyMode ConsistencyMode объекта RestorePoint. Можно указать во входных данных при создании точки восстановления. В настоящее время только CrashConsistent принимается в качестве допустимых входных данных. Дополнительные сведения см. в https://aka.ms/RestorePoints. ApplicationConsistent
"CrashConsistent"
FileSystemConsistent
excludeDisks Список идентификаторов ресурсов диска, которые клиент хочет исключить из точки восстановления. Если диски не указаны, все диски будут включены. ApiEntityReference[]
instantAccessDurationMinutes Это свойство определяет время в минутах, в течение которого моментальный снимок сохраняется в виде мгновенного доступа для восстановления диска SSD (цен. категория "Премиум") версии 2 или диска ценовой категории "Ультра" с высокой производительностью восстановления в этой точке восстановления. инт
sourceMetadata Возвращает сведения о виртуальной машине, захваченной во время создания точки восстановления. Метаданные RestorePointSource
sourceRestorePoint Идентификатор ресурса исходной точки восстановления, из которой необходимо создать копию. Ссылка на ApiEntityReference
timeCreated Возвращает время создания точки восстановления. струна

Метаданные RestorePointSource

Имя Description Ценность
storageProfile Возвращает профиль хранилища. RestorePointSourceVMStorageProfile

RestorePointSourceVMDataDisk

Имя Description Ценность
diskRestorePoint Содержит свойства точки восстановления диска. DiskRestorePointAttributes
managedDisk Содержит сведения об управляемом диске. Управляемые параметры диска

RestorePointSourceVmosDisk

Имя Description Ценность
diskRestorePoint Содержит свойства точки восстановления диска. DiskRestorePointAttributes
managedDisk Возвращает сведения об управляемом диске Управляемые параметры диска

RestorePointSourceVMStorageProfile

Имя Description Ценность
Диски данных Возвращает диски данных виртуальной машины, захваченные во время создания точки восстановления. RestorePointSourceVMDataDisk[]
osDisk Возвращает диск ОС виртуальной машины, захваченной во время создания точки восстановления. RestorePointSourceVmosDisk

VMDiskSecurityProfile

Имя Description Ценность
Набор diskEncryptionSet Указывает идентификатор ресурса набора ресурсов шифрования управляемых пользователем дисков для управляемого диска, который используется для зашифрованного диска ОПЕРАЦИОННОй системы Конфиденциальной виртуальной машины и большого двоичного объекта VMGuest. DiskEncryptionSetParameters
securityEncryptionType Указывает тип шифрования управляемого диска. Он имеет значение DiskWithVMGuestState для шифрования управляемого диска вместе с большим двоичным объектом VMGuestState, VMGuestStateOnly для шифрования только большого двоичного объекта VMGuestState и NonPersistedTPM для сохранения состояния встроенного ПО в BLOB-объекте VMGuestState. Примечание. Его можно задать только для конфиденциальных виртуальных машин. DiskWithVMGuestState
NonPersistedTPM
VmGuestStateOnly

Примеры использования

Примеры Terraform

Простой пример развертывания точки восстановления виртуальных машин.

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

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

resource "azapi_resource" "virtualNetwork" {
  type      = "Microsoft.Network/virtualNetworks@2024-05-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-vnet"
  location  = var.location
  body = {
    properties = {
      addressSpace = {
        addressPrefixes = ["10.0.0.0/16"]
      }
      dhcpOptions = {
        dnsServers = []
      }
      privateEndpointVNetPolicies = "Disabled"
      subnets                     = []
    }
  }
}

resource "azapi_resource" "subnet" {
  type      = "Microsoft.Network/virtualNetworks/subnets@2024-05-01"
  parent_id = azapi_resource.virtualNetwork.id
  name      = "${var.resource_name}-subnet"
  body = {
    properties = {
      addressPrefix                     = "10.0.0.0/24"
      defaultOutboundAccess             = true
      delegations                       = []
      privateEndpointNetworkPolicies    = "Disabled"
      privateLinkServiceNetworkPolicies = "Enabled"
      serviceEndpointPolicies           = []
      serviceEndpoints                  = []
    }
  }
}

resource "azapi_resource" "networkInterface" {
  type      = "Microsoft.Network/networkInterfaces@2024-05-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-nic"
  location  = var.location
  body = {
    properties = {
      enableAcceleratedNetworking = false
      enableIPForwarding          = false
      ipConfigurations = [{
        name = "internal"
        properties = {
          primary                   = false
          privateIPAddressVersion   = "IPv4"
          privateIPAllocationMethod = "Dynamic"
          subnet = {
            id = azapi_resource.subnet.id
          }
        }
      }]
    }
  }
}

resource "azapi_resource" "virtualMachine" {
  type      = "Microsoft.Compute/virtualMachines@2024-03-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-vm"
  location  = var.location
  body = {
    properties = {
      additionalCapabilities = {}
      applicationProfile = {
        galleryApplications = []
      }
      diagnosticsProfile = {
        bootDiagnostics = {
          enabled    = false
          storageUri = ""
        }
      }
      extensionsTimeBudget = "PT1H30M"
      hardwareProfile = {
        vmSize = "Standard_F2"
      }
      networkProfile = {
        networkInterfaces = [{
          id = azapi_resource.networkInterface.id
          properties = {
            primary = true
          }
        }]
      }
      osProfile = {
        adminUsername            = "adminuser"
        allowExtensionOperations = true
        computerName             = "${var.resource_name}-vm"
        linuxConfiguration = {
          disablePasswordAuthentication = true
          patchSettings = {
            assessmentMode = "ImageDefault"
            patchMode      = "ImageDefault"
          }
          provisionVMAgent = true
          ssh = {
            publicKeys = [{
              keyData = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+wWK73dCr+jgQOAxNsHAnNNNMEMWOHYEccp6wJm2gotpr9katuF/ZAdou5AaW1C61slRkHRkpRRX9FA9CYBiitZgvCCz+3nWNN7l/Up54Zps/pHWGZLHNJZRYyAB6j5yVLMVHIHriY49d/GZTZVNB8GoJv9Gakwc/fuEZYYl4YDFiGMBP///TzlI4jhiJzjKnEvqPFki5p2ZRJqcbCiF4pJrxUQR/RXqVFQdbRLZgYfJ8xGB878RENq3yQ39d8dVOkq4edbkzwcUmwwwkYVPIoDGsYLaRHnG+To7FvMeyO7xDVQkMKzopTQV8AuKpyvpqu0a9pWOMaiCyDytO7GGN [email protected]"
              path    = "/home/adminuser/.ssh/authorized_keys"
            }]
          }
        }
        secrets = []
      }
      priority = "Regular"
      storageProfile = {
        dataDisks = []
        imageReference = {
          offer     = "0001-com-ubuntu-server-jammy"
          publisher = "Canonical"
          sku       = "22_04-lts"
          version   = "latest"
        }
        osDisk = {
          caching      = "ReadWrite"
          createOption = "FromImage"
          managedDisk = {
            storageAccountType = "Standard_LRS"
          }
          osType                  = "Linux"
          writeAcceleratorEnabled = false
        }
      }
    }
  }
}

resource "azapi_resource" "restorePointCollection" {
  type      = "Microsoft.Compute/restorePointCollections@2024-03-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = "${var.resource_name}-rpc"
  location  = var.location
  body = {
    properties = {
      source = {
        id = azapi_resource.virtualMachine.id
      }
    }
  }
  tags = {
    foo = "bar"
  }
}

resource "azapi_resource" "restorePoint" {
  type      = "Microsoft.Compute/restorePointCollections/restorePoints@2024-03-01"
  parent_id = azapi_resource.restorePointCollection.id
  name      = "${var.resource_name}-rp"
  body = {
    properties = {}
  }
}