Проблема "безопасности" с NHibernate на развернутом веб-приложении - PullRequest
3 голосов
/ 22 января 2011

Я развернул на сервере веб-приложение, которое использует NHibernate.Приложение компилируется и работает нормально на моей локальной машине разработчика, но есть проблема с NHibernate на новом сервере.Я получаю следующую ошибку:

Описание: приложение попыталось выполнить операцию, не разрешенную политикой безопасности.Чтобы предоставить этому приложению необходимое разрешение, обратитесь к системному администратору или измените уровень доверия приложения в файле конфигурации.

Сведения об исключении: System.Security.SecurityException: Запрос разрешения типа 'System.Configuration.ConfigurationPermission, System.Configuration, Version = 4.0.0.0, Culture = нейтральный, PublicKeyToken = tokenkeyhere 'не удалось.

Предлагает изменить "уровень доверия" приложения в файле конфигурации.Как именно я это делаю?Я впервые развернул веб-приложение NHibernate, поэтому я в растерянности.

1 Ответ

3 голосов
/ 22 января 2011

В последнее время мы много на это смотрели. Вот ссылка на запущенный NHibernate со средним доверием

Это наиболее сжатое объяснение, которое я видел о различных уровнях доверия: Демистифицированные уровни доверия

Из статьи:

- Full trust – your code can do anything that the account running it can do.
- High trust – same as above except your code cannot call into unmanaged code. i.e. Win32 APIs, COM interop.
- Medium trust – same as above except your code cannot see any part of the file system except its application directory.
- Low trust – same as above except your code cannot make any out-of-process calls. i.e. calls to a database, network, etc.
- Minimal trust – code is restricted from anything but the most trival processing (calculating algorithms).
...