PowerShell:更改 Active Directory 用户登录名(批量)
Active Directory 用户使用其登录名和密码登录。但是分配用户名的规则是什么? g.姓氏?姓? g姓?命名约定是什么?本文查找并修改不符合命名约定的用户。
搜索与命名约定不匹配的登录名
对于以下内容,假设您对所有新创建的用户使用 g.surname 命名约定 (Patrick Gruenauer=p.gruenauer)。因此,我们必须搜索不带点 (.) 的用户名。这是一个:
现在,我们正在寻找特定组织单位(人员)中不符合命名约定的用户。
Get-ADUser -Filter {SamAccountName -NotLike "*.*"} -Searchbase "OU=People,DC=SID-500,DC=COM" | Select-Object Name,SamAccountName,Userprincipalname
仔细检查清单。在下一步中,我们将开始修改他们的 SamAccountName 和 Userprincipalname。
更改用户登录名
现在我们将用给定名称的第一个字母后跟 来替换 SamAccountName 和 UserprincipalName。以及小写的姓氏。
Get-ADUser -Filter {(SamAccountName -NotLike "*.*") -and (UserprincipalName -notlike "*.*@*")} -SearchBase "OU=People,DC=SID-500,DC=COM" | Foreach-Object {Set-ADUser $_ -SamAccountName ($_.givenname.substring(0,1) + '.' + $_.surname).tolower() -UserPrincipalName (($_.givenname.substring(0,1) + '.' + $_.surname).tolower() + "@" + "$env:userdnsdomain")}
施瓦岑贝格随后成为 a.schwarzenberg:
最后但并非最不重要的
别忘了通知用户! ?



