
17867
02.06.2009, aktualisiert um 17:14:34 Uhr
AD Script zum ändern des Logon Scripts
hallöchen,
ich wollte in der AD für alle User das Logon Skript ändern. Da es sehr viele User sind wollte ich das per skript machen. Hat einer vielleicht nen hinweis für mich?
Zu ändern ist für jeden User im Reiter PROFILE das Logo Skript.
Bisher: logon_user.vbs
Aktuell: global_logon.vbs
Und zwar für alle User deren Username mit "tga" beginnt und in der DEST Domäne sind.
Hat einer ne Idee wie ich das mache? Danke euch im vorraus!
ich wollte in der AD für alle User das Logon Skript ändern. Da es sehr viele User sind wollte ich das per skript machen. Hat einer vielleicht nen hinweis für mich?
Zu ändern ist für jeden User im Reiter PROFILE das Logo Skript.
Bisher: logon_user.vbs
Aktuell: global_logon.vbs
Und zwar für alle User deren Username mit "tga" beginnt und in der DEST Domäne sind.
Hat einer ne Idee wie ich das mache? Danke euch im vorraus!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator 22010 am 02.06.2009 um 17:14:34 Uhr
In "Windows Server" verschoben...
Content-ID: 117279
Url: https://administrator.de/forum/ad-script-zum-aendern-des-logon-scripts-117279.html
Ausgedruckt am: 22.04.2025 um 08:04 Uhr
4 Kommentare
Neuester Kommentar
Hallo,
ich habe glaube ich noch nicht verstanden, was Du mit Logon Skript meinst. Wenn es das ist, was man üblicherweise unter Logon Skript versteht:
In einer AD-Umgebung wäre die korrekte Vorgehensweise, alle User, deren Username mit "tga" beginnt, in eine OU zu packen (das Präfix "tga" hat ja bestimmt organisatorische Gründe), und diesen Usern dann per GPO ein Logon Skript zuzuweisen.
DIe Sache mit der Domäne ist im AD dann sowieso klar.
ich habe glaube ich noch nicht verstanden, was Du mit Logon Skript meinst. Wenn es das ist, was man üblicherweise unter Logon Skript versteht:
In einer AD-Umgebung wäre die korrekte Vorgehensweise, alle User, deren Username mit "tga" beginnt, in eine OU zu packen (das Präfix "tga" hat ja bestimmt organisatorische Gründe), und diesen Usern dann per GPO ein Logon Skript zuzuweisen.
DIe Sache mit der Domäne ist im AD dann sowieso klar.
... bzw, wenn sich die User nicht in der selben OU befinden, im Script den Benutzernamen abfragen und dann den passenden Teil des Scripts aufrufen, etwa:
Grüße
bastla
Set WshNetwork = WScript.CreateObject("WScript.Network")
User = WshNetwork.Username
Select Case LCase(Left(User, 3))
Case "tga"
'hier das Script für die "tga"-User
Case Else
'hier das Script für die übrigen User
End Select
bastla
... als Nachtrag: Um aber auch auf die ursprüngliche Frage zu antworten, ein Ansatz als VB-Script (zumindest, um bei dieser Gelegenheit gleich alle Script-Pfade aus den User-Konten zu löschen - siehe dazu durch "###" eingegrenzten Teil):
Anzupassen sind in Zeile 4 die Angaben zur Domäne ...
Grüße
bastla
Const ADS_SCOPE_SUBTREE = 2
Const ADS_PROPERTY_CLEAR = 1
strAdsPath = "dc=fabrikam,dc=com"
strScriptPath = "global_logon.vbs"
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
objCommand.CommandText = _
"SELECT AdsPath, sAMAccountName FROM 'LDAP://" & strAdsPath & "' WHERE objectCategory='user'"
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
Do Until objRecordSet.EOF
strUserName = objRecordSet.Fields("sAMAccountName").Value
If LCase(Left(strUserName, 3)) = "tga" Then
Set objUser = GetObject(objRecordSet.Fields("AdsPath").Value)
'Neuen Pfad eintragen
objUser.Put "scriptPath", strScriptPath
'#################################################
'Alternative: Pfad löschen
'objUser.PutEx ADS_PROPERTY_CLEAR, "scriptPath", 0
'#################################################
objUser.SetInfo
End If
objRecordSet.MoveNext
Loop
Grüße
bastla
Oder mit Klickibunti: ADModify.Net http://www.codeplex.com/admodify - das hat sogar eine "Rückgänig"-Funktion.
Grüße
Max
Grüße
Max