如何获取可用于Invoke-AzResourceAction的资源支持操作列表?
如何确定Invoke-AzResourceAction的-Action参数值
你在使用以下PowerShell命令时,对-Action host/default/listkeys的来源存在疑问:
Get-AzResource -Name RESOURCE-NAME | Invoke-AzResourceAction -Action host/default/listkeys -Force
按照官方文档提示使用Azure资源管理器工具后未找到匹配操作,可通过以下几种方法自行查找可用的-Action参数值:
使用Azure CLI查询资源操作
执行az resource list-actions命令并指定目标资源ID,直接获取该资源支持的所有操作,返回结果的格式与Invoke-AzResourceAction所需的-Action参数完全匹配:az resource list-actions --ids <你的资源ID>查阅对应资源的REST API文档
Invoke-AzResourceAction本质是调用Azure REST API,-Action参数值对应API的操作路径(剔除API版本部分)。比如host/default/listkeys对应的就是目标资源类型下listkeys操作的API路径,找到对应资源的REST API文档即可看到完整的操作路径信息。通过Get-AzResourceProvider获取操作列表
先定位目标资源的提供者和类型:Get-AzResource -Name RESOURCE-NAME | Select-Object ResourceType, ResourceProviderNamespace再用提供者和类型查询支持的操作,返回结果中的
Name字段就是可用的-Action值(需去掉前缀的[提供者]/[资源类型]/部分):Get-AzResourceProvider -ProviderNamespace <提供者名称> -ResourceType <资源类型> | Select-Object -ExpandProperty Operations修正Azure资源管理器工具的使用方式
确保在工具中选择了正确的订阅和资源实例,部分操作是针对具体资源实例而非资源类型的通用操作,需要定位到目标资源后再查看其专属操作列表,而非仅查看资源类型的全局操作。
内容的提问来源于stack exchange,提问作者Shuzheng
相关产品推荐
相关产品推荐

