Power shell을 사용하여 AD 보안 설정 편집 못했습니다. 예. Import-Csv “C:\Users\me\Desktop\users.csv” | Where-Object {$_.Name}

Windows 2012r2에서 장애 조치 클러스터에 사용자 그룹을 추가하려고합니다. 노드를 서로 관리자로 추가해야합니다. 나는 그들 자신의 OU에 넣었다. 그러나 powershell 및 csv 가져 오기별로 스크립트를 작성하고 싶었습니다. 아이디어?

내 Google fu는 어느 곳에서도 얻지 못했습니다.

예.

Import-Csv "C:\Users\me\Desktop\users.csv" | Where-Object {$_.Name} |`
 ForEach-Object {`
New-ADUser `
-Name $_."Name" `
-GivenName $_."GivenName" `
-Surname $_."Surname" `
-Description $_."Department" `
-SamAccountName $_."Logon_Username" `
-UserPrincipalName $_."UPN" `
-DisplayName $_."Display_Name" `
-AccountPassword (ConvertTo-SecureString -AsPlainText "P@ssw0rd1!" -Force) `
-Path "OU=Users,OU=Head Office,OU=International,DC=company,DC=com" `
-ChangePasswordAtLogon $true `
-Enabled $true | Enable-ADAccount | `
Add-ADGroupMember "QA_Users" $_."Logon_Username";
}

이것이 내가 현재 사용하는 것입니다.

WHereIwantToChange



답변

여기에는 오류 처리가 없습니다. 시작점으로 제공됩니다. CSV 제목을 AD 사용자 개체 속성 이름과 정확히 일치시켜 CSV를 작성하여 작업을 단순화하십시오. 그런 다음 가져온 개체는 기본적으로 사용자 개체입니다.

$AccountList = Import-Csv "C:\Users\me\Desktop\users.csv"
$UserOU = "OU=Users,OU=Head Office,OU=International,DC=company,DC=com"
$AccountPassword = (ConvertTo-SecureString -AsPlainText "P@ssw0rd1!" -Force)

Foreach ($Account in $AccountList) {
    New-ADUser $Account -ChangePasswordAtLogon $True -AccountPassword $AccountPassword -Enabled $True -Path
    (Get-ADUser $Account.UserPrincipalName).UserPrincipalName + "Created"
    }