– Jan's Cloud – online Gedankenstütze ;)

19. August 2014

Remotedesktopdienste-Profil und Basisordner mit Powershell setzen

Da man beim Anlegen (New-ADUser) oder Bearbeiten (Set-ADUser) von Benutzern mit der Powershell leider nicht die Attribute für das Remotedesktopdienste-Profil und Basisordner beschreiben kann, hier einmal der „Umweg“ mit Powershell direkt über ADSI.

Import-Module ActiveDirectory

$SERVER = '<Name_des_Profilserver>'
$DOMAIN = (Get-ADDomain).DistinguishedName

$OU = 'OU=Benutzer,OU=derTest,' + $DOMAIN
Get-ADUser -Filter * -SearchBase $OU | ForEach-Object {
	$PROFILEPATH = '\\' + $SERVER + '\RDSKonfig\Profiles\' + $_.SamAccountName
	$USERDIRPATH = '\\' + $SERVER + '\RDSKonfig\Userdirs\' + $_.SamAccountName
	$ADSI = [ADSI]('LDAP://{0}' -f $_.DistinguishedName)
	try {
		$ADSI.InvokeSet('TerminalServicesProfilePath',$PROFILEPATH)
		$ADSI.InvokeSet('TerminalServicesHomeDrive','W:')
		$ADSI.InvokeSet('TerminalServicesHomeDirectory',$USERDIRPATH)
		$ADSI.SetInfo()
	}
	 catch {
		Write-Error $Error[0]
	}
}

Im Script wird die angegebene OU nach Benutzerobjekten durchsucht und jedem Objekt der Profilpfad (\\<SERVER>\RDSKonfig\Profiles\<Anmeldename>) sowie das Laufwerk (W:) und der Basisordner (\\<SERVER>\RDSKonfig\UserDirs\<Anmeldename>) hinzugefügt.

Terminaldienste Profile Basisordner

Terminaldienste Profile Basisordner

Eine Alternative zum Bearbeiten des Benutzerobjekt mit ADSI wäre die Verwendung der kostenlosen Quest PowerShell Commands for Active Directory.

Keine Kommentare »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress