2016-05-13 18 views
3

私はサーバーへの管理者以外のアクセス権を持っています。私は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サービスによって仲介されています。

+0

私は管理者PRIVSを持つサーバーを指定するときに私のために作品を命じる... –

+0

私はまた、両方のコマンドを実行している何の問題もなかったです。 PowerShellのどのバージョンを使用していますか? invokeの下で実行されるget-WinEventコマンドは機能しますか? – smwk

+0

オーバーヘッド?それは、アプリケーションログに対してさえしません。スティッキーポイントが非管理者であるように見えます... –

答えて

2

リモートコンピュータの管理者ではない場合、invoke-command -ComputerName myserver {whoami /all}は、あなたが誰であるかを教えてくれます。

イベントログリーダーグループの一部である必要があります。

リモート管理ユーザーグループ、私はすでにあなたと信じています。

あなたがセキュリティログを読み取る必要がある場合は、あなたもは、ローカルセキュリティポリシーの下で監査とセキュリティログを管理する必要があります。 - > [セキュリティ設定] - > [ローカルポリシー] - > [ユーザー権利の割り当て

+0

Whoamiは私がプライマリアカウントとして接続していることを確認していますが、そこには驚きはありません:) RDP経由で同じアカウントで接続したときに、リモートPowerShellセッションのセキュリティコンテキストがRDPログオンと異なるのはなぜですか? –

+0

良い質問ですが、私はこのシナリオを再現できました。明示的に拒否されない限り、ローカルユーザーとしてコンピュータにログオンすると、イベントログ(作成/削除ではない)に対する読み取り/書き込みアクセス権が得られます。しかし、私はこのアクセスが遠隔には伸びていないと考えています。このレベルのアクセス権を持つリモートPCにイベントログをロードしようとすると、アクセスが拒否され、すべて失敗しました。一方、 'Event Log Readers'と 'Remote Management Users'グループの一部であるだけで、リモートでログを読むことができます。ローカルユーザのアクセスは必要ありませんが、書き込みアクセスはできません。 –

+0

リモートイベントログサービスを使用するのではなく、ターゲットマシン上でローカルプロセスとしてログを読み取っているコマンドレットを実行していませんか?全体的なアイデアは、PowerShell Remotingをネットワークトランスポートとして使用し、イベントログの独自のネットワークトランスポートとは対照的に、ローカルアクセス許可を適用することでした。また、技術的には、RDPもリモートです。それは "R"の略です。 –

0

Default ACLs on Windows Event Logs @ MSDN blogによると、Windowsでサーバー2003+、システムログのデフォルトのACLは行く:

O:BAG:SYD: 
*(D;;0xf0007;;;AN) // (Deny) Anonymous:All Access 
*(D;;0xf0007;;;BG) // (Deny) Guests:All Access 
    (A;;0xf0007;;;SY) // LocalSystem:Full 
    (A;;0x7;;;BA)  // Administrators:Read,Write,Clear 
    (A;;0x5;;;SO)  // Server Operators:Read,Clear 
    (A;;0x1;;;IU)  // INTERACTIVE LOGON:Read <=================== 
    (A;;0x1;;;SU)  // SERVICES LOGON:Read 
    (A;;0x1;;;S-1-5-3) // BATCH LOGON:Read 
    (A;;0x2;;;LS)  // LocalService:Write 
    (A;;0x2;;;NS)  // NetworkService:Write 

んNT AUTHORITY \ INTERACTIVE LOGONは、RDPのログオンが含まれていますか?私はフォーラムメッセージを見つけましたが、その効果を得るためには文書を見つけるのがよいでしょう...

このACEは「ソースコードからまっすぐ」と主張しています。したがって、サービスではハードコードされており、レジストリを介して変更する機会があります。

関連する問題