SharePoint:如何获取用户';s上次注销或上次会话';s结束日期/时间

SharePoint:如何获取用户';s上次注销或上次会话';s结束日期/时间,sharepoint,moss,Sharepoint,Moss,如何确定用户在MOSS 2007 web应用程序上的最后登录日期/时间?到目前为止,我还没有在对象模型中找到这些信息 我已经考虑过从AD/LDAP请求LastLogonItemStamp,但这将非常不精确 另一个想法是编写一些代码,在用户登录时将登录日期/时间存储在用户信息列表中。但直到现在我还不知道该怎么做 那么,有人知道更好的解决方案吗 更新 在做了一些测试并对我的问题进行了更多思考之后,我意识到事实上我不需要最后一次登录的时间戳,而是需要分别在最后一次会话结束时最后一次注销的时间戳 由于现

如何确定用户在MOSS 2007 web应用程序上的最后登录日期/时间?到目前为止,我还没有在对象模型中找到这些信息

我已经考虑过从AD/LDAP请求LastLogonItemStamp,但这将非常不精确

另一个想法是编写一些代码,在用户登录时将登录日期/时间存储在用户信息列表中。但直到现在我还不知道该怎么做

那么,有人知道更好的解决方案吗

更新

在做了一些测试并对我的问题进行了更多思考之后,我意识到事实上我不需要最后一次登录的时间戳,而是需要分别在最后一次会话结束时最后一次注销的时间戳

由于现在有办法通过对象模型获得最后一次登录的时间戳,我可以想象,也没有办法获得最后一次会话的结束日期和时间


那么我怎样才能获得这些信息呢?

令人惊讶的是,似乎没有一种方法可以使用SharePoint API获得这些信息。但是,您可以从IIS日志中检索此信息。我认为这样做比从广告中获取信息更精确,因为用户可以登录到系统而不必访问SharePoint

另一种方法是使用SharePoint审计。据我所知,没有特定的登录审核事件,但您可以在用户阅读SharePoint欢迎页面时进行审核。使用SPAuditQuery可以检索一些详细信息

  • 使用LastSessionID、LastSessionTime扩展用户信息列表
  • 给你的主机添加一点网络控制。 如果LastSessionID不同,此webcontrol将更新用户信息列表。并添加时间
  • 当然是在网站集RootWeb上

  • 使用审计功能的方法听起来不错,但如果只为了获取登录日期和时间而启用审计,可能有点过头了。但我会试试看。