从活动目录获取帐户到期日期

时间:2014-12-09 12:20:01

标签: java datetime attributes active-directory ldap

我正在尝试将AD的帐户过期属性转换为日期。以下是我尝试这样做的方法:

    long adDate = Long.parseLong(adDateStr);
    long milliseconds = (adDate / 10000) - DIFF_NET_JAVA_FOR_DATES;
    Date date = new Date(milliseconds);
    DateFormat mydate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    return(mydate.format(date));

问题是它是在实际帐户到期日增加1天。 例如如果帐户到期日为08/01/2106,则上述代码为09/01/2016。 任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

只是一些猜测。

  1. DIFF_NET_JAVA_FOR_DATES的值是11644473600000L + 24 * 60 * 60 * 1000?

  2. accountExpires中的时间和日期是UTC时间(非本地) 这是什么原因?