complex
Goto Top

AD User bearbeiten

Hi mal wieder face-smile

bin gerade an einem Script, welches vorhandene AD User mit Standardberechtigungen versieht und verschiedene Aktionen damit durchführt (User wird aktiv gesetzt, in eine Gruppe verschoben etc.....)

Nur leider macht mein Script ab "Set-ADUser" nichts mehr. Erst wieder weiter unten bei "Verzeichnisse erstellen" nimmt alles seinen weg.
Ich hoffe ihr könnt mir sagen, woran es liegt..

PS: Bin Power-Shell Anfänger

hier mal das bisherige Script:

#**********************************************************************************#
#**********************************************************************************#

Import-Module ActiveDirectory

#**********************************************************************************#
#*********                               Userabfrage	                                **********#
#**********************************************************************************#

# Scriptvariablen vor Verwendung definieren
	$script:user = ""  

function userabfrage {
   $script:user = Read-Host "AD-Username eingeben"  
}

# Funktion aufrufen
	userabfrage

# Variablen für Weiterverarbeitung ausgeben
	write-host $script:user

#**********************************************************************************#
#**********	        AD-User Aktivieren und Einstellungen setzen     **********#
#**********************************************************************************#

# Automatisches Passwort erstellen
$pswd = #script verdeckt -> Sorry :)

# Standardberechtigungen und Einstellungen setzen
$OU_SWN = "************/****************/Windows7/Users"  
Set-ADUser -Identity $user -Enabled $true -ScriptPath "Win7\loginscript.cmd" -changepasswordatlogon $true -Certificates @{Add="_all Mailboxes ** *********(Germany-SWN)", "Login-Script",  
"*********_WLAN", "**_IQSuite_Reports_V1", "Sharepoint_Global_read"};@{Remove="HR_inaktiv_Users"} | Set-ADAccountPassword $pswd  
Move-ADObject -Identity $user -TargetPath "OU=Users, OU=Windows7, OU=*********, DC=**********, DC=***"  

#**********************************************************************************#
#**********		    Verzeichnisse erstellen	              **********#
#**********************************************************************************#

#Verzeichnisse auf Server erstellen
New-Item "\\cifs\homes\" -Name "$user" -ItemType directory   
New-Item "\\cifs\homes\$user\" -Name "Eigene Dateien" -ItemType directory  
New-Item "\\cifs\Repro\" -Name "$user" -ItemType directory  

Write-Host "Vorgang abgeschlossen"  
Start-Sleep -Seconds 5

#**********************************************************************************#
#**********		                   Ende		              **********#
#**********************************************************************************#

Content-ID: 251031

Url: https://administrator.de/contentid/251031

Ausgedruckt am: 25.11.2024 um 07:11 Uhr

colinardo
Lösung colinardo 06.10.2014, aktualisiert am 08.10.2014 um 09:42:20 Uhr
Goto Top
Hallo complex,
1. Für den Parameter -LogonScript musst du einen vollständigen Pfad angeben
2. wenn du mal in die Referenz zu Set-ADUser schaust wirst du sehen das du Zertifikate anders hinzufügen musst.
3. Set-AdAccountPassword war ebenfalls nicht korrekt verwendet, und der Passthru-Parameter wurde vergessen, damit das Objekt in der Pipeline weitergegeben wird.

Beispiel:
$cert1 = New-Object System.Security.Cryptography.X509Certificates.X509Certificate "C:\Certs\Test1.cer"  
$cert2 = New-Object System.Security.Cryptography.X509Certificates.X509Certificate "C:\Certs\Test2.cer"  
$cert3 = New-Object System.Security.Cryptography.X509Certificates.X509Certificate "C:\Certs\Test3.cer"  

Set-ADUser -Identity $user -Enabled $true -ScriptPath "\\Server\Share\Win7\loginscript.cmd" -changepasswordatlogon $true -Certificates @{Add=$cert1,$cert2};@{Remove=$cert3} -PassThru | Set-ADAccountPassword -Reset -NewPassword (ConvertTo-SecureString -AsPlainText $pswd -Force)  
Grüße Uwe