如何使用事件查看器确认用户过滤的登录时间?


16

我需要记录我的开始和结束时间。有时我会忘记这样做,并且有一个聪明的主意,那就是检查安全事件日志将使我能够追溯地确定自己的时间。

不幸的是,日志比我想象的要大得多,甚至需要一段时间才能显示在事件查看器中。另外,我尝试按日期和用户ID过滤日志,但到目前为止没有任何结果。

假设我的想法可行,那么任何人都可以逐步完成我需要做的事情以检索所需的信息吗?

更新:

我按照@surfasb的说明进行操作,并指出我只能看到登录名,但是其中一些是系统级(即非人类)登录名。我只想查看我的“实际”登录信息(在工作日只有两次或三个这样的事件),而没有其他所有信息。

我尝试使用domain\username和仅将Windows用户名放在字段中,如下所示,username但这只是过滤掉所有内容。你能帮忙吗?

在此处输入图片说明

Answers:


10

默认配置使其比较混乱。这是因为Windows还会在您必须登录到网络计算机时随时进行跟踪。它还会在您的计算机帐户(而不是用户帐户)每次创建登录会话时进行跟踪。

您应该使用审核帐户登录选项,而不是审核登录选项。

您要查找的事件将具有您帐户的完全合格域名。例如,如果您不在域上,则要查找的搜索文本是computer_name / account_name。

编辑

另一个想法是创建登录和注销脚本。根据Windows 7的版本,您可以gpedit.msc用来启动组策略控制台。

然后,您只需要具有命令的批处理文件logevent "My login/logoff event" -e 666。该事件将显示在应用程序日志中

编辑

如果您不在域中,这将更加容易。如果进入“本地安全性” /“本地策略” /“安全性”选项,请查找“强制审核...”选项。我忘了它的名字。但是禁用它。这将使“安全性”日志的详细程度降低,因为在某些情况下,在控制台登录的用户共享相同的“事件ID”。您要查找的一些事件ID:

  • 事件4647-这是当您单击注销,重新启动,关闭按钮时。重新启动计算机的Windows更新有时也会触发此事件:(
  • 事件4648-这是一个进程(包括登录屏幕)使用您的显式凭据(而不是令牌)进行登录的情况。这包括Runas命令以及很多时候的备份程序。
  • 事件4800-工作站锁定时,例如按WIN + L
  • 事件4801-工作站解锁时

通常,您可以使用事件4647和4648来获取信息。不幸的是,没有确定的触发方法,因为登录和注销计算机时会发生数千种情况。

为此,在工作中,我们要寻找触发脚本,而在注销时,我们有两个程序以及一个同步事件,我们肯定会寻找触发事件。


感谢您的答复。您能再详细点吗?我是不
熟悉

我不知道我应该从哪里开始。“打开计算机”?
surfasb

啊 您可以放心地认为,我已经设法过滤了事件查看器日志...
5arx 2011年

转到“本地安全选项”下,然后打开“审核帐户登录”。阿克 我会在一个小时内在这里编辑我的帖子。。。
surfasb 2011年

我在编辑中添加了一些有用的事件。希望对您有所帮助。
surfasb

1

简单的解决方案:

  1. 打开您要为其创建自定义视图的事件。
  2. 将窗口移到可见的地方(屏幕的一侧,第二个监视器,或打印它)
  3. 创建新视图并使用打开的事件参数(例如:用户,关键字,计算机等)进行定义。在这种情况下,用户是N / A,所以我只使用了计算机和事件ID(4648,而不是4624)
  4. 根据需要修改参数后,保存。

此方法对于您希望记录的任何事件或事件集很有用。它不需要复杂的任务或第三方软件。


0

我遇到了同样的问题,并设法通过以下步骤解决了这个问题:

答:安装MyEventViewer(免费)并在此程序中打开事件列表。

不幸的是,我还没有找到如何在MyEventViewer中按描述来过滤事件(描述是登录名存储的地方),但是至少它在主表中显示了描述。

B:将此表导出到log1.txt

C:使用某些高级文本搜索程序来提取给定用户的登录时间。

我用过grep。

这是导出事件的格式:

日志类型:安全

事件类型:审核成功

时间:10.12.2012 18:33:24

赛事ID:680

用户名:SYSTEM

电脑:YYY

事件描述:登录尝试者:MICROSOFT_AUTHENTICATION_PACKAGE_V1_0登录帐户:XXX源工作站:YYY错误代码:0x0

==================================================

==================================================

首先提取用户XXX的所有登录尝试。

$ grep -B 4 "Logon attempt by: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0 Logon account: XXX" log1.txt > log2.txt

这将过滤用户XXX的登录尝试并将其打印到log2.txt。-B 4 grep选项是必需的,因为我们要查找的信息(登录时间)存储在包含我们要查找的模式(用户名)的行上方4行。

D:从log2.txt中提取登录时间

$ grep "Time" log2.txt > log3.txt

现在,log3.txt列出了给定用户的所有登录时间:

时间:10.12.2012 14:12:32

时间:7.12.2012 16:20:46

时间:5.12.2012 19:22:45

时间:5.12.2012 18:57:55

可能存在更简单的解决方案,但我一直找不到它,所以这必须为我解决问题。


0

尝试使用XML过滤器选项卡并指定以下内容:

<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">*[System[EventID=4672] 
     and EventData[Data[@Name='SubjectUserName'] = 'your_username']]
    </Select>
  </Query>
</QueryList>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.