■
Active Directory ドメインで、ユーザのログオン/ログオフの状況を監査したい
監査ポリシーでは、ログオン画面からの対話的なユーザのログオン、ログオフの監査を行うことができないのです。
対話的なログオンログオフを確実に記録したいという場合は、ログオンスクリプトやログオフスクリプトを活用すると良いでしょう。
ログオンスクリプトのサンプル
Const AUDIT_SUCCESS = 8 REM Create Objects Set objShell = WScript.CreateObject("WScript.Shell") Set objNetwork = WScript.CreateObject("WScript.Network") Set objADSys = CreateObject("ADSystemInfo") REM Build a message string strMsg = "ユーザ " + objNetwork.UserName + " が、ドメイン " + _ objNetwork.UserDomain + " (サーバ " + objADSys.GetAnyDCName + _ ") にログオンしました。" REM Write to Eventlog objShell.LogEvent AUDIT_SUCCESS, strMsg, objADSys.GetAnyDCName
ログオフスクリプトのサンプルConst AUDIT_SUCCESS = 8 REM Create Objects Set objShell = WScript.CreateObject("WScript.Shell") Set objNetwork = WScript.CreateObject("WScript.Network") Set objADSys = CreateObject("ADSystemInfo") REM Build a message string strMsg = "ユーザ " + objNetwork.UserName + " が、ドメイン " + _ objNetwork.UserDomain + " (サーバ " + objADSys.GetAnyDCName + _ ") からログオフしました。" REM Write to Eventlog objShell.LogEvent AUDIT_SUCCESS, strMsg, objADSys.GetAnyDCNameこうしたスクリプトを、適切なGPOの「ユーザの構成」中にあるログオンスクリプトやログオフスクリプトとして構成することで、ログオンやログオフの情報をイベントログに出力することが可能です。
WSUS の [今すぐ同期] ボタンをコマンドラインから実行したい - Blog -マイクロソフトに一喜一憂する日常-
どうやら標準機能としてはコマンドラインから [今すぐ同期] / [Synchronize Now] ボタンを実行する方法はないようで、WSUS API の StartSynchronization を使う方法が紹介されています。
リンク先の記事では単純に StartSynchronization を紹介しているだけではなく、記事どおり作業すると StartSynchronization.exe というモジュールを生成してくれます。とりあえずこのモジュールを使えば、表題の件である“コマンドラインから[今すぐ同期] の処理を行う”という要件を満たせます。Synchronize WSUS Replica (slave) Server from the Command Line - PatchAholic...The WSUS Blog!
訳してみた*1
1) 次のコードをコピーしてメモ帳等へ貼り付け"StartSynchronization.vb"という名前で保存します。Imports Microsoft.UpdateServices.Administration Module StartSynchronization Sub Main() Dim server As IUpdateServer Dim subscription As ISubscription 'connect to the local server server = AdminProxy.GetUpdateServer subscription = server.GetSubscription() subscription.StartSynchronization() End Sub End Module2) コマンドプロンプトを開き、1)で保存した"StartSynchronization.vb"が含まれたフォルダをカレントにします。
3) 次のコマンドを実行します(コマンドは1行で入力する必要があります)
%WINDIR%\Microsoft.NET\Framework\v1.1.4322\vbc.exe StartSynchronization.vb /r:"%PROGRAMFILES%\Update Services\service\bin\Microsoft.UpdateServices.Administration.dll" /out:StartSynchronization.exe以上で"StartSynchronization.exe"が作成されます。
これを実行するとWSUSの同期がすぐ実行されます
Windows Server Insider 運用 − @IT
WSUSサーバーにクライアントPCが報告を上げてこない場合の対処 - 暫定日記 / 日々の泡
アップデートサービスを停止
net stop wuauservregedit にて以下のレジストリ値を削除。
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate]
AccountDomainSid
SusClientId
PingIdxmlを関連づけるため?以下のコマンドを実行
%windir%\system32\regsvr32.exe %windir%\system32\MSXML3.dllそして、SoftwareDistributionフォルダを削除、windowsupdate.log を名前変更。
rmdir C:\WINDOWS\SoftwareDistribution /S /Q
ren C:\WINDOWS\windowsupdate.log windowsupdate.oldアップデートサービスを開始
net start wuauserv同期
wuauclt /resetauthorization /detectnow
*1:つもりです。自信はありませんorz