Describe the bug
A command that used to work is now erroring:
az backup protection enable-for-vm \
--subscription "$s" \
--resource-group "rg-001" \
--vault-name "bv-001" \
--vm "$vm_id" \
--policy-name "$policyname" \
--exclude-all-data-disks
Starting in May 2025, Trusted Launch virtual machines can be protected with both standard and enhanced policies via PS and CLI
The command failed with an unexpected error. Here is the traceback:
'NoneType' object has no attribute 'protected_items_count'
Related command
az backup protection enable-for-vm
Errors
Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
Issue script & Debug output
cli.knack.log: File logging enabled - writing logs to '/Users/xxxx/.azure/logs'.
cli.knack.cli: Command arguments: ['backup', 'protection', 'enable-for-vm', '--subscription', 'NNNN', '--resource-group', 'yyyyos-general-rg-001', '--vault-name', 'yyyyos-general-bv-001', '--vm', '/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001', '--policy-name', '', '--exclude-all-data-disks', '--debug']
cli.knack.cli: init debug log:
Enable color in terminal.
cli.knack.cli: Event: Cli.PreExecute []
cli.knack.cli: Event: CommandParser.OnGlobalArgumentsCreate [<function CLILogging.on_global_arguments at 0x1056437e0>, <function OutputProducer.on_global_arguments at 0x105797a60>, <function CLIQuery.on_global_arguments at 0x105835da0>]
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableCreate []
cli.azure.cli.core: Using packaged command index for profile 'latest'.
cli.azure.cli.core: Found installed extension 'account' (azext_account).
cli.azure.cli.core: Blending packaged core index with local extension index.
cli.azure.cli.core: Modules found from index for 'backup': ['azure.cli.command_modules.backup']
cli.azure.cli.core: Loading command modules...
cli.azure.cli.core: Loaded command modules in parallel:
cli.azure.cli.core: Name Load Time Groups Commands
cli.azure.cli.core: backup 0.005 17 65
cli.azure.cli.core: Total (1) 0.006 17 65
cli.azure.cli.core: These extensions are not installed and will be skipped: ['azext_ai_examples', 'azext_next']
cli.azure.cli.core: Loading extensions:
cli.azure.cli.core: Name Load Time Groups Commands Directory
cli.azure.cli.core: Total (0) 0.000 0 0
cli.azure.cli.core: Loaded 17 groups, 65 commands.
cli.azure.cli.core: Found a match in the command table.
cli.azure.cli.core: Raw command : backup protection enable-for-vm
cli.azure.cli.core: Command table: backup protection enable-for-vm
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableTruncate [<function AzCliLogging.init_command_file_logging at 0x105b802c0>]
cli.azure.cli.core.azlogging: metadata file logging enabled - writing logs to '/Users/xxxx/.azure/commands/2026-06-08.10-25-04.backup_protection_enable-for-vm.13930.log'.
az_command_data_logger: command args: backup protection enable-for-vm --subscription {} --resource-group {} --vault-name {} --vm {} --policy-name {} --exclude-all-data-disks --debug
cli.knack.cli: Event: CommandInvoker.OnPreArgumentLoad [<function register_global_subscription_argument..add_subscription_parameter at 0x105bd1940>]
cli.knack.cli: Event: CommandInvoker.OnPostArgumentLoad []
cli.knack.cli: Event: CommandInvoker.OnPostCommandTableCreate [<function register_ids_argument..add_ids_arguments at 0x105bd1e40>, <function register_global_policy_argument..add_global_policy_argument at 0x105bd1f80>, <function register_cache_arguments..add_cache_arguments at 0x105bd2020>, <function register_upcoming_breaking_change_info..update_breaking_change_info at 0x105bd20c0>]
cli.knack.cli: Event: CommandInvoker.OnCommandTableLoaded []
cli.knack.cli: Event: CommandInvoker.OnPreParseArgs []
cli.knack.cli: Event: CommandInvoker.OnPostParseArgs [<function OutputProducer.handle_output_argument at 0x105797b00>, <function CLIQuery.handle_query_parameter at 0x105835e40>, <function register_ids_argument..parse_ids_arguments at 0x105bd1ee0>]
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=RecoveryServicesBackupClient
cli.azure.cli.core.auth.persistence: build_persistence: location='/Users/xxxx/.azure/msal_token_cache.json', encrypt=False
cli.azure.cli.core.auth.binary_cache: load: /Users/xxxx/.azure/msal_http_cache.bin
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.core.windows.net//.default',), kwargs={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: 48e7770d-cea1-4198-a3c0-d772896d1e3b
cli.azure.cli.core.sdk.policies: Request URL: 'zzz'
cli.azure.cli.core.sdk.policies: Request method: 'GET'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'CommandName': 'backup protection enable-for-vm'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--subscription --resource-group --vault-name --vm --policy-name --exclude-all-data-disks --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.87.0 (HOMEBREW) azsdk-python-core/1.39.0 Python/3.13.13 (macOS-26.5.1-arm64-arm-64bit-Mach-O)'
cli.azure.cli.core.sdk.policies: 'Authorization': ''
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001?api-version=2025-11-01 HTTP/1.1" 200 4092
cli.azure.cli.core.sdk.policies: Response status: 200
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '4092'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'ETag': '"2"'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-resource': 'Microsoft.Compute/LowCostGetSubscriptionMaximum;23998,Microsoft.Compute/LowCostGetResource;34'
cli.azure.cli.core.sdk.policies: 'x-ms-need-to-refresh-epl-cache': 'False'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': '32a23f2b-c8a7-4c02-9758-e2f82d8f8161'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': 'b0ccdd66-5c34-40ec-a102-2dff3a3e524b'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'UKSOUTH:20260608T092506Z:b0ccdd66-5c34-40ec-a102-2dff3a3e524b'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: DAB435FE1D5B4A32ACDD51E59789F205 Ref B: DUB601080513042 Ref C: 2026-06-08T09:25:06Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Mon, 08 Jun 2026 09:25:06 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: {
"name": "yyyyos-uat-vm-001",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001",
"type": "Microsoft.Compute/virtualMachines",
"location": "uksouth",
"tags": {
"Environment": "Uat",
"Workload": "Uat",
"Client": "yyyyOS",
"DefenderPlan": "basic",
"hidden-title": "yyyyOS Uat VM"
},
"identity": {
"type": "SystemAssigned",
"principalId": "PPPP",
"tenantId": "MMMM"
},
"properties": {
"hardwareProfile": {
"vmSize": "Standard_D2as_v6"
},
"provisioningState": "Succeeded",
"vmId": "IIII",
"storageProfile": {
"imageReference": {
"publisher": "Canonical",
"offer": "ubuntu-24_04-lts",
"sku": "server",
"version": "latest",
"exactVersion": "24.04.202606060"
},
"osDisk": {
"osType": "Linux",
"name": "yyyyos-uat-vm-001_OsDisk_1_870e8155c44848728c35516d768dd87d",
"createOption": "FromImage",
"caching": "ReadWrite",
"managedDisk": {
"storageAccountType": "StandardSSD_LRS",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/disks/yyyyos-uat-vm-001_OsDisk_1_870e8155c44848728c35516d768dd87d"
},
"deleteOption": "Detach",
"diskSizeGB": 32
},
"dataDisks": [
{
"lun": 0,
"name": "yyyyos-uat-hddbackupdata-001",
"createOption": "Empty",
"caching": "None",
"managedDisk": {
"storageAccountType": "Standard_LRS",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/disks/yyyyos-uat-hddbackupdata-001"
},
"deleteOption": "Detach",
"diskSizeGB": 64,
"toBeDetached": false
}
],
"diskControllerType": "NVMe"
},
"osProfile": {
"computerName": "yyyyos-uat",
"linuxConfiguration": {
"disablePasswordAuthentication": true,
"ssh": {
"publicKeys": [
{
"path": "/home/sentinel/.ssh/authorized_keys",
"keyData": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJjNlR7rJJ7rQMR6AVPdswMYzvWa4HTvlgVDXi4mXXFR SSH keys for Sentinel VM yyyyos-uat-vm-001\n"
}
]
},
"provisionVMAgent": true,
"patchSettings": {
"patchMode": "ImageDefault",
"assessmentMode": "ImageDefault"
},
"enableVMAgentPlatformUpdates": true
},
"secrets": [],
"allowExtensionOperations": true,
"requireGuestProvisionSignal": true,
"adminUsername": "sentinel"
},
"securityProfile": {
"uefiSettings": {
"secureBootEnabled": true,
"vTpmEnabled": true
},
"securityType": "TrustedLaunch"
},
"networkProfile": {"networkInterfaces":[{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Network/networkInterfaces/yyyyos-uat-nic-001","properties":{"primary":true}}]},
"timeCreated": "2026-06-08T09:10:23.4509134+00:00"
},
"etag": ""2"",
"resources": [
{
"name": "AADSSHLoginForLinux",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001/extensions/AADSSHLoginForLinux",
"type": "Microsoft.Compute/virtualMachines/extensions",
"location": "uksouth",
"properties": {
"autoUpgradeMinorVersion": true,
"provisioningState": "Succeeded",
"publisher": "Microsoft.Azure.ActiveDirectory",
"type": "AADSSHLoginForLinux",
"typeHandlerVersion": "1.0"
}
}
]
}
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=RecoveryServicesClient
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token_info: scopes=('https://management.core.windows.net//.default',), options={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: 50c2a332-58e8-458d-9d58-c710028e6f21
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001?api-version=2025-08-01'
cli.azure.cli.core.sdk.policies: Request method: 'GET'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'CommandName': 'backup protection enable-for-vm'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--subscription --resource-group --vault-name --vm --policy-name --exclude-all-data-disks --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.87.0 (HOMEBREW) azsdk-python-core/1.39.0 Python/3.13.13 (macOS-26.5.1-arm64-arm-64bit-Mach-O)'
cli.azure.cli.core.sdk.policies: 'Authorization': ''
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001?api-version=2025-08-01 HTTP/1.1" 200 1297
cli.azure.cli.core.sdk.policies: Response status: 200
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '1297'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': '7763c5d8-99f6-4055-9c4b-53e158e0201f'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': '7763c5d8-99f6-4055-9c4b-53e158e0201f'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'UKSOUTH:20260608T092507Z:7763c5d8-99f6-4055-9c4b-53e158e0201f'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: F09F16A180884528BE04ED11FB6DF55E Ref B: DUB241062309029 Ref C: 2026-06-08T09:25:06Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Mon, 08 Jun 2026 09:25:07 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: {"location":"uksouth","name":"yyyyos-general-bv-001","etag":"W/"datetime'2026-06-08T09%3A05%3A36.6677951Z'"","properties":{"provisioningState":"Succeeded","privateEndpointStateForBackup":"None","privateEndpointStateForSiteRecovery":"None","monitoringSettings":{"azureMonitorAlertSettings":{"alertsForAllJobFailures":"Enabled","alertsForAllReplicationIssues":"Enabled","alertsForAllFailoverIssues":"Enabled"},"classicAlertSettings":{"alertsForCriticalOperations":"Enabled","emailNotificationsForSiteRecovery":"Enabled"}},"backupStorageVersion":"Unassigned","securitySettings":{"softDeleteSettings":{"softDeleteRetentionPeriodInDays":14,"softDeleteState":"Enabled","enhancedSecurityState":"Enabled"},"multiUserAuthorization":"Disabled","sourceScanConfiguration":{"state":"Disabled"}},"redundancySettings":{"standardTierStorageRedundancy":"GeoRedundant","crossRegionRestore":"Disabled"},"secureScore":"None","bcdrSecurityLevel":"Poor","publicNetworkAccess":"Enabled","restoreSettings":{"crossSubscriptionRestoreSettings":{"crossSubscriptionRestoreState":"Enabled"}}},"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001","type":"Microsoft.RecoveryServices/vaults","sku":{"name":"Standard"}}
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=RecoveryServicesBackupClient
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token_info: scopes=('https://management.core.windows.net//.default',), options={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: 6f83aff2-9883-445d-bcc5-6ed1854eeaef
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/?api-version=2025-02-01'
cli.azure.cli.core.sdk.policies: Request method: 'GET'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'CommandName': 'backup protection enable-for-vm'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--subscription --resource-group --vault-name --vm --policy-name --exclude-all-data-disks --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.87.0 (HOMEBREW) azsdk-python-core/1.39.0 Python/3.13.13 (macOS-26.5.1-arm64-arm-64bit-Mach-O)'
cli.azure.cli.core.sdk.policies: 'Authorization': '*****'
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/?api-version=2025-02-01 HTTP/1.1" 200 4496
cli.azure.cli.core.sdk.policies: Response status: 200
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '4496'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': 'daa12bec-96ee-4ddc-9082-b0f870bdfc04'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'x-ms-operation-identifier': 'tenantId=MMMM,objectId=07f57f22-a5cf-4310-bc1e-0a5bcc1573f5/uksouth/f8556cc8-7eee-45a3-805f-39d0609ac36b'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-resource-requests': '249'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': 'daa12bec-96ee-4ddc-9082-b0f870bdfc04'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'UKSOUTH:20260608T092507Z:daa12bec-96ee-4ddc-9082-b0f870bdfc04'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: 40649F02052C4544A83492943349B546 Ref B: DUB241062309023 Ref C: 2026-06-08T09:25:07Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Mon, 08 Jun 2026 09:25:07 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: {"value":[{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/HourlyLogBackup","name":"HourlyLogBackup","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureWorkload","workLoadType":"SQLDataBase","settings":{"timeZone":"UTC","issqlcompression":false,"isCompression":false},"subProtectionPolicy":[{"policyType":"Full","schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicy","scheduleRunFrequency":"Daily","scheduleRunTimes":["2026-06-08T19:00:00Z"],"scheduleWeeklyFrequency":0},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-08T19:00:00Z"],"retentionDuration":{"count":30,"durationType":"Days"}}}},{"policyType":"Log","schedulePolicy":{"schedulePolicyType":"LogSchedulePolicy","scheduleFrequencyInMins":60},"retentionPolicy":{"retentionPolicyType":"SimpleRetentionPolicy","retentionDuration":{"count":30,"durationType":"Days"}}}],"protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/DefaultPolicy","name":"DefaultPolicy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V1","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicy","scheduleRunFrequency":"Daily","scheduleRunTimes":["2026-06-08T19:00:00Z"],"scheduleWeeklyFrequency":0},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-08T19:00:00Z"],"retentionDuration":{"count":30,"durationType":"Days"}}},"instantRpRetentionRangeInDays":2,"timeZone":"UTC","protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/yyyyos-sentinel-enhanced-vm-backup-policy","name":"yyyyos-sentinel-enhanced-vm-backup-policy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V2","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicyV2","scheduleRunFrequency":"Daily","dailySchedule":{"scheduleRunTimes":["2025-04-14T06:00:00Z"]}},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2025-04-14T06:00:00Z"],"retentionDuration":{"count":31,"durationType":"Days"}}},"tieringPolicy":{"ArchivedRP":{"tieringMode":"DoNotTier","duration":0,"durationType":"Invalid"}},"instantRpRetentionRangeInDays":7,"timeZone":"UTC","protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/yyyyos-sentinel-basic-vm-backup-policy","name":"yyyyos-sentinel-basic-vm-backup-policy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V1","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicy","scheduleRunFrequency":"Daily","scheduleRunTimes":["2026-06-05T06:00:00Z"],"scheduleWeeklyFrequency":0},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-05T06:00:00Z"],"retentionDuration":{"count":31,"durationType":"Days"}}},"instantRpRetentionRangeInDays":5,"timeZone":"UTC","protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/EnhancedPolicy","name":"EnhancedPolicy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V2","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicyV2","scheduleRunFrequency":"Hourly","hourlySchedule":{"interval":4,"scheduleWindowStartTime":"2026-06-08T08:00:00Z","scheduleWindowDuration":12}},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-08T08:00:00Z"],"retentionDuration":{"count":30,"durationType":"Days"}}},"instantRpRetentionRangeInDays":2,"timeZone":"UTC","protectedItemsCount":0}}]}
cli.azure.cli.command_modules.backup.custom: Starting in May 2025, Trusted Launch virtual machines can be protected with both standard and enhanced policies via PS and CLI
cli.azure.cli.core.azclierror: Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
cli.azure.cli.core.azclierror: The command failed with an unexpected error. Here is the traceback:
az_command_data_logger: The command failed with an unexpected error. Here is the traceback:
cli.azure.cli.core.azclierror: 'NoneType' object has no attribute 'protected_items_count'
Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
az_command_data_logger: 'NoneType' object has no attribute 'protected_items_count'
Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
To check existing issues, please visit: https://github.com/Azure/azure-cli/issues
cli.knack.cli: Event: Cli.PostExecute [<function AzCliLogging.deinit_cmd_metadata_logging at 0x105b80540>]
az_command_data_logger: exit code: 1
cli.main: Command ran in 2.050 seconds (init: 0.089, invoke: 1.962)
Expected behavior
Enabled protection with no issues
Environment Summary
azure-cli 2.87.0
core 2.87.0
telemetry 1.1.0
Extensions:
account 0.2.5
containerapp 1.3.0b1
ml 2.41.0
reservation 0.3.1
resource-graph 2.1.1
ssh 2.0.6
Dependencies:
msal 1.36.0
azure-mgmt-resource 24.0.0
Python location '/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/bin/python'
Config directory '/Users/xxx/.azure'
Extensions directory '/Users/xxx/.azure/cliextensions'
Python (Darwin) 3.13.13 (main, Apr 7 2026, 18:19:01) [Clang 21.0.0 (clang-2100.0.123.102)]
Legal docs and information: aka.ms/AzureCliLegal
Your CLI is up-to-date.
Additional context
No response
Describe the bug
A command that used to work is now erroring:
az backup protection enable-for-vm \ --subscription "$s" \ --resource-group "rg-001" \ --vault-name "bv-001" \ --vm "$vm_id" \ --policy-name "$policyname" \ --exclude-all-data-disks Starting in May 2025, Trusted Launch virtual machines can be protected with both standard and enhanced policies via PS and CLI The command failed with an unexpected error. Here is the traceback: 'NoneType' object has no attribute 'protected_items_count'Related command
az backup protection enable-for-vm
Errors
Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
Issue script & Debug output
cli.knack.log: File logging enabled - writing logs to '/Users/xxxx/.azure/logs'.
cli.knack.cli: Command arguments: ['backup', 'protection', 'enable-for-vm', '--subscription', 'NNNN', '--resource-group', 'yyyyos-general-rg-001', '--vault-name', 'yyyyos-general-bv-001', '--vm', '/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001', '--policy-name', '', '--exclude-all-data-disks', '--debug']
cli.knack.cli: init debug log:
Enable color in terminal.
cli.knack.cli: Event: Cli.PreExecute []
cli.knack.cli: Event: CommandParser.OnGlobalArgumentsCreate [<function CLILogging.on_global_arguments at 0x1056437e0>, <function OutputProducer.on_global_arguments at 0x105797a60>, <function CLIQuery.on_global_arguments at 0x105835da0>]
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableCreate []
cli.azure.cli.core: Using packaged command index for profile 'latest'.
cli.azure.cli.core: Found installed extension 'account' (azext_account).
cli.azure.cli.core: Blending packaged core index with local extension index.
cli.azure.cli.core: Modules found from index for 'backup': ['azure.cli.command_modules.backup']
cli.azure.cli.core: Loading command modules...
cli.azure.cli.core: Loaded command modules in parallel:
cli.azure.cli.core: Name Load Time Groups Commands
cli.azure.cli.core: backup 0.005 17 65
cli.azure.cli.core: Total (1) 0.006 17 65
cli.azure.cli.core: These extensions are not installed and will be skipped: ['azext_ai_examples', 'azext_next']
cli.azure.cli.core: Loading extensions:
cli.azure.cli.core: Name Load Time Groups Commands Directory
cli.azure.cli.core: Total (0) 0.000 0 0
cli.azure.cli.core: Loaded 17 groups, 65 commands.
cli.azure.cli.core: Found a match in the command table.
cli.azure.cli.core: Raw command : backup protection enable-for-vm
cli.azure.cli.core: Command table: backup protection enable-for-vm
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableTruncate [<function AzCliLogging.init_command_file_logging at 0x105b802c0>]
cli.azure.cli.core.azlogging: metadata file logging enabled - writing logs to '/Users/xxxx/.azure/commands/2026-06-08.10-25-04.backup_protection_enable-for-vm.13930.log'.
az_command_data_logger: command args: backup protection enable-for-vm --subscription {} --resource-group {} --vault-name {} --vm {} --policy-name {} --exclude-all-data-disks --debug
cli.knack.cli: Event: CommandInvoker.OnPreArgumentLoad [<function register_global_subscription_argument..add_subscription_parameter at 0x105bd1940>]
cli.knack.cli: Event: CommandInvoker.OnPostArgumentLoad []
cli.knack.cli: Event: CommandInvoker.OnPostCommandTableCreate [<function register_ids_argument..add_ids_arguments at 0x105bd1e40>, <function register_global_policy_argument..add_global_policy_argument at 0x105bd1f80>, <function register_cache_arguments..add_cache_arguments at 0x105bd2020>, <function register_upcoming_breaking_change_info..update_breaking_change_info at 0x105bd20c0>]
cli.knack.cli: Event: CommandInvoker.OnCommandTableLoaded []
cli.knack.cli: Event: CommandInvoker.OnPreParseArgs []
cli.knack.cli: Event: CommandInvoker.OnPostParseArgs [<function OutputProducer.handle_output_argument at 0x105797b00>, <function CLIQuery.handle_query_parameter at 0x105835e40>, <function register_ids_argument..parse_ids_arguments at 0x105bd1ee0>]
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=RecoveryServicesBackupClient
cli.azure.cli.core.auth.persistence: build_persistence: location='/Users/xxxx/.azure/msal_token_cache.json', encrypt=False
cli.azure.cli.core.auth.binary_cache: load: /Users/xxxx/.azure/msal_http_cache.bin
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.core.windows.net//.default',), kwargs={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: 48e7770d-cea1-4198-a3c0-d772896d1e3b
cli.azure.cli.core.sdk.policies: Request URL: 'zzz'
cli.azure.cli.core.sdk.policies: Request method: 'GET'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'CommandName': 'backup protection enable-for-vm'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--subscription --resource-group --vault-name --vm --policy-name --exclude-all-data-disks --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.87.0 (HOMEBREW) azsdk-python-core/1.39.0 Python/3.13.13 (macOS-26.5.1-arm64-arm-64bit-Mach-O)'
cli.azure.cli.core.sdk.policies: 'Authorization': ''
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001?api-version=2025-11-01 HTTP/1.1" 200 4092
cli.azure.cli.core.sdk.policies: Response status: 200
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '4092'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'ETag': '"2"'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-resource': 'Microsoft.Compute/LowCostGetSubscriptionMaximum;23998,Microsoft.Compute/LowCostGetResource;34'
cli.azure.cli.core.sdk.policies: 'x-ms-need-to-refresh-epl-cache': 'False'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': '32a23f2b-c8a7-4c02-9758-e2f82d8f8161'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': 'b0ccdd66-5c34-40ec-a102-2dff3a3e524b'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'UKSOUTH:20260608T092506Z:b0ccdd66-5c34-40ec-a102-2dff3a3e524b'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: DAB435FE1D5B4A32ACDD51E59789F205 Ref B: DUB601080513042 Ref C: 2026-06-08T09:25:06Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Mon, 08 Jun 2026 09:25:06 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: {
"name": "yyyyos-uat-vm-001",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001",
"type": "Microsoft.Compute/virtualMachines",
"location": "uksouth",
"tags": {
"Environment": "Uat",
"Workload": "Uat",
"Client": "yyyyOS",
"DefenderPlan": "basic",
"hidden-title": "yyyyOS Uat VM"
},
"identity": {
"type": "SystemAssigned",
"principalId": "PPPP",
"tenantId": "MMMM"
},
"properties": {
"hardwareProfile": {
"vmSize": "Standard_D2as_v6"
},
"provisioningState": "Succeeded",
"vmId": "IIII",
"storageProfile": {
"imageReference": {
"publisher": "Canonical",
"offer": "ubuntu-24_04-lts",
"sku": "server",
"version": "latest",
"exactVersion": "24.04.202606060"
},
"osDisk": {
"osType": "Linux",
"name": "yyyyos-uat-vm-001_OsDisk_1_870e8155c44848728c35516d768dd87d",
"createOption": "FromImage",
"caching": "ReadWrite",
"managedDisk": {
"storageAccountType": "StandardSSD_LRS",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/disks/yyyyos-uat-vm-001_OsDisk_1_870e8155c44848728c35516d768dd87d"
},
"deleteOption": "Detach",
"diskSizeGB": 32
},
"dataDisks": [
{
"lun": 0,
"name": "yyyyos-uat-hddbackupdata-001",
"createOption": "Empty",
"caching": "None",
"managedDisk": {
"storageAccountType": "Standard_LRS",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/disks/yyyyos-uat-hddbackupdata-001"
},
"deleteOption": "Detach",
"diskSizeGB": 64,
"toBeDetached": false
}
],
"diskControllerType": "NVMe"
},
"osProfile": {
"computerName": "yyyyos-uat",
"linuxConfiguration": {
"disablePasswordAuthentication": true,
"ssh": {
"publicKeys": [
{
"path": "/home/sentinel/.ssh/authorized_keys",
"keyData": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJjNlR7rJJ7rQMR6AVPdswMYzvWa4HTvlgVDXi4mXXFR SSH keys for Sentinel VM yyyyos-uat-vm-001\n"
}
]
},
"provisionVMAgent": true,
"patchSettings": {
"patchMode": "ImageDefault",
"assessmentMode": "ImageDefault"
},
"enableVMAgentPlatformUpdates": true
},
"secrets": [],
"allowExtensionOperations": true,
"requireGuestProvisionSignal": true,
"adminUsername": "sentinel"
},
"securityProfile": {
"uefiSettings": {
"secureBootEnabled": true,
"vTpmEnabled": true
},
"securityType": "TrustedLaunch"
},
"networkProfile": {"networkInterfaces":[{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Network/networkInterfaces/yyyyos-uat-nic-001","properties":{"primary":true}}]},
"timeCreated": "2026-06-08T09:10:23.4509134+00:00"
},
"etag": ""2"",
"resources": [
{
"name": "AADSSHLoginForLinux",
"id": "/subscriptions/NNNN/resourceGroups/yyyyos-uat-rg-001/providers/Microsoft.Compute/virtualMachines/yyyyos-uat-vm-001/extensions/AADSSHLoginForLinux",
"type": "Microsoft.Compute/virtualMachines/extensions",
"location": "uksouth",
"properties": {
"autoUpgradeMinorVersion": true,
"provisioningState": "Succeeded",
"publisher": "Microsoft.Azure.ActiveDirectory",
"type": "AADSSHLoginForLinux",
"typeHandlerVersion": "1.0"
}
}
]
}
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=RecoveryServicesClient
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token_info: scopes=('https://management.core.windows.net//.default',), options={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: 50c2a332-58e8-458d-9d58-c710028e6f21
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001?api-version=2025-08-01'
cli.azure.cli.core.sdk.policies: Request method: 'GET'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'CommandName': 'backup protection enable-for-vm'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--subscription --resource-group --vault-name --vm --policy-name --exclude-all-data-disks --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.87.0 (HOMEBREW) azsdk-python-core/1.39.0 Python/3.13.13 (macOS-26.5.1-arm64-arm-64bit-Mach-O)'
cli.azure.cli.core.sdk.policies: 'Authorization': ''
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001?api-version=2025-08-01 HTTP/1.1" 200 1297
cli.azure.cli.core.sdk.policies: Response status: 200
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '1297'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': '7763c5d8-99f6-4055-9c4b-53e158e0201f'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': '7763c5d8-99f6-4055-9c4b-53e158e0201f'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'UKSOUTH:20260608T092507Z:7763c5d8-99f6-4055-9c4b-53e158e0201f'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: F09F16A180884528BE04ED11FB6DF55E Ref B: DUB241062309029 Ref C: 2026-06-08T09:25:06Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Mon, 08 Jun 2026 09:25:07 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: {"location":"uksouth","name":"yyyyos-general-bv-001","etag":"W/"datetime'2026-06-08T09%3A05%3A36.6677951Z'"","properties":{"provisioningState":"Succeeded","privateEndpointStateForBackup":"None","privateEndpointStateForSiteRecovery":"None","monitoringSettings":{"azureMonitorAlertSettings":{"alertsForAllJobFailures":"Enabled","alertsForAllReplicationIssues":"Enabled","alertsForAllFailoverIssues":"Enabled"},"classicAlertSettings":{"alertsForCriticalOperations":"Enabled","emailNotificationsForSiteRecovery":"Enabled"}},"backupStorageVersion":"Unassigned","securitySettings":{"softDeleteSettings":{"softDeleteRetentionPeriodInDays":14,"softDeleteState":"Enabled","enhancedSecurityState":"Enabled"},"multiUserAuthorization":"Disabled","sourceScanConfiguration":{"state":"Disabled"}},"redundancySettings":{"standardTierStorageRedundancy":"GeoRedundant","crossRegionRestore":"Disabled"},"secureScore":"None","bcdrSecurityLevel":"Poor","publicNetworkAccess":"Enabled","restoreSettings":{"crossSubscriptionRestoreSettings":{"crossSubscriptionRestoreState":"Enabled"}}},"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001","type":"Microsoft.RecoveryServices/vaults","sku":{"name":"Standard"}}
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=RecoveryServicesBackupClient
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token_info: scopes=('https://management.core.windows.net//.default',), options={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: 6f83aff2-9883-445d-bcc5-6ed1854eeaef
cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/?api-version=2025-02-01'
cli.azure.cli.core.sdk.policies: Request method: 'GET'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'CommandName': 'backup protection enable-for-vm'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--subscription --resource-group --vault-name --vm --policy-name --exclude-all-data-disks --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.87.0 (HOMEBREW) azsdk-python-core/1.39.0 Python/3.13.13 (macOS-26.5.1-arm64-arm-64bit-Mach-O)'
cli.azure.cli.core.sdk.policies: 'Authorization': '*****'
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/?api-version=2025-02-01 HTTP/1.1" 200 4496
cli.azure.cli.core.sdk.policies: Response status: 200
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '4496'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': 'daa12bec-96ee-4ddc-9082-b0f870bdfc04'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': 'ee6b5976-631b-11f1-9ec3-e2e69dd5e301'
cli.azure.cli.core.sdk.policies: 'x-ms-operation-identifier': 'tenantId=MMMM,objectId=07f57f22-a5cf-4310-bc1e-0a5bcc1573f5/uksouth/f8556cc8-7eee-45a3-805f-39d0609ac36b'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-resource-requests': '249'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': 'daa12bec-96ee-4ddc-9082-b0f870bdfc04'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'UKSOUTH:20260608T092507Z:daa12bec-96ee-4ddc-9082-b0f870bdfc04'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: 40649F02052C4544A83492943349B546 Ref B: DUB241062309023 Ref C: 2026-06-08T09:25:07Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Mon, 08 Jun 2026 09:25:07 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: {"value":[{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/HourlyLogBackup","name":"HourlyLogBackup","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureWorkload","workLoadType":"SQLDataBase","settings":{"timeZone":"UTC","issqlcompression":false,"isCompression":false},"subProtectionPolicy":[{"policyType":"Full","schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicy","scheduleRunFrequency":"Daily","scheduleRunTimes":["2026-06-08T19:00:00Z"],"scheduleWeeklyFrequency":0},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-08T19:00:00Z"],"retentionDuration":{"count":30,"durationType":"Days"}}}},{"policyType":"Log","schedulePolicy":{"schedulePolicyType":"LogSchedulePolicy","scheduleFrequencyInMins":60},"retentionPolicy":{"retentionPolicyType":"SimpleRetentionPolicy","retentionDuration":{"count":30,"durationType":"Days"}}}],"protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/DefaultPolicy","name":"DefaultPolicy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V1","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicy","scheduleRunFrequency":"Daily","scheduleRunTimes":["2026-06-08T19:00:00Z"],"scheduleWeeklyFrequency":0},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-08T19:00:00Z"],"retentionDuration":{"count":30,"durationType":"Days"}}},"instantRpRetentionRangeInDays":2,"timeZone":"UTC","protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/yyyyos-sentinel-enhanced-vm-backup-policy","name":"yyyyos-sentinel-enhanced-vm-backup-policy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V2","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicyV2","scheduleRunFrequency":"Daily","dailySchedule":{"scheduleRunTimes":["2025-04-14T06:00:00Z"]}},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2025-04-14T06:00:00Z"],"retentionDuration":{"count":31,"durationType":"Days"}}},"tieringPolicy":{"ArchivedRP":{"tieringMode":"DoNotTier","duration":0,"durationType":"Invalid"}},"instantRpRetentionRangeInDays":7,"timeZone":"UTC","protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/yyyyos-sentinel-basic-vm-backup-policy","name":"yyyyos-sentinel-basic-vm-backup-policy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V1","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicy","scheduleRunFrequency":"Daily","scheduleRunTimes":["2026-06-05T06:00:00Z"],"scheduleWeeklyFrequency":0},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-05T06:00:00Z"],"retentionDuration":{"count":31,"durationType":"Days"}}},"instantRpRetentionRangeInDays":5,"timeZone":"UTC","protectedItemsCount":0}},{"id":"/subscriptions/NNNN/resourceGroups/yyyyos-general-rg-001/providers/Microsoft.RecoveryServices/vaults/yyyyos-general-bv-001/backupPolicies/EnhancedPolicy","name":"EnhancedPolicy","type":"Microsoft.RecoveryServices/vaults/backupPolicies","properties":{"backupManagementType":"AzureIaasVM","policyType":"V2","instantRPDetails":{},"schedulePolicy":{"schedulePolicyType":"SimpleSchedulePolicyV2","scheduleRunFrequency":"Hourly","hourlySchedule":{"interval":4,"scheduleWindowStartTime":"2026-06-08T08:00:00Z","scheduleWindowDuration":12}},"retentionPolicy":{"retentionPolicyType":"LongTermRetentionPolicy","dailySchedule":{"retentionTimes":["2026-06-08T08:00:00Z"],"retentionDuration":{"count":30,"durationType":"Days"}}},"instantRpRetentionRangeInDays":2,"timeZone":"UTC","protectedItemsCount":0}}]}
cli.azure.cli.command_modules.backup.custom: Starting in May 2025, Trusted Launch virtual machines can be protected with both standard and enhanced policies via PS and CLI
cli.azure.cli.core.azclierror: Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
cli.azure.cli.core.azclierror: The command failed with an unexpected error. Here is the traceback:
az_command_data_logger: The command failed with an unexpected error. Here is the traceback:
cli.azure.cli.core.azclierror: 'NoneType' object has no attribute 'protected_items_count'
Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
az_command_data_logger: 'NoneType' object has no attribute 'protected_items_count'
Traceback (most recent call last):
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 677, in execute
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 820, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 812, in _run_job
return cmd_copy.exception_handler(ex)
~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/_exception_handler.py", line 11, in backup_exception_handler
raise ex
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 789, in _run_job
result = cmd_copy(params)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/init.py", line 335, in call
return self.handler(*args, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
return op(**command_args)
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom_base.py", line 405, in enable_protection_for_vm
return custom.enable_protection_for_vm(cmd, client, resource_group_name, vault_name, vm, policy_name,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diskslist, disk_list_setting, exclude_all_data_disks)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/lib/python3.13/site-packages/azure/cli/command_modules/backup/custom.py", line 926, in enable_protection_for_vm
if policy.properties.protected_items_count >= 1000:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'protected_items_count'
To check existing issues, please visit: https://github.com/Azure/azure-cli/issues
cli.knack.cli: Event: Cli.PostExecute [<function AzCliLogging.deinit_cmd_metadata_logging at 0x105b80540>]
az_command_data_logger: exit code: 1
cli.main: Command ran in 2.050 seconds (init: 0.089, invoke: 1.962)
Expected behavior
Enabled protection with no issues
Environment Summary
azure-cli 2.87.0
core 2.87.0
telemetry 1.1.0
Extensions:
account 0.2.5
containerapp 1.3.0b1
ml 2.41.0
reservation 0.3.1
resource-graph 2.1.1
ssh 2.0.6
Dependencies:
msal 1.36.0
azure-mgmt-resource 24.0.0
Python location '/opt/homebrew/Cellar/azure-cli/2.87.0/libexec/bin/python'
Config directory '/Users/xxx/.azure'
Extensions directory '/Users/xxx/.azure/cliextensions'
Python (Darwin) 3.13.13 (main, Apr 7 2026, 18:19:01) [Clang 21.0.0 (clang-2100.0.123.102)]
Legal docs and information: aka.ms/AzureCliLegal
Your CLI is up-to-date.
Additional context
No response