ウェブサイト検索

PowerShell: アクティブディレクトリユーザーログオン名の変更(バルク)


Active Directory のユーザーは、自分のログオン名とパスワードを使ってログオンします。しかし、ユーザー名を割り当てるためのルールは何でしょうか?g.surname?surname?gsurname?命名規則は何ですか?この記事では、命名規則に合わないユーザーを探して修正します。

命名規則に一致しないログオン名を検索しています

次のことに関しては、すべての新しく作成したユーザーに対して g.苗字 という命名規則を使用することが前提とされています(パトリック・グリューナー=p.gruenauer)。したがって、ドット(.)を含まないユーザー名を検索する必要があります。以下のものがあります:

現在、特定の組織単位(人々)で命名規則を満たしていないユーザーを探しています。

リストを注意深くチェックしてください。次のステップでは、SamAccountNameとUserprincipalnameを変更し始めます。

ユーザーログオン名の変更

今から、SamAccountNameとUserprincipalNameを名(givenname)の最初の文字の後にドット(.)を付け、その後に姓(lastname)の小文字を続けて置き換えます。

Change the logon name of all users in the HR OU to the first letter of the first name and the last name.
For example, John Doe: doe@domain.com ==> j.doe@domain.com

Specify the OU where the users are located
$OU = "OU=HR,DC=PAGR,DC=INET"
Change the logon name of all users

Get-ADUser -Filter * -SearchBase $OU |
Foreach-Object {
    Set-ADUser $_ -SamAccountName ($_.givenname.substring(0,1) + '.' + $_.surname).tolower() `
    -UserPrincipalName (($_.givenname.substring(0,1) + '.' + $_.surname).tolower() + "@" + "$env:userdnsdomain") -Verbose
}

シュワルツェンベルクはその後a.schwarzenbergになります。

最後になりますが

ユーザーに知らせるのを忘れないで!😉