web-dev-qa-db-ja.com

SCOM 2007 R2を使用してADコンピューターの最後のログオンを確認するにはどうすればよいですか?

SCOM 2007 R2を使用して、コンピューターがActive Directoryから最後にログオンしたことを確認できますか?複製する必要のある4つのドメインコントローラーがあります。

http://www.dovestones.com/products/True_Last_Logon.asp のような他のプログラムを使用できることは知っていますが、可能であればSCOMを使用したいと思います。

1
Helgi

あなたが探しているかもしれない2つのことがあります。 Active Directory内のコンピューターアカウントまたはユーザーアカウントの明確な回答を得るには、すべてのドメインコントローラーをポーリングし、LastLogonについて報告された最新の値を選択する必要があります。これはDC間で複製されないAD属性であるためです。それがTrueLastLogonが行っていることです。

コンピュータアカウントの場合、絶対的な精度が必要ない場合は、少しショートカットを使用できます。古い未使用のコンピュータアカウントをクリーンアップする場合。 ADに参加しているすべてのコンピューターは、30日ごと(またはWindows Vista\W2K8以降の場合は7日ごと)にマシンアカウントのパスワードを自動的に変更します。これは、PasswordLastChanged属性がアクティブなマシンに対して定期的に変更されることを意味します。この属性はすべてのDCに複製されるため、単一のクエリを使用してそれを把握できます。

ユーザーアカウントの場合、これは当てはまらないため、すべてのDCにLastLogonを照会する必要があります。 Windows2003またはWindows2008の機能レベルで新しいADインフラストラクチャを使用している場合は、役立つ可能性のある代替手段を提供できる新しい属性がいくつかあります。

Server 2008の機能レベルで操作する場合、次のオブジェクト属性を使用できます。

msDS-LastSuccessfulInteractiveLogonTime
msDS-LastFailedInteractiveLogonTime

これは実際にはデフォルトでオンになっていません。これを有効にするには、ドメインコントローラーが属するGPO)に対して以下を有効にする必要があります。

Computer Configuration| Policies | Administrative Templates | Windows Components | Windows Logon Options | Display information about previous logons during user logon = Enabled

このTechnetの記事 にいくつかの詳細情報があります。

Server 2003の機能レベル以降で動作している場合、次のオブジェクト属性を使用できます。

LastLogontimeStamp

残念ながら、LastLogonTimeStampは、デフォルトでは9日から19日の間でランダムに変化するサイクルでのみ複製され(大規模な環境での過剰なトラフィックを排除するため)、私の知る限り、1日より速いものに変更することはできません。

他のすべてのADでは、関連する属性は前述のLastLogonだけです。残念ながら、これは複製されないため、使用する場合は、ドメイン内のすべてのDCをポーリングし、返された値から最新のログオン時間を選択する必要があります。

1
Helvick