Cybquest 36 Geschrieben 30. Januar 2007 Melden Teilen Geschrieben 30. Januar 2007 Ich schreib die Scripte mal um und pack sie in meinen Download-Bereich von Rehm-Web.net Gruß, Frank Zitieren Link zu diesem Kommentar
Notarzt 10 Geschrieben 30. Januar 2007 Autor Melden Teilen Geschrieben 30. Januar 2007 Ich schreib die Scripte mal um und pack sie in meinen Download-Bereich von Rehm-Web.net Gruß, Frank Danke schön :thumb1: Zitieren Link zu diesem Kommentar
twenty 12 Geschrieben 30. Januar 2007 Melden Teilen Geschrieben 30. Januar 2007 Logonscript: echo %username% hat sich am %date% ueber %logonserver% angemeldet >>\\server\freigabe\log.txt Ist einfach zu realisieren. Genau so, kann man auch ein Abmeldescript über Gruppenrichtlinien zuweisen. Zitieren Link zu diesem Kommentar
Cybquest 36 Geschrieben 31. Januar 2007 Melden Teilen Geschrieben 31. Januar 2007 Scripte sind hochgeladen :) Bei Gelegenheit pack ich mein kleines VB-Progrämmchen, mit dem ich die angemeldeten User anzeige und über'n Doppelklick VNC aufmache bzw. C$ mappe, dazu. @Purecut: Gestestet hab ich's bisher nur mit MS SQL. Zitieren Link zu diesem Kommentar
woiza 10 Geschrieben 31. Januar 2007 Melden Teilen Geschrieben 31. Januar 2007 HI, ich hab gestern auch ein bisschen gescriptet. Ich werde mal die Ergebnisse hier posten. Vom ersten Blick her dürfte das ähnlich, wie bei Cyquest sein, nur mit Access... Die erste heißt createDataBase.vbs, sie erstellt die Access DB, der Pfad muss angepasst werden: Dim objCon Const dbFilePath = "c:\logon.mdb" 'DB anlegen Set objCon = CreateObject("ADOX.Catalog") objCon.Create "Provider =Microsoft.Jet.OLEDB.4.0; " & "Data Source = " & dbFilePath 'Tabelle anlegen Set objCon = CreateObject("ADODB.Connection") objCon.Open _ "Provider= Microsoft.Jet.OLEDB.4.0; " & "Data Source= " & dbFilePath objCon.Execute "CREATE TABLE LogonTable(" & _ "UserName TEXT(50) ," & _ "isLoggedOn BIT ," & _ "ComputerName TEXT(50) ," & _ "LastTimeStamp DATETIME)" objCon.Close Zitieren Link zu diesem Kommentar
woiza 10 Geschrieben 31. Januar 2007 Melden Teilen Geschrieben 31. Januar 2007 Die zweite ist die writelogon.vbs, die muss in die GPO eingebaut werden. Dazu muss ein Argument übergeben werden. Für die Anmeldung "logon", für die Abmeldung "logoff". ' Const Const adLockOptimistic = 3 Const adOpenStatic = 3 Const dbFilePath = "c:\logon.mdb" Dim userName, computerName Dim wshNetWork, objCon, isLoggedOn, objRS Dim SQLCmdString 'Variablen setzen Set wshNetWork = CreateObject("WScript.Network") userName = wshNetWork.UserName computerName = wshNetWork.ComputerName 'IsLoggedOn auf True oder False If WScript.Arguments.Unnamed.Item(0) = "logon" Then isLoggedOn = True ElseIf WScript.Arguments.Unnamed.Item(0) = "logoff" Then isLoggedOn = False End If 'Abfrage, ob Eintrag schon vorhanden Set objCon = CreateObject("ADODB.Connection") Set objRS = CreateObject("ADODB.Recordset") objCon.Open "Provider= Microsoft.Jet.OLEDB.4.0; " & "Data Source= " & dbFilePath objRS.Open "SELECT * FROM LogonTable WHERE UserName='" & userName & "' AND " & _ "ComputerName='" & computerName & "'", objCon, adOpenStatic, adLockOptimistic 'Commandstring basteln... If objRS.RecordCount = 0 Then 'Neuer Eintrag With objRS .AddNew .Fields("UserName") = userName .Fields("ComputerName") = computerName .Fields("isLoggedOn") = isLoggedOn .Fields("LastTimeStamp") = Now .Update End With Else 'Gefundener Datensatz wird geändert With objRS .Fields("isLoggedOn") = isLoggedOn .Fields("LastTimeStamp") = Now .Update End With End If objRS.Close objCon.Close Zitieren Link zu diesem Kommentar
woiza 10 Geschrieben 31. Januar 2007 Melden Teilen Geschrieben 31. Januar 2007 Und hier ist noch eine namens Auswertung.hta. Mit dieser kann man Auswertungen auf die Access machen. Erster Teil: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE>Logon Logger</TITLE> <HTA:APPLICATION SYSMENU="yes" SINGLEINSTANCE="yes" SHOWINTASKBAR="yes"/> <SCRIPT language=VBScript> Sub checkLogged If chkLogged.checked = True Then sortOrder(2).disabled = True If sortOrder(2).checked = True Then sortOrder(0).checked = True End If Else sortOrder(2).disabled = False End If End Sub Sub openWindow Const dbFilePath = "c:\logon.mdb" Const adOpenForwardOnly = 0 Const adLockReadOnly = 1 Dim commandText, objRS, objCon, objIE, objDoc 'Auswertung der Radiobuttons choice If choice(0).checked Then If txtUser.Value = "" Then MsgBox "Bitte Benutzer eingeben!" Exit Sub Else commandText = "Select * From LogonTable WHERE UserName='" & txtUser.Value & "'" End If ElseIf choice(1).checked Then If txtComputer.Value = "" Then MsgBox "Bitte Computer eingeben!" Exit Sub Else commandText = "Select * From LogonTable WHERE ComputerName='" & txtComputer.Value & "'" End If ElseIf choice(2).checked Then commandText = "Select * From LogonTable WHERE Format(LastTimeStamp, 'DD.MM,YYYY') = Format(Now, 'DD.MM,YYYY')" ElseIf choice(3).checked Then commandText = "Select * From LogonTable" End If 'Auswertung der Checkbox chkLogged If chkLogged.checked Then If choice(3).checked Then commandText = commandText & " WHERE isLoggedOn = TRUE" Else commandText = commandText & " AND isLoggedOn = TRUE" End If End If 'Auswertung der Sortierung If sortOrder(0).checked Then commandText = commandText & " ORDER BY UserName" ElseIf sortOrder(1).checked Then commandText = commandText & " ORDER BY ComputerName" ElseIf sortOrder(2).checked Then commandText = commandText & " ORDER BY isLoggedOn" ElseIf sortOrder(3).checked Then commandText = commandText & " ORDER BY LastTimeStamp" End If 'Recordset holen Set objCon = CreateObject("ADODB.Connection") Set objRS = CreateObject("ADODB.Recordset") objCon.Open "Provider= Microsoft.Jet.OLEDB.4.0; " & "Data Source= " & dbFilePath objRS.Open commandText, objCon, adOpenForwardOnly, adLockReadOnly 'Antwort bauen If objRS.RecordCount = 0 Then MsgBox "Keine Datensätze für ihre Suchkriterien gefunden" Else Dim htmlResult htmlResult = "<table border=1><thead><tr><th>Benutzer</th><th>Computer</th><th>Angemeldet</th><th>Uhrzeit</th></tr></thead>" While Not objRS.EOF With objRS htmlResult = htmlResult & "<tr><td>" & .Fields("UserName") & "</td><td>" & .Fields("ComputerName") & "</td><td>" _ & .Fields("isLoggedOn") & "</td><td>" & .Fields("LastTimeStamp") & "</td>" .MoveNext End With Wend htmlResult = htmlResult & "</table>" 'Neues Fenster aufrufen Set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate("about:blank") objIE.ToolBar = 0 objIE.StatusBar = 0 objIE.Document.Title = "Ergebnis" Set objDoc = objIE.Document.Body objDoc.InnerHTML = htmlResult objIE.Visible = True End If objRS.Close objCon.close End Sub </SCRIPT> </HEAD> Zitieren Link zu diesem Kommentar
woiza 10 Geschrieben 31. Januar 2007 Melden Teilen Geschrieben 31. Januar 2007 Und hier der 2. Teil: <BODY> <h1>LogonLogger</h1> Bitte Anzeige auswählen:<br /><hr /> <table width="450" border="0"> <tr> <td width="50%" valign="top"><input type="radio" name="choice" value="User"> Benutzer auswählen<br></td> <td width="50%" valign="top"><input type="text" name="txtUser" size="30"></td> </tr> <tr> <td width="50%" valign="top"><input type="radio" name="choice" value="Computer"> Computer auswählen<br></td> <td width="50%" valign="top"><input type="text" name="txtComputer" size="30"></td> </tr> <tr> <td width="50%" valign="top"><input type="radio" name="choice" value="Today"> Heutige Einträge anzeigen<br></td> <td width="50%" valign="top"></td> </tr> <tr> <td width="50%" valign="top"><input type="radio" name="choice" value="All" checked> Alle Einträge anzeigen<br></td> <td width="50%" valign="top"></td> </tr> </table> <br /><br /><input type="checkbox" name="chkLogged" value="1" onClick="CheckLogged"> Nur angemeldete <br /><br />Sortieren nach: <br /><input type="radio" name="sortOrder" value="User">Benutzer <br /><input type="radio" name="sortOrder" value="Computer">Computer <br /><input type="radio" name="sortOrder" value="isLoggedOn">An-/Abgemeldet <br /><input type="radio" name="sortOrder" value="Time">Zeit <br /><br /><input id=openButton class="button" type="button" value="Start" name="open_button" onClick="OpenWindow"> </BODY> </HTML> Wenn ich heute Abend noch Zeit und Lust habe, werd ich mal sehen, ob ich die Logon-Infos auch aus dem Eventlog ziehen kann und in die DB schreiben kann. Zitieren Link zu diesem Kommentar
Das Urmel 10 Geschrieben 31. Januar 2007 Melden Teilen Geschrieben 31. Januar 2007 Für das schicke scripting muss man s{ich} mich bei dir bedanken. Off-Topic:hab zwar was ähnliches zusammengebastelt, aber deines legt noch einen drauf Das sollte in Tipps gepinnt werden. Mods, was meint ihr? Zitieren Link zu diesem Kommentar
Thuroc 10 Geschrieben 1. Februar 2007 Melden Teilen Geschrieben 1. Februar 2007 Das ist genial.... Zitieren Link zu diesem Kommentar
jinroh 10 Geschrieben 1. Februar 2007 Melden Teilen Geschrieben 1. Februar 2007 seehr coole Sache! Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.