私はサーバーへの管理者以外のアクセス権を持っています。私はRDP経由で接続し、PowerShellリモーティングを使用することができます。私は、RDPセッションから、次のPowerShellコマンドを実行すると:予想通りPowershellのリモート処理によるGet-WinEvent
Get-WinEvent -MaxEvents 100 -Provider Microsoft-Windows-TaskScheduler
私は、100個のレコードを取得します。
私はPowerShellリモート処理を経由して同じことを行うと、私のローカルマシンから次呼び出すことにより:
invoke-command -ComputerName myserver {Get-WinEvent -MaxEvents 100 -Provider Microsoft-Windows-TaskScheduler }
を私はエラーを取得:
No events were found that match the specified selection criteria.
- CategoryInfo : ObjectNotFound: (:) [Get-WinEvent], Exception
- FullyQualifiedErrorId : NoMatchingEventsFound,Microsoft.PowerShell.Commands.GetWinEventCommand
任意のアイデアなぜですか?リモートのPowerShellセッションは、同じ資格情報で実行する必要があります。
EDIT:whoami
では、RDPログオンとPowerShellリモート処理のセキュリティコンテキストに違いがあります。グループセットは異なります。リモート処理1で、
- BUILTIN \リモートデスクトップユーザー
- NT AUTHORITY \ REMOTE INTERACTIVE LOGON
:RDPのログオンセッションでは、トークン内の次のグループがありますそれCOU
- CONSOLE LOGON
権利の不一致を説明します...
EDIT:レジストリからは、タスクスケジューラのログは何とかシステムログの一部です。 MS KB article Q323076によれば、システムログのセキュリティ記述子は、HKLM\SYSTEM\CurrentControlSet\Services\EventLog\System
、値CustomSD
の下にあります。問題のサーバーを確認することはできませんが、私が管理者である別のサーバーでは、そのキーの下にCustomSDはありません。 HKLM\SYSTEM\CurrentControlSet\Services\EventLog\System\Microsoft-Windows-TaskScheduler
の下には、どちらもありません。セキュリティログだけがCustomSDを取得します。次の質問は、デフォルトSDはどこですか?
C:\Windows\System32\winevt\LogsMicrosoft-Windows-TaskScheduler%4Operational.evtx
の実際のログファイルに対するアクセス許可は、関係なく、アクセスはEventLogサービスによって仲介されています。
私は管理者PRIVSを持つサーバーを指定するときに私のために作品を命じる... –
私はまた、両方のコマンドを実行している何の問題もなかったです。 PowerShellのどのバージョンを使用していますか? invokeの下で実行されるget-WinEventコマンドは機能しますか? – smwk
オーバーヘッド?それは、アプリケーションログに対してさえしません。スティッキーポイントが非管理者であるように見えます... –