Когда я создаю приложение Azure ASP.NET, по умолчанию для уровня доверия .NET установлено значение Полное доверие. Я всегда изменяю его на частичное доверие Windows Azure, которое похоже на средний уровень доверия ASP.NET.
Вы можете сделать это либо с помощью графического интерфейса пользователя, когда вы выбираете Свойства для роли, либо установив для enableNativeCodeExecution значение false в файле определения (.csdef), как показано ниже:
<WebRole name="ServiceRuntimeWebsite" enableNativeCodeExecution="false">
Как разработчик, который заботится о безопасности, я хочу по умолчанию запустить мое приложение в режиме частичного доверия, который обеспечивает более высокий уровень безопасности. Если мне нужно использовать что-то вроде Reflection или P / Invoke, я как разработчик хочу сам принять решение снизить этот уровень доверия.
Я уверен, что есть причина, по которой Microsoft решила использовать Полное доверие в качестве уровня доверия .NET по умолчанию, я просто не вижу его. Если вы знаете причину или думаете, что знаете, пожалуйста, дайте мне знать.