OleDbPermission和ASP.NET中等信任

时间:2010-09-01 11:21:00

标签: asp.net hosting oledb medium-trust

我正在关注this document in order to run my website in a medium trust environment。我的网络应用程序使用OleDb,所以我需要以中等信任的方式授予它权限。我已经完成了那篇文章中的所有内容,但它仍然无效:(

在我的web_mediumtrust.config中,我添加了以下安全类:

<SecurityClass Name="OleDbPermission" Description="System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />

以下权限集:

<PermissionSet class="NamedPermissionSet" version="1" Name="ASP.Net">
   <IPermission class="OleDbPermission" version="1" Unrestricted="true" />
</PermissionSet>

但是当我尝试使用它时仍然会出现异常:

  

System.Security.SecurityException   发生消息=“请求   类型的许可   “System.Data.OleDb.OleDbPermission,   System.Data,Version = 2.0.0.0,   文化=中性,   公钥= b77a5c561934e089'   失败了。“Source =”mscorlib“
  堆栈跟踪:          在System.Security.CodeAccessSecurityEngine.Check(Object   需求,StackCrawlMark&amp; stackMark,   Boolean isPermSet)          在System.Security.PermissionSet.Demand()          在System.Data.Common.DbConnectionOptions.DemandPermission()          在System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection blah blah blah ....

有什么我想念的吗?我还需要做其他事吗?

亲切的问候。

1 个答案:

答案 0 :(得分:0)

有一个x32的配置文件夹:

%windir%\Microsoft.NET\Framework\{version}\CONFIG

和x64的另一个:

%windir%\Microsoft.NET\Framework64\{version}\CONFIG

我感到愚蠢......