はじめに
Microsoft Graph PowerShellを利用し、ユーザーの最終サインイン日時を取得する方法をご紹介します。
※2023年3月現在、最終サインイン日時はMicrosoft GraphのBeta版でのみ取得することができます。
最終サインイン日時の取得
Microsoft Graph PowerShellの準備
Microsoft Graph PowerShell SDKのインストールを行います。
Install-module Microsoft.Graph
導入手順は以下の記事でも紹介されています。
Microsoft Graphの概要も説明されているので合わせてご確認ください。
Microsoft Graph PowerShell手順
Beta版のAPIを利用する必要があるため、Microsoft Graph PowerShell のバージョンを変更します。
Select-MgProfile "beta"
次に、Microsoft Graph に接続します。
Connect-MgGraph -ContextScope Process -Scopes "AuditLog.Read.All Organization.Read.All User.Read.All"
※サインイン画面が表示された際には、グローバル管理者のユーザー名とパスワードを入力してサインインします。
接続が完了したら、以下のコマンドを実行します。
今回は、全ユーザーの最終サインイン日時のリストをcsvファイルで出力します。
Get-MgUser -All -Property id,userPrincipalName,signInActivity,CreatedDateTime,UserType | Select-Object Id, UserPrincipalName, @{label = "LastSignInDateTime"; expression = { $_.SignInActivity.lastSignInDateTime } },@{label = "LastNonInteractiveSignInDateTime"; expression = { $_.SignInActivity.lastNonInteractiveSignInDateTime} },CreatedDateTime,UserType | Export-Csv -NoTypeInformation "< csv出力先のパス.csv >"
実行が完了したら、Microsoft Graphからサインアウトします。
Disconnect-MgGraph
出力されたcsvファイルの確認
以下のように結果が出力されます。
項目 | 内容 |
---|---|
Id | ユーザーのオブジェクトID |
UserPrincipalName | ユーザーのUserPrincipalName |
LastSignInDateTime | 最後に行った対話型サインインの日時(UTC) ユーザーが対話的な認証方法で最後にサインインした時刻が表示されます |
LastNonInteractiveSignInDateTime | 最後に行った非対話型サインインの日時(UTC) クライアントがユーザーに代わって最後にサインインした時刻が表示されます |
CreatedDateTime | ユーザーが作成された日時(UTC) |
UserType | ユーザーの種類(Member/Guest) |
"LastSignInDateTime"および"LastNonInteractiveSignInDateTime"から、ユーザーの最終サインイン日時を確認することができます。
※UTCで表示されるため、日本時間に変換するには+9時間します。
最後のサインインが2020年4 月より前に行われていたり、一度もサインインしていなかったりする場合は、値が空欄となります。
LastSignInDateTime タイムスタンプを生成するには、サインインを成功させる必要があります。 LastSignInDateTime プロパティは新機能であるため、次の場合は lastSignInDateTime プロパティの値が空になる可能性があります。
- 前回成功したユーザーのサインインは、2020 年 4 月より前に行われました。
- 影響を受けたユーザー アカウントが、成功したサインインに使用されたことがありませんでした。 learn.microsoft.com
おわりに
Microsoft Graph PowerShellを利用することで、ユーザーの最終サインイン日時を一括で取得することができます。
こちらの情報を活用してユーザーの棚卸しを行うこともできますね。
今回ご紹介した手順であればアプリの登録も不要で、すぐに確認することができるので、ぜひお試しください。