SecurityException - 공유 호스팅시의 Dapper

.net-4.0 asp.net dapper securityexception shared-hosting

문제

현재 프로젝트에서는 Dapper를 사용합니다. 모든 것이 완벽합니다. 그런 다음 공유 호스팅에 배포해야했습니다. 결과는 여기에서 볼 수 있습니다 (YSOD 복사).

설명 : 응용 프로그램이 보안 정책에서 허용하지 않는 작업을 수행하려고했습니다. 이 응용 프로그램에 필요한 사용 권한을 부여하려면 시스템 관리자에게 문의하거나 구성 파일에서 응용 프로그램의 신뢰 수준을 변경하십시오.

예외 정보 : System.Security.SecurityException : 'System.Security.Permissions.ReflectionPermission, mscorlib, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089'형식의 사용 권한 요청이 실패했습니다.

스택 추적

[SecurityException : 'System.Security.Permissions.ReflectionPermission, mscorlib, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089'형식의 사용 권한 요청이 실패했습니다. System.Security.CodeAccessSecurityEngine.Check (Object demand, StackCrawlMark & ​​stackMark , 부울 isPermSet) +0
System.Security.CodeAccessSecurityEngine.Check (CodeAccessPermission cap, StackCrawlMark 및 stackMark) +31
System.Security.CodeAccessPermission.Demand () +46
System.Reflection.Emit.DynamicMethod.PerformSecurityCheck (유형 소유자, StackCrawlMark 및 stackMark, 부울 skipVisibility) +9461551
+40 Dapperx.SqlMapper.CreateParamInfoGenerator (Identity identity) +537 Dapperx.SqlMapper.GetCacheInfo (ID 신원) + System.Reflection.Emit.DynamicMethod..ctor (문자열 이름, 유형 returnType, 유형 [] 매개 변수 유형, 유형 소유자, 부울 skipVisibility) +376 Dapperx.d__13 1.MoveNext() +644
System.Collections.Generic.List
1..ctor (IEnumerable 1 collection) +327 System.Linq.Enumerable.ToList(IEnumerable 1 소스) +58
Dapperx.SqlMapper.Query (IDbConnection cnn, String sql, Object param, IDbTransaction 트랜잭션, 버퍼링 된 부울, Nullable 1 commandTimeout, Nullable 1 commandType) +199
...

그것을 해결하는 방법이 있습니까 (.NET 4.0에서)? 지금까지 내가 읽은 것을 이해하는 한, 공급자는 IIS에 대한 리플렉션에서 보안 위험 요소가 될 수있는 부분을 허용해야합니다 ...

인기 답변

Dapper가 사용하는 Reflection.Emit은 중간 트러스트에 허용되지 않습니다.

완전 신뢰를 제공하는 호스팅 제공 업체를 찾아야합니다. discountasp.net 은 이전에 사용한 적이 있습니다.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.