退職者の端末を回収したとき、不審な動きの報告を受けたとき、監査で記録を求められたとき、「このPCにいつ誰がログインしたか」を調べる必要が出ます。Windowsは標準でログイン履歴を記録していますが、初期状態では一部しか残らず、探し方も分かりにくい場所にあります。操作順に手順をまとめます。何をもって不審と判断するかは不正ログインを無料で確認する方法にまとめています。
いちばん速い確認方法
直近の1件だけなら、コマンドプロンプトを管理者として実行して次を入力します。「最終ログオン日時」に最後のログイン日時が出ます。
net user ユーザー名分かるのはこの1件だけで、そのPCの記録だけです。ドメイン環境で全ユーザーの最終ログオンをまとめて見るなら、ドメインコントローラーで次を実行します。古い順に並ぶので、放置アカウントの洗い出しにそのまま使えます。
Get-ADUser -Filter * -Properties LastLogonDate | Select-Object Name,LastLogonDate | Sort-Object LastLogonDateドメインコントローラーに残る認証の記録(4768・4771・4776)から、誰がいつどのPCで認証したかを追う手順はActive Directoryのログオン履歴を確認する方法にまとめています。
自社のログイン運用チェック(1/10問)
業務で使うPCへのログインは、いまどの方法ですか?
選ぶと2問目へ進みます。残り9問・約3分。入力欄なし・登録不要です。
PC版 月1,800円/台(初期費用0円)・サーバー版 月20,000円/台。初月無料ではじめられます(税別・目安)
履歴の一覧を見る(イベントビューアー)
「いつ・誰が・成功したか失敗したか」を一覧で見るには、イベントビューアーを使います。
ログイン履歴を一覧で見る手順
- 1
イベントビューアーを開く
スタートメニューで eventvwr
- 2
セキュリティログを選ぶ
Windowsログ → セキュリティ
- 3
「現在のログをフィルター」
右側の操作ペイン
- 4
イベントIDに 4624,4625
ログイン成功と失敗だけに絞る
見るべきイベントID
| ID | 意味 | 用途 |
|---|---|---|
| 4624 | ログイン成功 | 誰がいつ入ったか |
| 4625 | ログイン失敗 | 総当たり攻撃の兆候 |
| 4634 | ログオフ | 滞在時間の算出 |
| 4740 | アカウントロックアウト | 連続失敗の結果 |
| 4672 | 特権を伴うログイン | 管理者権限の使用 |
ポイント
ログオンタイプの読み方
同じ「ログイン成功」でも、入り方によって意味が変わります。
| タイプ | 入り方 | 見るときの注意 |
|---|---|---|
| 2 | その場でキーボードから(対話ログオン) | 人の操作 |
| 3 | ネットワーク経由(共有フォルダへのアクセスなど) | 件数が多くなりやすい |
| 5 | サービスの起動 | 人の操作ではない。人のログインと数えると実態を見誤る(サービスアカウントの管理) |
| 10 | リモートデスクトップ | 最も注意。社内だけで使うPCに想定外の記録があれば調査対象(リモートデスクトップに多要素認証を追加する) |
| 11 | キャッシュされた資格情報(社外でのオフラインログイン) | 人の操作 |
コマンドで抽出する
件数が多いときは、PowerShellで一覧にします。次は直近7日間のログイン失敗です。
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4625; StartTime=(Get-Date).AddDays(-7)} | Select-Object TimeCreated,Message失敗が特定のアカウントに集中していれば、総当たり攻撃を疑う根拠になります(総当たり攻撃(ブルートフォース))。監査で提出するなら、スクリーンショットより期間を指定したCSVのほうが扱いやすいです。
... | Export-Csv C:¥temp¥login.csv -Encoding UTF8 -NoTypeInformationユーザー名とログオンタイプを一覧にする
ログイン成功(4624)から、日時・ユーザー名・ログオンタイプだけを取り出すと表として読めます。
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624; StartTime=(Get-Date).AddDays(-7)} | ForEach-Object { [pscustomobject]@{ 日時=$_.TimeCreated; ユーザー=$_.Properties[5].Value; タイプ=$_.Properties[8].Value } } | Where-Object { $_.タイプ -in 2,10,11 }最後の条件で、人が操作したログイン(タイプ2・10・11)だけに絞っています。
PCを使っていた時間を調べる(起動・終了・ロック解除)
「その日、何時から何時まで使われていたか」は、ログインだけでは足りません。起動・終了と画面ロックの解除も合わせて見ます。
| ID | 場所 | 意味 |
|---|---|---|
| 6005 / 6006 | システム | イベントログの開始・停止(=起動・正常なシャットダウン) |
| 6008 | システム | 予期しないシャットダウン(電源断など) |
| 7001 / 7002 | システム(Winlogon) | ユーザーのログオン・ログオフの通知 |
| 4800 / 4801 | セキュリティ | 画面のロック・ロック解除 |
見落としやすい点
勤怠と突き合わせる場合はPCログで勤怠を確認する方法にまとめています。
Windowsのログインは、パスワードを知っていれば誰でも本人として入れます
履歴に残るのは「どのアカウントで入ったか」までです。パスワードが他人に知られていれば、本人のログインと見分けがつきません。
パスワードだけのログイン
漏れた・推測された・メモを見られたパスワードで、そのまま本人として入れます。記録の上でも本人と区別できません。
2要素認証のログイン
パスワードに加えて、本人だけが持つもの(スマホなど)が必要です。パスワードを知っているだけでは入れません。
- VPNや社内Wi-Fiから社内に入られたあと、被害がPC・サーバーへ広がるかどうかは、このログインの部分で決まります。
- 顔・指紋・PIN(Windows Hello)は、ログインを簡単にする仕組みで、2要素認証ではありません。
- 2要素認証というと手間が増えそうですが、本人のスマホを鍵にしたワンタッチログインなら、初回の設定のあとはPINもWindowsのパスワードも打たずに、スマホのワンタッチで入れます。長いパスワードを覚えて打つ手間は、むしろなくなります。
履歴が残っていない場合
何も出ない、数日分しか残っていない場合の原因は、おもに次の3つです。
| 原因 | 起きていること | 対処 |
|---|---|---|
| 1. 監査ポリシーが無効 | ログイン失敗(4625)が既定で記録されない環境がある | 「ログオンイベントの監査」を成功・失敗の両方で有効にする(下の手順) |
| 2. サイズ上限で上書き | 既定は20MB程度。台数が多いと数日で消える | 「セキュリティ」右クリック →「プロパティ」で最大ログサイズを引き上げ(数か月分なら数百MB規模) |
| 3. 消去された | 管理者は「ログの消去」で空にできるが、消去の事実はイベントID 1102として残る | 消した覚えがなければ、侵入の痕跡を消された可能性も含めて調べる |
1. 監査ポリシーが有効になっていない
ログオンの監査を有効にする(gpedit.msc)
- 1
gpedit.msc を開く
ドメイン環境ではグループポリシーで全社に配る
- 2
監査ポリシーへ
コンピューターの構成 → Windowsの設定 → セキュリティの設定 → ローカルポリシー
- 3
「ログオンイベントの監査」
成功と失敗の両方にチェック
Homeエディションには gpedit.msc がないため、管理者のコマンドプロンプトで設定します(現在の設定は auditpol /get /category:* で確認)。
auditpol /set /subcategory:"ログオン" /success:enable /failure:enable「失敗」だけを外している設定をよく見かけますが、これでは攻撃の兆候が残りません。配布方法はグループポリシーでのアカウント保護設定にまとめています。
2. ログのサイズ上限で上書きされている
各PCにログを貯める方式には限界があります。PCが壊れたり攻撃者に消されたりすると何も残りません。重要な端末やサーバーは、ログを別の場所へ集める仕組みを検討します(アクセスログの監査)。
3. ログが消去されている
セキュリティログの先頭に1102が1件だけ残っている場合は、誰かが意図的に消した可能性があります。
確認したあとに判断すること
履歴は判断の材料です。次の3点を確認してください。身に覚えのないログオンが見つかり、社外から入られていないかまで調べたい場合は不正アクセスされたか調べる方法の手順に進んでください。
| 確認すること | 見つかったら |
|---|---|
| 退職者・異動者のアカウントでのログイン | 削除漏れ(退職者アカウントの棚卸し) |
| 深夜・休日など業務時間外のログイン | 説明のつかないものは調査対象 |
| 同じアカウントでの連続失敗 | 攻撃かパスワード忘れかを切り分ける |
ポイント
普段の管理が楽になると何が変わるか
ログイン履歴を調べる場面は、たいてい急に来ます。社員から「ロックされて入れない」と言われたとき、取引先のチェックシートで記録を求められたときです。ログイン記録が1か所にまとまっていれば、席まで行かずに、どのPCで誰が失敗したかをその場で確かめられます。記録には日時・利用者・接続元のPC名とIPアドレスが、通常のログインでもリモートデスクトップでも残ります。聞かれたその日にCSVで出せるので、説明に迷いません。
よくある質問
ログイン履歴はどのくらいの期間残りますか
既定のログサイズでは数日から数週間で上書きされます。環境の規模によって大きく変わるため、必要な保存期間を決めたうえで、イベントビューアーのプロパティから最大ログサイズを設定してください。確認と変更の具体的な手順はイベントビューアーのログ保存期間を確認・変更する手順にまとめています。
ログイン失敗が記録されていないのはなぜですか
監査ポリシーの「ログオンイベントの監査」で、成功のみが有効になっている可能性があります。失敗にもチェックを入れてください。攻撃の兆候は失敗側にしか現れません。
ログのファイルはどこに保存されていますか
C:¥Windows¥System32¥winevt¥Logs フォルダに、ログの種類ごとの .evtx ファイルとして保存されています。ログイン履歴は Security.evtx です。別のPCへコピーすれば、イベントビューアーの「保存されたログを開く」で読めます。
ログイン履歴は削除できますか
管理者権限があればセキュリティログを消去できますが、消去した記録がイベントID 1102として残ります。特定の1件だけを消すことは標準機能ではできません。
他人のPCのログイン履歴を遠隔から見られますか
管理者権限があれば、イベントビューアーの「別のコンピューターに接続」やPowerShellのリモート実行で参照できます。ただし対象PCが起動しており、ネットワーク経由の接続が許可されている必要があります。
いまの運用を棚卸ししてみる
ログイン履歴の確認は、問題が起きたあとに事実を追うための手段です。パスワードが漏れても入られにくい状態かは、別に確認する必要があります。applippliの無料棚卸しでは、10問・約3分で、ID・パスワードに関連する対応状況を、「解決済み/一部解決/人手で対応/未解決」に仕分けた一覧にできます。結果はPDFレポートでもお届けします。個人情報の入力は不要で、会員登録もありません。
参考・出典
※ 本記事は2026年9月時点の一般的な解説です。画面の名称や既定値はWindowsのバージョン・エディションおよび適用されているポリシーによって異なる場合があります。実際の設定変更は、検証環境で確認のうえ実施してください。
会社全体の不正アクセス対策をどこから進めるかは、不正アクセス対策とは 侵入経路別の優先順位で、2026年の統計と事例をもとに整理しています。
