Hallo Zusammen,
ich versuche folgendes Logon-Script (ist noch Testweise) bei einem Login via Cisco-Client auszuführen.
Der Cisco Client startet netterweise ein bestimmtes Skript, wenn man sich per VPN anmeldet.
Hintergrund ist, dass ich beim Anmelden gerne bestimmte Infos vom User und der Hardware in die Beschreibung des Computers Objectes im ADS reinschreiben möchte.
Das Skript mit Admin-Rechten läuft, ich habe es im Netz irgendwo gefunden und geringfügig für mich angepasst.
Jetzt kommt aber das Problem, dass der Cisco Client wahrscheinlich mit den normalen Userrechten startet und somit natürlich kein Eintrag ins ADS erlaubt ist. Es kommt die Fehlermeldung "Zugriff verweigert" Code 80070005, Quelle Active Directory.
Gibt es hier irgendeine Lösung für mich? Ein Starten als runas usw. ist ja nicht möglich, da dann dieser User im Beschreibungsfeld landet.
Bin für jeden Tipp dankbar.
Bis dann,
Scrummel
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set wshShell = WScript.CreateObject("WScript.Shell" )
For Each objSMBIOS in objWMI.ExecQuery("Select * from Win32_SystemEnclosure")
serviceTag = replace(objSMBIOS.SerialNumber, ",", ".")
manufacturer = replace(objSMBIOS.Manufacturer, ",", ".")
Next
For Each objComputer in objWMI.ExecQuery("Select * from Win32_ComputerSystem")
model = trim(replace(objComputer.Model, ",", "."))
Next
Set objTextFile = objFSO.OpenTextFile("D:\logon.txt", 8, True)
objTextFile.WriteLine(date & "," & time & "," & WshNetwork.UserName & "," & WshNetwork.ComputerName & "," & wshNetwork.UserDomain & "," & serviceTag & "," & manufacturer & "," & model)
objTextFile.Close
Set objSysInfo = CreateObject("ADSystemInfo")
Set objComputer = GetObject("LDAP://" & objSysInfo.ComputerName)
if NOT objComputer.Description = WshNetwork.UserName & " (" & serviceTag & " - " & manufacturer & " " & model & ")" then
objComputer.Description = WshNetwork.UserName & " (" & date & " um " & time & " | " & WshNetwork.ComputerName & "," & wshNetwork.UserDomain & " | " & serviceTag & " - " & manufacturer & " " & model & ")"
objComputer.SetInfo
end if
strMsg=serviceTag & VbCrLf & manufacturer & VbCrLf & model
WshShell.PopUp strMsg,15," "&strCompany,64