Проблеск в среднем доверии

Есть ли способ заставить Glimpse работать в Medium Trust?

Если я установлю <glimpse enabled="true"/> в своем web.config, я получу исключение безопасности:

   [SecurityException: Request failed.]
   System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0
   System.Security.CodeAccessSecurityEngine.Check(PermissionSet permSet, StackCrawlMark& stackMark) +31
   System.Security.PermissionSet.Demand() +68
   System.Security.CodeAccessSecurityEngine.CheckGrantSetHelper(PermissionSet grantSet) +57
   System.Reflection.Emit.AssemblyBuilder.nCreateDynamicAssembly(AppDomain domain, AssemblyName name, Evidence identity, StackCrawlMark& stackMark, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, Byte[] securityRulesBlob, Byte[] aptcaBlob, AssemblyBuilderAccess access, DynamicAssemblyFlags flags, SecurityContextSource securityContextSource) +0
   System.Reflection.Emit.AssemblyBuilder..ctor(AppDomain domain, AssemblyName name, AssemblyBuilderAccess access, String dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, StackCrawlMark& stackMark, IEnumerable`1 unsafeAssemblyAttributes, SecurityContextSource securityContextSource) +198
   System.Reflection.Emit.AssemblyBuilder.InternalDefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, String dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, StackCrawlMark& stackMark, IEnumerable`1 unsafeAssemblyAttributes, SecurityContextSource securityContextSource) +125
   System.AppDomain.InternalDefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access, String dir, Evidence evidence, PermissionSet requiredPermissions, PermissionSet optionalPermissions, PermissionSet refusedPermissions, StackCrawlMark& stackMark, IEnumerable`1 assemblyAttributes, SecurityContextSource securityContextSource) +43
   System.AppDomain.DefineDynamicAssembly(AssemblyName name, AssemblyBuilderAccess access) +42
   System.ComponentModel.Composition.MetadataViewGenerator..cctor() +257

Насколько я могу судить, ошибка аналогична описанной здесь. По сути, MEF не может выполнять свои трюки по заполнению экземпляра метаданных, реализующего определенный интерфейс, когда приложение работает со средним доверием.


person Samuel Jack    schedule 07.06.2011    source источник
comment
У меня есть похожее исключение, даже если приложение запускается с параметрами ‹glimpse enabled=false/› и ‹уровень доверия=Medium/›.   -  person Cheburek    schedule 25.09.2011


Ответы (1)


К сожалению, в настоящее время Glimpse требует полного доверия, вы можете отправить им запрос на улучшение, большинство функций должны также быть доступным в Medium Trust.

person skolima    schedule 07.06.2011
comment
Да, я думаю, что этот комментарий правильный. Лично я не тестировал в средах с неполным доверием, но во время запуска используется довольно много MEF, а также некоторые элементы динамической генерации IL. - person anthonyv; 07.06.2011