活动目录奇异属性值

本文关键字:属性 活动 | 更新日期: 2023-09-27 17:49:15

我正在使用以下代码获取有关Active Directory中用户的信息:

    SearchResultCollection searchResults = null;
    string activeDirFilter = getActiveDirFilter();
    DirectoryEntry dirEntry = new DirectoryEntry();
    DirectorySearcher searcher = new DirectorySearcher(dirEntry)
    {
        PageSize = 100,
        Filter = activeDirFilter,
        SearchScope = SearchScope.Subtree
    };

这段代码工作正常,我得到这些属性:

LASTLOGON
130388757393977187
PWDLASTSET
130378422326246669
LASTLOGONTIMESTAMP
130380275331980403

然而,我不能使值的意义,有人知道如何解码这些数字到时间戳吗?

编辑:因为130388757393977187秒= 4 131 858.64千禧年。

也不可能是刻度,因为130388757393977187 = 413年。

活动目录奇异属性值

您当前有Unix Timestamp,您应该将其转换为DateTime对象并打印它。

public static DateTime UnixTimeStampToDateTime(double unixTimeStamp)
{
    // Unix timestamp is seconds past epoch
    System.DateTime dtDateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
    dtDateTime = dtDateTime.AddSeconds(unixTimeStamp).ToLocalTime();
    return dtDateTime;
}

我算出来了:

你需要使用

long x = 130388757393977187;
DateTime dateTime = DateTime.FromFileTimeUtc(x);