ASP.NET 偽装
@IT:連載:プログラミングASP.NET 第17回 ASP.NETにおける認証と認定
ASP.NET偽装を有効にしていると、ASP.NETアプリケーションがIUSRで実行されたりするため、イベントログに書き込めないなど、アクセス権関連のトラブルが発生する可能性がある。
たとえば、ASP.NET偽装を有効にしていたため、以下の例外が発生した。
System.InvalidOperationException がキャッチされました Message="ソース 'XXX' のログを開けません。ユーザーに書き込みアクセス権がありません。" Source="System" StackTrace: 場所 System.Diagnostics.EventLog.OpenForWrite(String currentMachineName) 場所 System.Diagnostics.EventLog.InternalWriteEvent(UInt32 eventID, UInt16 category, EventLogEntryType type, String[] strings, Byte[] rawData, String currentMachineName) 場所 System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData) 場所 System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category)
この例外は、IISの仮想ディレクトリの設定で、ASP.NET偽装を無効にすることで解決した。