Solved

AD 2003 Query

Posted on 2009-07-03
8
219 Views
Last Modified: 2012-05-07
Hello EEs

In my AD 2003 environment, I need to create a query of the Day since Last logon in increments of 30-180 days. I can locate this in the New Query creation box, however, I am looking at querying a created container in the OU.

Is it possible to locate the logon dates of any container in the OU with these dates? If so, please advise.

I see the Common Queries selection in the Find drop down box which has the option to select the dates, however, I am unable to run a successful query. I have ran a query that locates all these containers, now I just need to associate them with their logon dates.
0
Comment
Question by:lazik
  • 4
  • 4
8 Comments
 
LVL 70

Expert Comment

by:Chris Dent
Comment Utility

Containers? As in Users?

Chris
0
 

Author Comment

by:lazik
Comment Utility
Yes, but Org boxes, not the Users container.
0
 
LVL 70

Expert Comment

by:Chris Dent
Comment Utility

Okay, but you still want the value from the users, right? :)

LastLogon is a bit of a tricky one, it doesn't replicate which means you'll get different values for it depending on the Domain Controller you ask.

Do you have more than one Domain Controller?

As an alternative there's lastLogonTimeStamp, this value replicates meaning you can check it anywhere but can be up to 14 days out of date. If you wish to use AD Users and Computers you'd have to put up with it, otherwise scripting is going to be required (not much bother, there are a lot of pre-built scripts for this).

Chris
0
 

Author Comment

by:lazik
Comment Utility
All I require is if teh Org Boxes are stale past certain dates..30-180...Several DCs here, and I prefer not to do a script since I am new here. On the Org Boxes under the Object tab there is the Modified date, however, this is different from the last logon when I look at the actual mailbox.

So at this point, I need to look at each mailbox and verify the last logon and write it down seperatly?
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 70

Expert Comment

by:Chris Dent
Comment Utility

Exchange will store a last logon for a mailbox, but that isn't necessarily for the user who owns the mailbox (it also stores which account did).

In AD you have either lastLogon, or lastLogonTimeStamp the first is accurate, but will need scripting to get accuracy. lastLogonTimeStamp can be queried easily, a bit of an advantage, but accuracy is down with the limited updates.

lastModified is really that, every change to the account, from password changes, to attribute updates will change that value.

Which do you actually need?

You know, you might think about grabbing OldCmp, the name suggests it's for computers only, but it will work for user accounts. It will generate a pretty report containing every attribute which can be used to determine whether an account is stale or not.

http://www.joeware.net/freetools/tools/oldcmp/index.htm

No scripting required :)

Chris
0
 

Author Comment

by:lazik
Comment Utility
I need the last logon date of these Org boxes, reason is to begin cleanup on old boxes that have not been used in x days. I was tasked with locating all of them, which I have, over 500 of them, now I need to associate the last logon date with them so deletion can begin. I do not want to d/l and tools to complete this task, that decision is up to my supervisor, however, I all require is the last logon for all these boxes and presumed the query could do this.
0
 
LVL 70

Accepted Solution

by:
Chris Dent earned 500 total points
Comment Utility
If you wish to see the value associated with each account you have no choice but to script it, or download something to do it for you.

lastLogon and lastLogonTimeStamp are stored as the number of 100 nanosecond intervals since 01/01/1601 00:00:00. That is the format of the value which must be used in any query for these, and the format which must be converted if you're to make it into a readable date.

I wrote a very small script (VbScript, save as .vbs) to deal with generating a filter (see below).

That may not be ideal if you're constrained by whatever is already there. Although I would say this is simply learning a bit of scripting, an extremely valuable tool for any Sys Admin / Engineer.

If you really must stick with whatever is already there then this is probably the best bet:

dsquery user -inactive 4 -limit 0

Where the "-inactive" period is a value in weeks (the example here being 28 days). It won't show you the date, only those accounts which have been inactive for a number of weeks or longer.

Chris
' Number of days from current

Const PERIOD_TO_REMOVE = 180

 

dblInt8 = CDbl(DateDiff("s", CDate("01/01/1601 00:00:00"), Now - PERIOD_TO_REMOVE))

WScript.Echo "Query: (&(objectClass=computer)(lastLogonTimeStamp<=" & CStr(dblInt8) & "0000000)(!lastLogonTimeStamp=0))"

Open in new window

0
 

Author Closing Comment

by:lazik
Comment Utility
thanks chris
0

Featured Post

Get up to 2TB FREE CLOUD per backup license!

An exclusive Black Friday offer just for Expert Exchange audience! Buy any of our top-rated backup solutions & get up to 2TB free cloud per system! Perform local & cloud backup in the same step, and restore instantly—anytime, anywhere. Grab this deal now before it disappears!

Join & Write a Comment

Disabling the Directory Sync Service Account in Office 365 will stop directory synchronization from working.
Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
This tutorial will walk an individual through the process of transferring the five major, necessary Active Directory Roles, commonly referred to as the FSMO roles to another domain controller. Log onto the new domain controller with a user account t…
This tutorial will walk an individual through the process of configuring their Windows Server 2012 domain controller to synchronize its time with a trusted, external resource. Use Google, Bing, or other preferred search engine to locate trusted NTP …

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now