安全性异常:应用程序试图执行安全策略不允许的操作....更改该应用程序的信任级别。

chengfeng 2007-01-09 10:28:00
环境:NET2003,framework1.1
刚开始网站程序一切正常的,连接数据库也没有问题,可是因为我需要编译另一个VC6写的程序,就安装了下VC6,之后 再跑网站的时候就出现以下错误了,卸载VC,重装sql server2000都不行,请问这是什么原因导致的问题?


连接数据库出错信息如下:

安全性异常
说明: 应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请与系统管理员联系,或在配置文件中更改该应用程序的信任级别。

异常详细信息: System.Security.SecurityException: 不允许所请求的注册表访问权。

源错误:


行 1082: for(int i=0;i<maxconnnum;i++)
行 1083: {
行 1084: ConnPool.cnarray[i]=new OleDbConnection(Application["APP_OLE_CONNECTION"].ToString());
行 1085: ConnPool.cnarray[i].Open();
行 1086: }


源文件: d:\e_learning\global.asax.cs 行: 1084

堆栈跟踪:


[SecurityException: 不允许所请求的注册表访问权。]
Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable) +473
System.Data.Common.ADP.ClassesRootRegistryValue(String subkey, String queryvalue) +219
System.Data.OleDb.OleDbConnectionString.ValidateParse() +366
System.Data.Common.DBConnectionString..ctor(String connectionString, UdlSupport checkForUdl) +144
System.Data.OleDb.OleDbConnectionString.ParseString(String connectionString) +96
System.Data.OleDb.OleDbConnection.set_ConnectionString(String value) +11
System.Data.OleDb.OleDbConnection..ctor(String connectionString) +158
e_learning.Global.Application_Start(Object sender, EventArgs e) in d:\e_learning\global.asax.cs:1084




--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573
...全文
5980 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
blueonly 2007-04-02
  • 打赏
  • 举报
回复
还有iuser
blueonly 2007-04-02
  • 打赏
  • 举报
回复
开始 运行 regedit
给network service 给 local machine的写权限,并覆盖所有子节点
fanxin1126 2007-04-02
  • 打赏
  • 举报
回复

请教高手怎么把数据库中的数据用树状图显出来?
hanguoji84 2007-04-02
  • 打赏
  • 举报
回复
UP关注
真相重于对错 2007-04-02
  • 打赏
  • 举报
回复
我一般都先安装vc6 再装vs.net,反之好像会出错.
我的方法不知管不管用

fanxin1126 2007-04-02
  • 打赏
  • 举报
回复
请教高手怎么把数据库中的数据用树状图显出来?
真相重于对错 2007-04-02
  • 打赏
  • 举报
回复
%winnt%\Microsoft.net\vXXXX\aspnet_regiis.exe -u
%winnt%\Microsoft.net\vXXXX\aspnet_regiis.exe -i
blueonly 2007-04-02
  • 打赏
  • 举报
回复
up
chengfeng 2007-01-09
  • 打赏
  • 举报
回复
to: lizhizhe2000(彬彬)

试了你说的方法,好像不行,还是同样的错误,配置是指哪里的配置?权限又需要怎么分配呢?因为我原先跑这个站连数据库是没有问题的,但是装过VC后就出问题了,所以我怀疑是否安装的时候覆盖了某些配置文件导致了这个错误。
lizhizhe2000 2007-01-09
  • 打赏
  • 举报
回复
要么是配置不对,要么是权限分配得不对。
lizhizhe2000 2007-01-09
  • 打赏
  • 举报
回复
1.默认情况下,ASP.NET 工作进程的用户令牌是 ASPNET(或者,对于 Internet 信息服务 [IIS] 6.0 上运行的应用程序是 NetworkService)。由于您的帐户不具有创建事件源的正确用户权限,会出现“症状”部分中的问题。

临时救急的办法:
我们有一个神奇的解决办法,是houxy找到的“IIS虚拟目录的匿名访问选择框点掉再选中”大法:
首先,不让该站点虚拟目录启用匿名访问,这样在本机管理员身份下访问你的web应用,因为你当前的身份应该拥有对注册表的权限,所以肯定能做Enterprise Library要做的事情。然后,再让虚拟目录启用匿名访问,再次访问Web应用,一切恢复正常,不再报告“System.Security.SecurityException: 不允许所请求的注册表访问权。”了。
也可以把"IIS虚拟目录匿名访问"中的匿名帐户修改成具有这种权限的帐户,如管理员即把IUSR_PYT改成Administrator

摘自:http://www.cnblogs.com/pyt5208/archive/2006/07/08/445681.html
lazyfish 2007-01-09
  • 打赏
  • 举报
回复
路过,学习。

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧