FindSourceRegistration

ASP.NETでイベントログを書こうとすると、セキュリティ関連のエラーメッセージが出て登録できない。

自分のPCでは問題なく動作するが、特定のPCでは動作しないのが厄介。

調べていくとSourceNameの登録にAdmin権限がいるという話し。
いちいち登録するのは面倒なので、なんとかならんかな。

[PRB] ASP.NET アプリケーションによりイベント ログに新しいイベント ソースが書き込まれる際に "要求されたレジストリ アクセスは許可されていません" というエラー メッセージが表示される
http://support.microsoft.com/kb/329291/ja

ここでは権限のある人が事前に登録しとけって話。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application
以下にキーをつくればよいらしい。

Top > @IT会議室 > Insider.NET 会議室 > イベントログへの書き込み
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=4588&forum=7

荒業だが

WinNT\Microsoft.NET\Framework\\config\machine.configの 

でもOKらしい

MSDNのページ

.NET Framework クラス ライブラリ  EventLog クラス  
http://msdn2.microsoft.com/ja-jp/library/system.diagnostics.eventlog(VS.80).aspx
松本崇博 Blog (SQL Server Tips) 
http://blogs.sqlpassj.org/matu_tak/archive/2004/06/25/2929.aspx
Internet Information Services に関してよく寄せられる質問と答え
http://www.microsoft.com/japan/technet/community/columns/insider/iisi1203.mspx

ASP.NETの実行時アカウントは、これによると
IIS5・・・IUSRやIWAM アカウントなどのローカル ユーザー アカウント
IIS6・・・ネットワーク サービス(Windows Server 2003 のビルトイン アカウント)

ネットワーク サービスなら既知のSecurityIDとなるため、他のPCへコピーしても権限が引き継がれる。
ローカル ユーザー アカウントは同じ名前でもPCが変わればSecurityIDが変わるため、権限の引継ぎはできない。