2

これがActiveDirectoryにテストユーザーアカウントを追加するためのPowerShellコードです...問題:$iが1から99の間の場合、すべてが正常に機能します... 100に達するとすぐに$i、作成されたアカウントが無効になり、コンソールに「The password does not meet the length, complexity, or history requirement of the domain.」というエラーメッセージが表示されます。

何が問題なのか分かりますか?

//編集:ドメインにパスワードポリシーが設定されていません

ありがとう

Import-Module ActiveDirectory

for($i=1; $i -le 500; $i++){

$name="Name1_$i" #name
$surname="Surname1_$i" #surname
$logon="logon1$i" #logon
$plainPass='pAs5w0rd'+$i+'&G'
$password=ConvertTo-SecureString -AsPlainText -Force -String $plainPass 


New-ADUser -Enabled 1 -Name $name -AccountPassword $password -DisplayName "$name $surname" -GivenName $name -UserPrincipalName $logon@testdomain.local -SamAccountName $logon -Surname $surname -Path "OU=SomeTest,DC=testdomain,DC=local"

}
4

1 に答える 1

0

だから私はあなたの問題を再現します。あなたはデフォルトのドメインポリシーの下にあります。そしていつ:

name = Name1_100
surname = Surname1_100
samAccountName = Logon1100

パスワードに含まれる名前の部分が大きすぎます (パスワードの複雑さと呼ばれるドメインのデフォルトのパスワード ポリシーを参照してください) 。

samAccountName は、それがパスワードの一部であるかどうかを判断するためだけに全体がチェックされます。

だから試してみてください

$plainPass='pAs5w0rd'+($i+1)+'&G'

それが動作します。

于 2012-06-11T20:12:14.777 に答える