Domyślnie użytkownik w AD nie ma ustawionego preferowanego języka – parametr PreferredLanguage jest ustawiony na null. Ustawienie preferowanego języka jest przydatne na potrzeby aplikacji „chmurowych” MS. Brak ustawienia preferowanego języka może skutkować wyświetleniem np. strony teams w innym języku.
Aby ustawić preferowany język na polski dla pojedynczego użytkownika należy wydać polecenie
get-ADUser nazwa_uzytkownika -Properties PreferredLanguage |Set-ADUser -replace @{PreferredLanguage='pl-PL'}
Dla wszystkich użytkowników z danego OU możemy wykonać to poleceniem
Get-ADUser -Filter * -Properties PreferredLanguage -SearchBase 'OU=uzytkownicy,DC=domena,DC=local'| Set-ADUser -replace @{PreferredLanguage='pl-PL'}
Dla wszystkich aktywnych użytkowników w AD:
Get-ADUser -Filter * -Properties PreferredLanguage | where { ($_.enabled -eq $true) }|Set-ADUser -replace @{PreferredLanguage='pl-PL'}
Aby sprawdzić jacy użytkownicy nie mają ustawionego preferowanego języka
Get-ADUser -Filter * -Properties PreferredLanguage | where {
-AND ($_.enabled -eq $true)
($_.PreferredLanguage -eq $null)}
Aby wykluczyć np. konta techniczne nieposiadające adresu email
Get-ADUser -Filter * -Properties mail,PreferredLanguage | where { ($_.enabled -eq $true) -AND ($_.PreferredLanguage -eq $null) -AND ($_.mail -ne $null)} | ft distinguishedname,preferredlanguage
Aby sprawdzić pojedyncze OU ale bez podrzędnych OU
Get-ADUser -Filter * -Properties PreferredLanguage -SearchBase 'OU=uzytkownicy,dc=domena,dc=local' -SearchScope onelevel| where { ($_.enabled -eq $true) -AND ($_.PreferredLanguage -eq $null)}|select DistinguishedName
Dla kont administratorów zalecam ustawienia domyślnego języka na angielski
Get-ADUser -Filter * -Properties PreferredLanguage -SearchBase 'OU=Administratorzy,DC=domena,DC=local'| where { ($_.enabled -eq $true) }|Set-ADUser -replace @{PreferredLanguage='en-US'}