ASP Membership无法处理web.config中的加密连接字符串

时间:2009-01-26 13:45:34

标签: asp.net encryption membership config

我们在我们拥有的测试网络服务器上遇到了一种网络方法错误。主要错误是:

"Access to the path 'E:\websites\Discovery\ProfileService\App_Data' is denied"

进一步查看堆栈跟踪可以提供更多信息:

"at System.Web.DataAccess.SqlConnectionHelper.CreateMdfFile..."
"at System.Web.DataAccess.SqlConnectionHelper.EnsureSqlExpressDBFile..."
"at System.Web.DataAccess.SqlConnectionHelper.GetConnection..."
"at System.Web.Security.SqlMembershipProvider.GetUser..."
"at System.Web.Security.Membership.GetUser..."
"at System.Web.Security.Membership.GetUser..."

似乎会员提供商试图为会员呼叫找到连接字符串。如果未能找到此条目,它会尝试创建新的本地成员资格数据库,但无法通过权限错误执行此操作。

我们仔细检查了连接字符串,虽然它们是加密的但它们似乎还可以。然后我们保存了配置,解密了连接字符串部分 - 现在调用了!

我们知道连接字符串是正确的,因为其他服务方法工作正常。更奇怪的是,成员资格的某些方面似乎适用于加密。

之前是否有人见过这个或知道如何使用加密连接字符串进行此操作?

1 个答案:

答案 0 :(得分:0)

在您的代码中,在进行SQL调用之前,您是在解密连接字符串吗?

堆栈跟踪中的错误可能是您的应用在该目录中没有写入权限。