使用多个电子邮件接收器更新操作组 / Set-AzActionGroup

问题描述

我正在尝试添加多个电子邮件地址,但遇到了问题。每个电子邮件地址必须是它自己的接收者,并且每个接收者只能有一个电子邮件地址。所以我的逻辑是,如果我运行这段代码

    $emails = @($requestor,$careerSponsor,$practiceLead)
    foreach ($email in $emails) {
        $emailReceiver = New-AzActionGroupReceiver -EmailReceiver -EmailAddress $email -Name $email
        Set-AzActionGroup -ResourceGroupName $rgName -Name budgetAG -ShortName budgetAG -Receiver $emailReceiver
    }

我可以使用所有三个电子邮件地址更新我的操作组。然而,结果我得到的是最后一个添加到操作组的。我收到了三个成功的确认,但它所做的只是将一个电子邮件接收器替换为下一个

我无法向 -Receiver 参数添加三个电子邮件接收器,我收到 HTTP BADREQUEST 错误。没有关于如何添加多个接收器的文档。我可以在门户中执行此操作,但显然不能通过脚本执行此操作。有什么想法吗?

解决方法

收集接收者并将它们传递给 Set-AzActionGroup

$emails = @($requestor,$careerSponsor,$practiceLead)
$emailReceivers = @()

foreach ($email in $emails) {
    $emailReceiver = New-AzActionGroupReceiver -EmailReceiver -EmailAddress $email -Name $email
    $emailReceivers += $emailReceiver
}

Set-AzActionGroup -ResourceGroupName $rgName -Name budgetAG -ShortName budgetAG -Receiver $emailReceivers