微软 365 | Azure AD:更改用户登录名(批量)
在某些时候,您的用户已通过 Azure Active Directory Connect 软件工具包上传。一段时间后,您发现您的用户无法使用他们习惯的常用用户名。他们只能使用默认的 onmicrosoft.com 登录名。最后您发现在配置 AD 连接期间忘记输入自定义域(例如 sid-500.com)。这很烦人。在这篇博文中,我将拯救你。有了 PowerShell,还有什么?
好吧,我要说的就是这个困境:
等一下,您现在可能认为可以直接在 Microsoft 365 门户的用户边栏选项卡中更改它。恩,那就对了。您可以在这里执行此操作:
但如果有数百或数千个用户怎么办?继续阅读……
连接到 Azure AD
打开 PowerShell ISE 或 Visual Studio Code。
输入以下行以连接到您的 Microsoft 365 | Azure AD 租户。请注意,仅当未安装 Azure AD 模块时才需要第一个命令。
Install-Module -Name AzureAD
Connect-AzureAD
美好的。这让我明白了这篇博文的要点。
更改所有 Azure 用户登录名(批量)
以下行将所有用户登录名更改为您选择的域名。更改第 5 行以匹配您的域名。
$users = Get-AzureADUser | Select-Object -ExpandProperty UserPrincipalName
foreach ($u in $users) {
$new = $u -replace "sid500.onmicrosoft.com","sid-500.com"
Set-AzureADUser -ObjectId $u -UserPrincipalName $new
}
看起来不错。
仅更改特定组的用户的登录名(批量)
要更改特定组中的用户的用户登录名,请检索所有组成员,然后运行代码。
首先,获取组的ObjectId。
Get-AzureADGroup | Sort-Object DisplayName
记下组的 ObjectId。
然后运行以下代码来更改该组中所有用户的登录名。 Customzie第 1 行并输入您的组 ObjectId。另请注意第 6 行并将这些值替换为您的域名。
$group = Get-AzureADGroupMember -ObjectId 4d530d96-c1b6-4e64-9386-93b050c40e7e |
Select-Object -ExpandProperty UserPrincipalName
foreach ($u in $group) {
$new = $u -replace "sid500.onmicrosoft.com","sid-500.com"
Set-AzureADUser -ObjectId $u -UserPrincipalName $new
}
任务完成。
希望这有帮助。


