Как написать в Web.Config в Medium Trust?

Загрузка моего первого веб-приложения приличного размера на общий хост предоставила мне новый набор проблем, под которыми я имею в виду бессонные ночи. Проблема заключалась в том, что я, скорее всего, не разработал свое приложение для среднего доверия (или не знал, что это было).

Я смягчил все проблемы, кроме одного.

Я написал установщик для администратора, чтобы он мог указать их строку подключения и другие параметры, но я не могу найти способ записи в файл web.config со средним уровнем доверия. У кого-нибудь есть решение, или я просто должен поместить предпочтения в другой файл?

2.08.2008 21:39:11
Одно из решений: 4guysfromrolla.com/articles/100307-1.aspx
Chris S 22.06.2011 11:56:00
1 ОТВЕТ

Это на самом деле звучит как Lowуровень IIS . Если это так, то вы не сможете писать ни в один файл, не только в файл web.config.

Вот уровни из справочного файла IIS:

  • Полный (внутренний) - указывает неограниченные разрешения. Предоставляет разрешения приложения ASP.NET для доступа к любому ресурсу, который подлежит безопасности операционной системы. Все привилегированные операции поддерживаются.
  • Высокий (web_hightrust.config) - указывает на высокий уровень безопасности доступа к коду, что означает, что приложение не может выполнить по умолчанию одну из следующих вещей:
    • Вызов неуправляемого кода.
    • Вызовите обслуживаемые компоненты.
    • Написать в журнал событий.
    • Доступ к очередям службы очереди сообщений.
    • Доступ к источникам данных ODBC, OleDb или Oracle.
  • Средний (web_mediumtrust.config) - указывает средний уровень безопасности доступа к коду, что означает, что в дополнение к ограничениям высокого уровня доверия приложение ASP.NET по умолчанию не может выполнять следующие действия:
    • Доступ к файлам за пределами каталога приложения.
    • Доступ к реестру.
    • Выполните вызовы сети или веб-службы.
  • Низкий (web_lowtrust.config) - указывает на низкий уровень безопасности доступа к коду, что означает, что в дополнение к ограничениям среднего уровня доверия приложение по умолчанию не может выполнять следующие действия:
    • Написать в файловую систему.
    • Вызовите метод Assert.
  • Минимальный (web_minimaltrust.config) - указывает минимальный уровень безопасности доступа к коду, что означает, что приложение имеет только разрешения на выполнение.

Я бы посоветовал, чтобы, если у вас не было возможности установить инсталлятор, он должен создать web.configв памяти файл, который пользователь может сохранить локально и FTPпозже.

21
25.09.2015 11:46:57
Вот как это работает в Microsoft Web Installer, когда вы не устанавливаете права на запись в папке веб-приложения.
Sergiu 17.09.2009 10:40:45