【问题标题】:ASP Membership cannot handle encrypted connection strings in web.configASP Membership 无法处理 web.config 中的加密连接字符串
【发布时间】:2010-10-03 13:13:02
【问题描述】:

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

"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..."

会员资格提供商似乎正在尝试为会员资格调用查找连接字符串。在找不到此条目时,它尝试创建一个新的本地成员数据库,但由于权限错误而失败。

我们仔细检查了连接字符串,尽管它们已加密,但它们看起来还不错。然后我们保存了解密的连接字符串部分的配置 - 现在调用成功了!

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

有没有人见过这个或者知道如何使用加密的连接字符串来实现这个?

【问题讨论】:

    标签: asp.net encryption membership config


    【解决方案1】:

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

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

    【讨论】:

    • 不,ASP 会自动解密连接字符串。这适用于除此之外的所有其他方法调用。
    猜你喜欢
    • 2012-06-18
    • 2010-12-14
    • 1970-01-01
    • 2011-08-19
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    相关资源
    最近更新 更多