0

https://docs.microsoft.com/en-us/rest/api/compute/virtual-machine-run-commands/create-or-update#request-body

您能否给出一个实现示例以应用上述文档中的步骤?我无法弄清楚步骤是什么以及如何申请。

提前致谢,

4

2 回答 2

0

您还可以使用Invoke-AzRestMethodcmdlet 使用现有上下文执行 PUT 操作。有关更多详细信息,请参阅参考文档:https ://docs.microsoft.com/powershell/module/az.accounts/invoke-azrestmethod

或者,如果目标是在 VM 上运行命令,您还可以考虑使用Invoke-AzVMRunCommand此处所述的 cmdlet: https ://docs.microsoft.com/powershell/module/az.compute/invoke-azvmrunco​​mmand 。

于 2022-03-01T05:48:41.140 回答
0

由于我无法使用我的公司 Azure 环境进行测试,因此我将盲目地进行测试,但至少这将是您能够进行故障排除的一个良好开端。

我将所有请求的信息设置为变量,以便您可以根据需要更改它们。这里最值得怀疑的部分是 Azure 希望您如何执行授权标头。

在您链接的页面上,该菜单上有一个“试试这个”选项,您应该能够构建自定义 API 请求,它将在那里包含标题。

让我知道这是怎么做的,如果有问题,我可以帮助解决问题。

$runcommandname = ""
$subscriptionId = ""
$resourcegroupname = ""
$vmName = ""

$apiKey = ""
$resource = "https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourcegroupname/providers/Microsoft.Compute/virtualMachines/$vmName/runCommands/$runcommandname"
$apiversion = "?api-version=2021-07-01"
$resource = $resource + $apiversion

$authHeader = @{
    'Authorization' = "apiToken $apiKey"
}


Invoke-RestMethod -Method Put -Uri $resource -H $authHeader
于 2022-03-01T02:44:38.570 回答