ASP.NET 2.0无法打开SqlConnection

时间:2009-08-24 15:20:26

标签: asp.net sql-server-2005 iis-6

使用: IIS 6; 匿名身份验证(属于administrators组的用户); SQL Server 2005; .NET 2.0

的Web.config:

<system.web>
    <securityPolicy>
      <trustLevel name="Full" policyFile="internal" />
    </securityPolicy>
  </system.web>

<identity impersonate="true"/>

当我尝试打开SQLConnection时出现此异常:

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

异常详细信息:System.Security.SecurityException:请求类型为'System.Data.SqlClient.SqlClientPermission,System.Data,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的权限失败。

它可能是什么?

2 个答案:

答案 0 :(得分:0)

xpto2是否具有数据库的相关访问权限?服务帐户是否具有数据库文件的相关访问权限(如果是文件?

如果您正在编写应用程序,这需要您将数据写入数据库或文本文件,那么您将需要检查并在必要时更改服务器上的权限,以便您具有写入和读取权限。目录,数据库或文本文件,你也想写。(这只有当你完全控制这些东西时才有可能)

.Net平台上的CAS或代码访问安全性是一个单独的问题。代码访问安全性允许代码在不同程度上受信任,具体取决于代码的来源以及代码身份的其他方面。代码访问安全性还强制对代码进行不同级别的信任,从而最大限度地减少了为了运行必须完全信任的代码量。既然你已经给代码完全访问它不是问题。

您可以查看this guide(因为您使用的是II6)。

答案 1 :(得分:0)

如果您正在使用,则应用程序将尝试使用用户的凭据 - 而不是匿名IIS帐户。

尝试从配置中删除此条目。