Ich erstelle ein PowerShell-Skript, um Benutzerkonten zu kopieren. Das Skript funktioniert perfekt auf meiner Test Server 2016 VM. Es funktioniert auch in unserer Arbeitsumgebung auf einem Windows 10 PC eines Kollegen, aber ich kann es nicht auf meinem lokalen Computer ausführen. Es gibt den folgenden Fehler:Fehler: "New-ADUser: Der Objektname hat eine ungültige Syntax"
New-ADUser : The object name has bad syntax At line:155 char:1 + New-ADUser -Name $New_DisplayName @params + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (CN=cnelson test...ctions,DC=local:String) [New-ADUser], ADException + FullyQualifiedErrorId : ActiveDirectoryServer:8335,Microsoft.ActiveDirectory.Management.Commands.NewADUser Add-ADGroupMember : Cannot find an object with identity: 'cnelsontest1' under: 'DC=,DC=local'. At line: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
Ich PSVersion 5.1.150
Irgendwelche Ideen, laufen, was ich bin fehlt und warum ich in der kommenden Error? Ich weiß nicht, worauf es sich bezieht, und auch nicht, warum es auf einem Computer eines Kollegen funktioniert, aber nicht auf meinem eigenen.
Edit: Wert von $params
zum Zeitpunkt des Fehlers:
Name Value ---- ----- AccountPassword System.Security.SecureString Description Chris Nelson Test Account UserPrincipalName cnelsontest1 HomePage http://... DisplayName cnelson test1 SamAccountName cnelsontest1 ScriptPath EmailAddress [email protected] Office test GivenName cnelson Title SYSTEMS/LAN ADMR Company OfficePhone 555-1234 StreetAddress Sesame Street PostalCode 54321 SurName test1 State candid 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=Information Technology,OU=ADMIN,OU=CENT_OFF,DC=example,DC=com
Ich $New_Path
wie diese Berechnung:
$New_Path = (Get-ADUser ($UsernameCopy.Text)).DistinguishedName -replace '^.*?,', ''
Versuchen Hinzufügen des 'Name' zu Ihrem params' ‚Name‘ = $ New_DisplayName; 'und dann Aufruf mit nur Splatting : 'New-ADUser @ params' –
' versuche {New-ADUser ...} fange {$ params} '. Stellen Sie sicher, dass alle Parameter den Wert haben, den Sie erwarten. –
@JamesC. Das sollte keinen Unterschied machen. –