【问题标题】:Using PowerShell, can I find when a user account was created?使用 PowerShell,我可以找到创建用户帐户的时间吗?
【发布时间】:2014-10-17 17:24:53
【问题描述】:

这是一个简单的问题。我知道信息在某处。我已经用 Powershell 锤击了 3 天并且越来越接近。老实说,我没时间了。

情况是这样的。人员进入并在本地计算机上创建一个帐户(Windows 7)。如何找到创建帐户的时间。我了解在个人资料中查看 NTUSER.DATE 日期,但这并不完全有效。我得到的信息都分布在 csv 中,没有简单的方法让它可读。

Get-Item  -force "C:\Users\*\ntuser.dat" |
 Where {((Get-Date)-$_.lastwritetime).days } | 
 Out-File c:\profiles.csv

可以看到安全日志中的信息,可以拉取所有4720事件。然而,这也是不一致的,特别是如果一些流氓(比如我)在几个月前清除了事件日志。

Get-EventLog -LogName Security | Where-Object { $_.EventID -eq 4720 } |
 EXPORT-CSV C:\NewStaff.csv

但这并不能真正让我得到我需要的东西。我只需要用户名和帐户创建日期。我知道这不是那么简单(尽管它应该是 LOL)。这是一份一次性的工作,我在 Powershell 上表现不佳(尽管过去几天我学到了很多东西)。

无论如何,如果有人不介意扔给我一根骨头,我会很感激的。 感谢观看。

【问题讨论】:

    标签: powershell windows-7 event-log


    【解决方案1】:

    你们确实很亲近。您现在需要的只是格式化。示例:

    Get-EventLog -LogName "Security" | Where-Object { $_.EventID -eq 4720 } `
        | Select-Object -Property `
            @{Label="LogonName";Expression={$_.ReplacementStrings[0]}}, `
            @{Label="CreationTime";Expression={$_.TimeGenerated}} `
        | Export-Csv C:\NewStaff.csv -NoTypeInformation 
    

    【讨论】:

    • @Alex...感谢格式化。我之前拿不下来,就放弃了。现在,我知道我错在哪里了。这对现在没有帮助......但在未来将是一个巨大的帮助。感谢您抽出宝贵时间。
    • @NWHikerOR 不客气! ) 也重新。删除日志的可能性 - 您对此无能为力。 AD 将帐户创建时间戳保留为 whenCreated 属性,但对于本地帐户,它没有实现。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-16
    • 1970-01-01
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多