답변:
이름, 암호 등을 취하는 스크립트를 찾고 있는지 확실하지 않지만 다음 명령으로 새 사용자를 만듭니다. UserPrincipalName은 선택 사항입니다. 이 경우 이메일이 사용되지 않습니다.
New-ADUser -SamAccountName nnn2 -Name "nnn2" -UserPrincipalName nnn2@jj -AccountPassword (ConvertTo-SecureString -AsPlainText "somePassword" -Force) -Enabled $true -PasswordNeverExpires $true -Path 'CN=Users,DC=jjdomain,DC=net'
트러스트 된 도메인에서 사용자를 만들려면 위 명령에 -server dns.domain 을 추가 하십시오.
add-windowsfeature rsat-ad-powershell;
ipmo activedirectory
Quest의 AD cmdlet을 조사하는 것이 좋습니다.
http://www.quest.com/powershell/activeroles-server.aspx
새로운 AD 사용자는 다음과 같습니다.
new-QADUser -name 'user1' -ParentContainer 'OU=companyOU,DC=company,DC=com' -samAccountName 'user1' -UserPassword 'P@ssword'
그러나 '순수한'Powershell의 경우 Shay의 Idera 스크립트 제안은 추가 cmdlet을 사용하여 절약 할 수 있습니다. 스크립트를 다운로드 할 때 문제가 발생하면 Quest cmdlet을 다운로드 할 수도 있습니다.
위의 Brad의 대답을 취하고 아래에 조금 더 자세하게 추가했습니다 (Brad 덕분 에이 방향으로 생각하게했습니다).
입력 CSV 파일 :
cn,givenname,sn,sAMAccountName,displayname,UserPrincipalName
Joe Smith,Joe,Smith,jsmith,Joe Smith,jsmith@domain.com
Susan Johnson,Susan,Johnson,sjohnson,Susan Johnson,sjohnson@domain.com
암호:
$inputFile = Import-CSV <insert filepath here>
foreach($line in $inputFile)
{
## need to add quotes around DSN
$dsn = "`"cn="+$line.cn+",ou=userou,dc=domain,dc=com`""
$samid = $line.sAMAccountName
$ln = $line.sn
$fn = $line.givenname
$dn = $line.displayname
## need to add quotes around display name
$dn2 = "`"$dn`""
$upn = $line.UserPrincipalName
cmd /c "dsadd user $dsn -samid $samid -ln $ln -fn $fn -display $dn2
-upn $upn -mustchpwd yes -pwd TempP@assw0rd"
write-host `n
}
행운을 빕니다!
다른 네트워크 / 도메인에서 동일한 사용자를 설정하는 경우 일반 .cmd 파일을 사용하여 트릭을 수행해야합니다. 각 사용자에 대해 dsadd 명령을 호출 하십시오 .
dsadd 또는 dsmod에 대한 호출은 powershell 스크립트의 중간에서도 작동합니다. powershell 스크립트로 가져 와서 dsadd 또는 dsmod를 호출하여 각 줄을 반복 할 수있는 사용자 이름 / 암호의 CSV 파일을 가질 수도 있습니다.
$inputFile = Import-CSV <insert filepath here>
foreach($line in $inputFile)
{
dsadd user -samid $line.Username -pwd $line.Password
}
ds 명령 (dsadd, dsmod 등)은 활성 디렉토리 역할과 함께 설치되므로 AD를 시작하고 실행하면 사용할 수 있습니다.