У меня есть приложение ASP.Net.net 3.5 SP1, работающее в Win7. Во время процесса входа в систему элемент управления доступом ASP.Net вызывает запись в журнал безопасности (это звучит приемлемо для меня) в журнале событий. Проблема в том, что, похоже, у приложения нет разрешения на это. Ошибка:
Описание. Приложение попыталось выполнить операцию, не разрешенную политикой безопасности. Чтобы предоставить этому приложению требуемые разрешения, обратитесь к своему системному администратору или измените уровень доверия приложения в файле конфигурации.
Исключение. Подробности: System.Security.SecurityException: запрос на разрешение типа "System.Diagnostics.EventLogPermission, System, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089" не выполнен.
Трассировка стека не отображает ни одной строки кода из моего приложения, ее все в рамках. Последние 5 строк: System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark & stackMark, Boolean isPermSet) +0 System.Security.CodeAccessPermission.Demand() +61 System.Diagnostics.EventLog..ctor(String logName, String machineName, String source) +125 System.Diagnostics.EventLog..ctor() +24 System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte [] rawData) +52
Это же приложение отлично работает на XP SP2. Я охотился вокруг и не могу найти, как давать разрешения. Я попытался запустить hte app pool как LocalSystem и ApplicationPoolIdentity.
Какой самый простой способ получить это? Его моя локальная машина-разработчик, и мне все равно, открываю ли я дыры в безопасности, пока мне не нужно изменять код (т.е. Мне нужно, чтобы решение было изменением INETMGR или web.config или некоторыми локальными разрешениями и т.д.).
Спасибо!