오류 : "New-ADUser : 개체 이름에 잘못된 구문이 있습니다."

Cnelson

사용자 계정을 복사하기 위해 직장에서 PowerShell 스크립트를 만들고 있습니다. 스크립트는 내 테스트 서버 2016 VM에서 완벽하게 작동합니다. 또한 동료 Windows 10 PC의 작업 환경에서도 작동하지만 로컬 컴퓨터에서는 실행할 수 없습니다. 다음 오류를 반환합니다.

New-ADUser : 개체 이름에 잘못된 구문 
이 있습니다. 155 char : 1 
+ New-ADUser -Name $ New_DisplayName @params 
+ ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo : 지정되지 않음 : (CN = cnelson test ... ctions, DC = local : String) [New-ADUser], ADException 
    + FullyQualifiedErrorId : ActiveDirectoryServer : 8335, Microsoft.ActiveDirectory.Management.Commands.NewADUser 

Add-ADGroupMember : 
'DC =, DC = local' 에서 ID가 'cnelsontest1'인 개체를 찾을 수 없습니다 . 
줄 : 159 char : 29 
+ Add-ADGroupMember -Members $ Username.Text 
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ 
    + CategoryInfo : ObjectNotFound : (cnelsontest1 : ADPrincipal) [Add-ADGroupMember], ADIdentityNotFoundException
    + FullyQualifiedErrorId : SetADGroupMember.ValidateMembersParameter, Microsoft.ActiveDirectory.Management.Commands.AddADGroupMember
$params = @{'SamAccountName' = $Username.Text;
            'Instance' = $AD_Account_To_Copy;
            'DisplayName' = $New_DisplayName;
            'GivenName' = $FirstName.Text;
            'Path' = $New_Path;
            'SurName' = $LastName.Text;
            'ChangePasswordAtLogon' = $true;
            'Enabled' = $true;
            'UserPrincipalName' = $Username.Text;
            'AccountPassword' = $New_Pass;
            'EmailAddress' = $Username.Text + '@azcorrections.gov';
            'HomePage' = $HomePage.HomePage;
            'Description' = $NewDescription.Description;
            'Office' = $NewOffice.Office;
            'StreetAddress' = $NewStreet.StreetAddress;
            'City' = $NewCity.City;
            'State' = $NewState.State;
            'PostalCode' = $NewPostalCode.PostalCode;
            'Title' = $NewTitle.Title;
            'Department' = $NewDepartment.Department;
            'Company' = $NewCompany.Company;
            'ScriptPath' = $NewScript.ScriptPath;
            'OfficePhone' = $PhoneNumber.text;
            }

New-ADUser -Name $New_DisplayName @params

전체 스크립트 링크

PSVersion 5.1.150을 실행하고 있습니다.

내가 무엇을 놓치고 있으며 왜이 오류가 발생하는지에 대한 아이디어가 있습니까? 나는 그것이 무엇을 의미하는지, 왜 그것이 하나의 동료 컴퓨터에서 작동하지만 내 컴퓨터에서는 작동하지 않는지 전혀 모릅니다.


편집 :$params 오류 시점의 :

이름 값 
---- ----- 
AccountPassword System.Security.SecureString 
설명 Chris Nelson 테스트 계정 
UserPrincipalName cnelsontest1 
HomePage http : // ... 
DisplayName cnelson test1 
SamAccountName cnelsontest1 
ScriptPath 
EmailAddress [email protected] 
Office 테스트 
GivenName cnelson 
제목 SYSTEMS / LAN ADMR 
회사 사무실 
전화 555-1234 
StreetAddress Sesame Street 
PostalCode 54321 
SurName test1  
State
Department IT 
ChangePasswordAtLogon True 
Path cnelson, OU = IT_TECHSRVS, OU = Information Technology, OU = ADMIN, OU = CENT_OFF, DC = example, DC = com 
City                   
Enabled True 
Instance CN = test \, cnelson, OU = IT_TECHSRVS, OU = 정보 기술 , OU = ADMIN, OU = CENT_OFF, DC = example, DC = com

다음 $New_Path과 같이 계산 합니다.

$New_Path = (Get-ADUser ($UsernameCopy.Text)).DistinguishedName -replace '^.*?,', ''
Ansgar Wiechers

의 값에서 일반 이름 부분을 제거하는 방법 $AD_Account_To_Copy은 결함이 있습니다. -replace '^.*?,', ''문자열의 첫 번째 쉼표까지 모든 것을 제거합니다. 일반 이름 자체에 쉼표 (예 : in CN=test\, cnelson,OU=...)가 포함되어 있으면 대체 항목이 제거되지 않습니다 cnelson,. 긍정적 인 예측 어설 션으로 정규식을 수정하여 첫 번째 이전의 모든 항목 OU=이 제거되도록합니다.

$New_Path = $AD_Account_To_Copy -replace '^.*?,\s*(?=ou=)', ''

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사