我需要更新所有 Azure AD 组(所有类型:统一、动态...)的电子邮件地址域,并且我正在使用带有最新稳定 AzureAD 模块的 PowerShell 7。
我在使用 Set-AzureADMSGroup cmdlet 为“Mail”和“ProxyAddresses”属性设置新值时遇到问题。有人能帮忙/提供信息或示例说明如何正确设置这些属性吗,因为文档对此并不清楚。https://docs.microsoft.com/en-us/powershell/module/azuread/set-azureadmsgroup?view=azureadps-2.0
如果此 cmdlet 无法实现此功能,那么我需要使用 Exchange Online Powershell 通过与 GroupTypes 相关的单独 cmdlet 来管理所有组?
Import-Module AzureAD -UseWindowsPowerShell
Connect-AzureAD
$AzureADMSGroups = Get-AzureADMSGroup -All:$true -Filter "mail ge ' '"
foreach ($AzureADGroup in $AzureADGroups) {
$newMail = $AzureADGroup.Mail.Replace('olddomain.com','newdomain.com')
$AzureADGroup | Set-AzureADMSGroup -Replace @(Mail = $newMail } }
}
我遇到的错误是未找到 -Replace 参数。我还尝试过:
$AzureADGroup.Mail = $newMail
$AzureADGroup | Set-AzureADMSGroup
这不会引发任何输出或错误,但 Azure AD 中的值不会更改。我还需要以相同的方式更新 ProxyAddresses 字段/属性。
答案1
根据文档,Set-AzureADMSGroup cmdlet 似乎不支持更改电子邮件地址这里。
$AzureADGroup.Mail = $newMail
它只是改变变量的值。
尝试使用 Exchange Online 模块
Set-UnifiedGroup
Set-Group
Set-DistributionGroup
Set-DynamicDistributionGroup
ETC。
如果您确切地告诉我您的需求,我可以帮助您写。