Ich versuche, ein Powershell-Skript mit meinen Administrator-Anmeldeinformationen zu erstellen. Ich bin noch weitestgehend neu in der "Powershell-Script-Welt", also habe ich bestehende Scripts durchgesehen und sie zusammen aufgenommen / modifiziert.
Ich habe die Zeichenfolge:
$targetdomain = ""
Write-Verbose "Getting credentials"
$domaincredential = Get-Credential -UserName "$targetdomain\$env:USERNAME-ADM" -Message "Use a credential that has permission to create users in the target domain $targetdomain"
Diese Eingabeaufforderungen geben meine -adm-Kontoinformationen ein, die ich dann eingebe. Wenn ich jedoch versuche, das Skript auszuführen, wird darauf hingewiesen
Set-ADUser: Nicht genügend Zugriffsrechte, um den Vorgang auszuführen
Wenn Sie Powershell öffnen, indem Sie mit der rechten Maustaste auf das Symbol klicken -> Als Administrator ausführen -> Anmeldeinformationen eingeben und dann das Skript kopieren, funktioniert es wie ein Zauber.
Also meine Frage ist. Was mache ich falsch? Ich vermute, es ist die Anmeldeinformationszeile, aber ich kann einfach nicht herausfinden, was falsch ist. Ich habe es auch mit " $cred = Get-Credential domain\username
" versucht, aber das funktioniert auch nicht.
Sie können das vollständige Skript unten sehen:
$targetdomain = ""
Write-Verbose "Getting credentials"
$domaincredential = Get-Credential -UserName "$targetdomain\$env:USERNAME-ADM" -Message "Use a credential that has permission to create users in the target domain $targetdomain"
foreach($line in Get-Content "request.txt") {
if ($line.length -eq 0) {
$line = " "
}
if($line -match "First name of user: ") {
$name = $line.Substring(21).trim()
}
if($line -match " Last name of user: ") {
$lastname = $line.Substring(22).trim()
}
if ($line.Substring(0,1) -eq "" -and $line.Length -eq 6) {
$LID = $line.trim()
}
}
Set-ADUser -Identity $LID -Add @{ProxyAddresses = ""}
Set-ADUser -Identity $LID -Add @{ProxyAddresses = ""}
quelle
Antworten:
Schauen Sie sich den Code genau an: Sie fragen nach den Anmeldeinformationen des Benutzers und speichern diese in einer
$domaincredential
Variablen, die später nicht verwendet wird.Hinzufügen eines
-Credential $domaincredential
Arguments zuSet-ADuser
Cmdlet-Aufrufen:quelle