社畜の所業

社畜の所業

Microsoft365の機能について解説をしていきたいと思います。このブログの情報をご活用いただければ幸いです。たまに他の情報も取り入れていきたいと思います。

※このサイトはPR記事を含みます。

【Office365参考書】ExchangeOnlineの最終アクセス日時を取得するには?

f:id:it-bibouroku:20200305151118j:plain

ExchangeOnlineにログインした日時を取得したい場合、Windows PowerShell コマンドを利用して、最終ログイン日時(LastLogOnTime)の値を取得して確認する方法があります。

しかしながら、LastLogOnTime の値の更新については、様々な操作によって更新が行われます。 

以下に情報の取得方法と併せて、どういった場合に本値が更新されるかどうかについてもご紹介しますので、ご確認いただく際のご参考としていただけますと幸いです。 

  

<事前準備> 

以下のサイトの手順にて、Exchange Online に接続してから実行してください。 

  

 

it-bibouroku.hateblo.jp

 

 

 

 

1. 特定ユーザーの最終ログイン日時を確認する 

 

<コマンドレット> 

Get-MailboxStatistics -Identity "ユーザーメールアドレス" | select DisplayName,LastLogonTime,LastLogoffTime 

  

<実行例> 

Get-MailboxStatistics -Identity "user01@contoso.com" | select DisplayName,LastLogonTime,LastLogoffTime 

  

  

2. 一括でユーザーの最終ログイン日時を確認する 

 

1.ユーザーの情報を取得します。 

<構文 1 > 

$Temp=foreach ($i in Get-Mailbox -Recipienttype UserMailbox -ResultSize Unlimited){Get-MailboxStatistics -Identity $i.PrimarySmtpAddress  | select @{n="MailboxName";e={$i.DisplayName}},@{n="MailAddress";e={$i.PrimarySmtpAddress}},LastLogonTime,LastLogoffTime

  

 2.取得した情報を CSV ファイルにエクスポートします。 

<構文 2> 

$Temp | Export-Csv -Encoding UTF8 -Path "ファイルパス"  

  

<実行例> 

$Temp | Export-Csv -NoTypeInformation -Encoding UTF8 -Path C:\Temp\UserLogonTime.csv 

  

C ドライブ直下の Temp フォルダーに UserLogonTime.csv というファイル名で出力する場合の実行例です。 

  

[出力項目] 

MailboxName : ユーザーの表示名 

MailAddress : ユーザーのプライマリメールアドレス 

LastLogonTime : ユーザーの最終ログイン日時 

LastLogoffTime: ユーザーの最終ログオフ日時 

  

 

 

LastLogonTime パラメーターが更新される操作 

  1. Outlook クライアントで該当メールボックスに接続する。
  2. Outlook on the web で該当メールボックスに接続する。
  3. 以下のいずれかの方法を利用し、他のユーザーが Outlook で該当メールボックスを開く。

   - プロファイルにアカウントを追加する。 

   - アカウント設定画面の [詳細設定] にて、メールボックスを追加する。 

  1. 他のユーザーが、Outlook on the web でメールボックスを開く。※1
  2. 他のユーザーが、共有の予定表にて該当ユーザーの予定表を開く。※2

※1 : Outlook on the web の [他のメールボックスを開く] 機能 

※2 : Outlook 起動後、対象の予定表を初めて開いたタイミングで更新されます。  

  

LastLogonTime については、Skype for Business を利用した場合にも更新される動作となります。そのため、完全なメールボックスの利用履歴となり得ない場合もあります。 

また、データセンター側でメンテナンスなどにより、メールボックスの移動が行なわれた場合など、意図しないタイミングで LastLogonTime と LastLogOffTime の値が空白、または、利用した覚えのない時間帯などに更新される可能性があります。 

  

  

LastLogonTime パラメーターが更新されない操作 

  1. Microsoft オンライン ポータルにサインインする。
  2. 管理者ユーザーが Exchange 管理センターにて該当メールボックスの情報、設定などを変更する。
  3. 管理者ユーザーが、Outlook Web App のユーザー名をクリックし、[他のユーザー] から該当ユーザーのオプション画面を開く、または変更する。
  4. POP/IMAP によってメールクライアントから接続を行っている場合

  

  

 LastLogoffTime パラメーターが更新される操作 

  1. Office 365 と同期済のプロファイルにて、Outlook クライアントを起動し、終了させた場合の動作

Outlook クライアント起動時に POP, IMAP, MAPI などの接続方法によらず、ログオン確認時に LastLogOnTime とほぼ同時刻に LastLogOffTime は空白に更新されます。 

Outlook クライアント終了時に、 LastLogOffTime は空白のまま更新されない動作となります  

     

  1. Outlook on the web 、もしくは OWA アプリにてログインし、ブラウザ、もしくは OWA アプリを終了させた場合の動作

・ログオン確認時に LastLogOnTime とほぼ同時刻に LastLogOffTime は時刻が反映して更新されます。 

・正常にサインアウトした場合には、 LastLogOffTime は時刻が反映して更新されます。 

  ※ LastLogOffTime はブラウザーやアプリを終了させた時刻には更新されません。 

  

  1. ActiveSync 接続し、終了した場合の動作

アカウント初期設定し、ログオン確認時に LastLogOnTime とほぼ同時刻に LastLogOffTime も併せて更新されます。 

※ LastLogOffTime は終了させた時刻には更新されません。 

※ [終了] にはセッションの切断、電源を切る、機内モードにした際の動作も含まれます。