Назад | Перейти на главную страницу

New-ADUser -Name Length слишком длинная

Мне нужно добавить около 500 пользователей в OU в AD

Я написал все, что мне нужно, но выдает ошибку: the name provided is not a properly formed

Вот сценарий

New-ADUser -Name C080CAB1-9756-409F-914D-AE3971F67DE7 -Path "OU=Staging,DC=domain,DC=local" -accountPassword (convertto-securestring "zagreb+scotch8355" -asplaintext -force) -PasswordNeverExpires $True -CannotChangePassword $false -Enabled $true

Я провел пару тестов, чтобы выяснить, в чем проблема:

New-ADUser -Name "C080CAB1-9756-409F-914D-AE3971F67DE7" -Path "OU=Staging,DC=domain,DC=local" -accountPassword (convertto-securestring "zagreb+scotch8355" -asplaintext -force) -PasswordNeverExpires $True -CannotChangePassword $false -Enabled $true

New-ADUser -Name 'C080CAB1-9756-409F-914D-AE3971F67DE7' -Path "OU=Staging,DC=domain,DC=local" -accountPassword (convertto-securestring "zagreb+scotch8355" -asplaintext -force) -PasswordNeverExpires $True -CannotChangePassword $false -Enabled $true

New-ADUser -Name C080CAB1`-9756`-409F`-914D`-AE3971F67DE7 -Path "OU=Staging,DC=domain,DC=local" -accountPassword (convertto-securestring "zagreb+scotch8355" -asplaintext -force) -PasswordNeverExpires $True -CannotChangePassword $false -Enabled $true

Наряду с парой других вариаций

Что сработало:

New-ADUser -Name C080CAB1-9756-409F -Path "OU=Staging,DC=domain,DC=local" -accountPassword (convertto-securestring "zagreb+scotch8355" -asplaintext -force) -PasswordNeverExpires $True -CannotChangePassword $false -Enabled $true

Поэтому я думаю, что это может быть проблема с длиной, но я не уверен, как заставить скрипт работать.

Вы хотите отображать имя для этой строки из 36 символов или логина как строки из 36 символов

Если вы используете server 2012 R2, вы можете установить только отображаемое имя на 20 символов, однако имя для входа может быть до 64 символов (я думаю), используя "-UserPrincipalName"

Попробуй это

New-ADUser -Name C080CAB1-9756-409F-9 -UserPrincipalName C080CAB1-9756-409F-914D-AE3971F67DE7 -Path "OU=Staging,DC=domain,DC=local" -accountPassword (convertto-securestring "zagreb+scotch8355" -asplaintext -force) -PasswordNeverExpires $True -CannotChangePassword $false -Enabled $true

Это создаст отображаемое имя и усечет значение -UserPrincipalName, которое будет именем пользователя для входа в систему.

Просмотрите свойства любого пользователя, чтобы установить соответствующие флаги.

http://thenerdservice.com/useradd.png

Вы можете видеть, что вход в систему до 200 усечен, однако имя пользователя не указано.

http://thenerdservice.com/userlogin.png

Ограничение на 20 символов для sAMAccountName. Нет никакого реального способа обойти это. Забавно то, что для него зарезервировано 256 символов (~ 120 Unicode), но механизм служб каталогов позволяет использовать только 20.

Изменить: позвольте мне быть более ясным. Вы жестяная банка иметь имя, превышающее 20 символов, но не sAMAccountName. Это может удовлетворить ваши потребности. Позвольте мне продемонстрировать:

New-ADUser C080CAB1-9756   # 20 character limit here

Rename-ADObject 'CN=C080CAB1-9756,CN=Users,DC=lab,DC=com

Get-ADUser C080CAB1-9756

DistinguishedName: CN=C080CAB1-9756-409F-914D-AE3971F67DE7,CN=Users,DC=lab,DC=com
Name             : C080CAB1-9756-409F-914D-AE3971F67DE7
SamAccountName   : C080CAB1-9756
DisplayName      :