Azure 资源锁 - 被 Powershell Remove-AzureVM 绕过

Posted

技术标签:

【中文标题】Azure 资源锁 - 被 Powershell Remove-AzureVM 绕过【英文标题】:Azure Resource Lock - Bypassed by Powershell Remove-AzureVM 【发布时间】:2016-10-24 01:54:00 【问题描述】:

在我的 Azure 订阅中...

使用 Powershell 为 CLASSIC 资源组创建了一个新的资源组 LOCK。 New-AzureRmResourceLock -LockLevel CanNotDelete -LockName MYRG_DeleteLock -ResourceGroupName MYRG

我在此资源组中有一个 CLASSIC 存储帐户和一个 CLASSIC VM。 正如预期的那样,当我尝试从 Azure 门户中删除 VM 时,它保护了删除并通知“无法删除 VM”。

但是当我使用下面的 POWERSHELL 命令时,它只是绕过了 RESOURCE GROUP 上的锁将其删除。 删除-AzureVM -DeleteVHD -ServiceName MYSERVICE -Name MYVM

我是否缺少任何步骤?

【问题讨论】:

【参考方案1】:

Remove-AzureVM Cmdlet 用于使用不知道Azure Resource Manager (ARM)Azure Service Management API 管理经典资源。管理锁是 ARM 的一部分。这就是为什么当您调用Remove-AzureVM 时,它忽略了资源组上的锁定(只是因为它不知道这样的事情)并删除了VM。

【讨论】:

有没有办法创建经典感知资源组锁?

以上是关于Azure 资源锁 - 被 Powershell Remove-AzureVM 绕过的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 powershell “解析” Azure 资源 ID 对象

Azure Powershell - 检查资源是不是存在

Azure按订阅,资源组,资源类型导出所有资源powershell命令

如何使用 python 列出应用于 azure 资源组的锁

对于自动化帐户,使用 azure 资源图是不是比 powershell cmdlet 更快?

如何使用PowerShell 收集Azure VM Image列表