Netwrix 1Secureは、データとアイデンティティ全体にわたる統合された可視性を提供します。14日間の無料トライアルでフルアクセス可能です。無料トライアルを開始

リソースセンターハウツーガイド

Active Directory のユーザー ログイン履歴を確認する方法

Active Directory のユーザー ログイン履歴を確認する方法

ネイティブ監査 vs. Netwrix Auditor for Active Directory

Netwrix Auditor for Active Directory

  1. Netwrix Auditor を実行 → 「Reports」へ移動 → 「Active Directory」を開く → 「Logon Activity」へ移動 → 確認したいログオン イベントに応じて「Successful Logons」、"Failed Logons" または「All Logon Activity」を選択 → 「View」をクリックします。
  2. レポートを確認します:
Image

ネイティブ監査

Active Directory でログオン監査を有効にするには、以下の手順に従ってください。

  1. ドメイン コントローラーで Group Policy Management Console を実行します(Win+R を押す → 「GPMC.exe」と入力 → 「Run」をクリック)。
  2. 新しいポリシーを作成し、ユーザーのアクティビティを追跡したいコンピューターを含む組織単位(OU)に、この新しい GPO をリンクします。
  3. コンピューターの構成 > ポリシー > Windows の設定 > セキュリティの設定 > 詳細な監査ポリシーの構成 > 監査ポリシー に移動します。次に、以下のそれぞれに進みます。
    • システム > 監査セキュリティ状態の変更 — これを「成功」に設定します。
    • 監査ポリシー > ログオン/ログオフ — 「ログオンの監査」と「ログオフの監査」を両方とも「成功」と「失敗」に設定します。
    • 監査ポリシー > ログオン/ログオフ > 監査 — 「その他のログオン/ログオフ イベント」を「成功」と「失敗」に設定します。

PowerShell を使用して Active Directory でユーザーのログイン履歴を確認するには、次の手順に従ってください:

  • 管理者として PowerShell ISE を開きます
  • 次のスクリプトを実行し、期間を調整してください:
      # Find DC list from Active Directory 
$DCs = Get-ADDomainController -Filter * 

# Define time for report (default is 1 day) 
$startDate = (get-date).AddDays(-1) 

# Store successful logon events from security logs with the specified dates and workstation/IP in an array 
foreach ($DC in $DCs){ 
$slogonevents = Get-Eventlog -LogName Security -ComputerName $DC.Hostname -after $startDate | where {($_.eventID -eq 4624) -or ($_.eventID -eq 4625) }}  

# Crawl through events; print all logon history with type, date/time, status, account name, computer, and IP address if the user logged on remotely 

 foreach ($e in $slogonevents){ 
   # Logon Successful Events 
   # Local (Logon Type 2) 
   if (($e.EventID -eq 4624 ) -and ($e.ReplacementStrings[8] -eq 2)){ 
     write-host "Type: Local Logon`tDate: "$e.TimeGenerated "`tStatus: Success`tUser: "$e.ReplacementStrings[5] "`tWorkstation: "$e.ReplacementStrings[11] 
   } 
   # Remote (Logon Type 10) 
   if (($e.EventID -eq 4624 ) -and ($e.ReplacementStrings[8] -eq 10)){ 
     write-host "Type: Remote Logon`tDate: "$e.TimeGenerated "`tStatus: Success`tUser: "$e.ReplacementStrings[5] "`tWorkstation: "$e.ReplacementStrings[11] "`tIP Address: "$e.ReplacementStrings[18] 
   } 
    # Logon Failed Events 
   # Local (Logon Type 2) 
   if (($e.EventID -eq 4625 ) -and ($e.ReplacementStrings[8] -eq 2)){ 
     write-host "Type: Local Logon`tDate: "$e.TimeGenerated "`tStatus: Failed`tUser: "$e.ReplacementStrings[5] "`tWorkstation: "$e.ReplacementStrings[11] 
   } 
   # Remote (Logon Type 10) 
   if (($e.EventID -eq 4625 ) -and ($e.ReplacementStrings[8] -eq 10)){ 
     write-host "Type: Remote Logon`tDate: "$e.TimeGenerated "`tStatus: Failed`tUser: "$e.ReplacementStrings[5] "`tWorkstation: "$e.ReplacementStrings[11] "`tIP Address: "$e.ReplacementStrings[18] 
}}  
      
  • 結果を確認します:
Image
Image
Netwrix Auditor for Active Directory について詳しく知る

PowerShell スクリプトの有無にかかわらず Active Directory ユーザーのログイン履歴を取得する

アカウントのロックアウト、疑わしいアクセスの調査、または定期的なアクセス管理監査を行う場合、最初に行うべきことの1つはユーザーのアクティビティを確認することです。ログオン イベントは、多くの場合、問題をすぐに特定し、ユーザーが適切なリソースにアクセスしているかどうかを判断するのに役立ちます。このデータを利用できるようにするには、ユーザーの活動を追跡したいネットワーク コンピューターで適切な監査ポリシーを有効にしておく必要があります。

Active Directory の監査では、ユーザーのログオン履歴の詳細がドメイン コントローラー上のイベント ログに保存されます。したがって、ユーザーのログオンを最も簡単に取得する方法は、Windows イベント ビューアーで「Security(セキュリティ)」のすべてのイベントを除外して、対象のユーザー アカウントとログオンの種類を見つけることです。Windows Server 2008 から Windows Server 2016 までの範囲では、ユーザー ログオン イベントのイベント ID は 4624 です。これらのイベントには、Active Directory のユーザー、時間、コンピューター、ユーザー ログオンの種類に関するデータが含まれています。ログオン セッションの時間を知る必要がある場合は、ログオン ID(再起動間での一意の番号で、ログオン セッションを識別します)を使って、ログオフ イベント ID 4634 および 4647 に関連付けることができます。

この情報をネイティブ ツールで取得する別の方法は PowerShell を使うことです。上で提示した PowerShell スクリプトを使用すると、Windows のログを手作業でたどることなく、ユーザーのログイン履歴レポートを取得できます。このスクリプトでは、ログを取得するための主要コマンドとして Get-EventLog を使用します。とはいえ、ユーザーのログイン履歴レポートが必要になるたびに PowerShell スクリプトを実行するのは大変です。処理時間がかなりかかる可能性があり、小規模な AD 環境でも同様です。

Netwrix Auditor for Active Directory は、ユーザーのアクティビティを監視し、Active Directory および AD に依存するシステムのセキュリティを強化するための、より簡単な方法です。このソリューションを使えば、数回のクリックだけで特定のユーザー、またはすべてのユーザーのための、明確で詳細な Active Directory ログイン履歴レポートを取得できます。さらに、このレポートを購読しておけば、指定したスケジュールに従ってメールで自動的に配信されます。このセキュリティ プラットフォームはユーザー ログイン監査に限定されません。多数の事前設定済みレポート、柔軟なアラート、そして Google のようなインタラクティブ検索が含まれており、オンプレミス、クラウド、またはハイブリッドの IT 環境全体で、インシデントを素早く調査し、セキュリティを積極的に強化することを可能にします。

共有する