使用: 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'的权限失败。
它可能是什么?
答案 0 :(得分:0)
xpto2是否具有数据库的相关访问权限?服务帐户是否具有数据库文件的相关访问权限(如果是文件?
)如果您正在编写应用程序,这需要您将数据写入数据库或文本文件,那么您将需要检查并在必要时更改服务器上的权限,以便您具有写入和读取权限。目录,数据库或文本文件,你也想写。(这只有当你完全控制这些东西时才有可能)
.Net平台上的CAS或代码访问安全性是一个单独的问题。代码访问安全性允许代码在不同程度上受信任,具体取决于代码的来源以及代码身份的其他方面。代码访问安全性还强制对代码进行不同级别的信任,从而最大限度地减少了为了运行必须完全信任的代码量。既然你已经给代码完全访问它不是问题。
您可以查看this guide(因为您使用的是II6)。
答案 1 :(得分:0)
如果您正在使用,则应用程序将尝试使用用户的凭据 - 而不是匿名IIS帐户。
尝试从配置中删除此条目。