Моделирование уровней доверия к общему хостингу
-
22-08-2019 - |
Вопрос
Я хочу смоделировать уровни доверия среды общего хостинга на своей машине разработки, чтобы не было неприятных сюрпризов при развертывании моего решения.
Я добавил это в свою настройку web.config:
<trust level="Medium" originUrl="*"/>
Единственная проблема заключается в том, что я получаю это исключение, когда пытаюсь сохранить в своей базе данных:
Внутреннее исключение:System.security.securityException Message = "Запрос на разрешение типа 'System.net.socketPermission, System, Version = 2.0.0.0, Culture = Neutral, PublicKeyToken = B77A5C561934E089'. Source = "MSCORLIB"
Как мне конкретно разрешить это, сохраняя при этом средний уровень доверия?Есть ли еще вещи, которые я могу разумно разрешить?Я буду хостить на GoDaddy.
Решение
Я связался с Godaddy и получил такой ответ:
Godaddy.com ASP.NET общие хостинг -серверы Используйте средний доверительный уровень по умолчанию с добавлением Oledbpermission, Odbcpermission и менее резервной веб-сайта.
Приложения, работающие на среднем уровне доверия не иметь доступа к реестрам, нет доступа к журналу событий Windows и не может использовать отражение.Такие приложения могут общаться только с определенным диапазоном сетевых адресов, и доступ к файловой системе ограничивается иерархией виртуального каталога приложения.Пожалуйста, убедитесь, что ваше приложение может работать в средней трастовой среде, если у вас есть какие -либо проблемы с ним.
Таким образом, люди могут использовать это как показатель того, на что обычно похожи разрешения на общий хостинг.
Когда я выясню, как создать эти разрешения, как указано в ссылке @blowdards, я опубликую их.Или если бы кто-нибудь мог опубликовать пример, это было бы здорово.
Другие советы
Итак, у вас есть среднее доверие по умолчанию, и ошибка, которую вы видите, правильная.
Конечно, администратор сервера может настроить это по своему усмотрению, вам просто нужно точно узнать, какие именно изменения они внесли в политику доверия по умолчанию.Вы можете создать собственный уровень доверия, выполнив действия, описанные в разделе MSDN.Теперь все, что вам нужно сделать, это узнать, что именно Godaddy сделал с ними :)