5.7. Getting Mailbox Access and Logon Information
Problem
You want to know who last logged onto a mailbox and when.
Solution
Using a graphical user interface
Open the Exchange System Manager (Exchange System Manager.msc).
In the left pane, expand the appropriate Administrative Groups container, and then expand the Servers container.
Expand the storage group and database that hold the target mailbox.
Select the Mailboxes node under the mailbox store object.
Check the Last Logon Time, Last Logoff Time, and Last Logged on By columns in the right ESM pane. (If any of these columns are not visible, use the View → Add/Remove Columns command to make them appear.)
Using VBScript with Exchange Server 2003
' This code retrieves the logon and logoff times for all mailboxes on
' the specified server.
' ------ SCRIPT CONFIGURATION ------
strComputerName = "<ServerName>" ' e.g., batman
strE2K3WMIQuery = "winmgmts://" & strComputerName &_
"/root/MicrosoftExchangeV2"
' ------ END CONFIGURATION ---------
For each mailbox in mboxList
strOutput = ""
strOutput = "Mailbox: " & mailbox.MailboxDisplayName & vbCRLF
theTime = mailbox.LastLogonTime
If (IsNull(theTime)) then
strOutput = strOutput & " Never logged on" & vbCRLF
else
strOutput = strOutput & " Last logon at: " & theTime & vbCRLF
strOutput = strOutput & " by: " & mailbox.LastLoggedOnUserAccount
End If
WScript.Echo strOutput
Next
DiscussionExchange has always tracked who logs on to what mailboxes and when; it just hasn't exposed most of this data in a ...