asp.net 身份验证 - 使用 web.config 中的凭据 - 问题

2023-12-27

我有一个简单的问题让我头痛了几天。

我创建了带有登录控件的非常简单的应用程序。我将用户数据保存在 web.config 文件中:

<authentication mode="Forms">
    <forms name=".RzeskoLoginCookie">
        <credentials passwordFormat="Clear">
             <user name="test" password="test"/>
        </credentials>
    </forms>
</authentication>

我将把这个简单的网站部署到我不想使用 SQL Server 的计算机上的 IIS。

我的登录按钮事件如下所示:

protected void Login1_LoggingIn(object sender, LoginCancelEventArgs e)
{
    if(FormsAuthentication.Authenticate(Login1.UserName, Login1.Password))
    {
        FormsAuthentication.RedirectFromLoginPage(Login1.UserName, Login1.RememberMeSet);
    }
}

现在问题是:

当我在内置网络服务器的 VS2008 上运行网站时,一切正常(我可以登录)。当我将网站复制到 IIS 时,我不断收到这个恼人的错误(在单击“登录”按钮后):

无法生成用户实例 SQL Server 由于失败 检索用户的本地 应用程序数据路径。请做出来 确保用户有本地用户配置文件 在电脑上面。连接将 被关闭。

我还观察到在我的 App_Data 文件夹中正在创建一些奇怪的文件。

总结。我想要实现的是使用 web.config 文件中的用户凭据,而不使用 sql server。

我将不胜感激任何帮助

亲切的问候 PK


来自MSDN http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.login.aspx登录控制页面:

*

登录控件使用成员身份 提供者获取用户凭据。 除非您另有指定,否则 登录控件使用默认的 会员资格提供者定义在 Web.config 文件。要指定一个 不同的提供商,设置 MembershipProvider 属性为其中之一 定义的会员提供者名称 在应用程序的 Web.config 文件中。 欲了解更多信息,请参阅会员资格 提供商。

*

默认的会员提供商是AspNetSqlProvider它使用 SQL Server 数据库作为其用户存储。

如果您想提供自定义身份验证例程,您可以编写自己的自定义会员资格提供程序或处理验证时 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.login.onauthenticate.aspxLogin 控件的方法来提供您自己的身份验证逻辑。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

asp.net 身份验证 - 使用 web.config 中的凭据 - 问题 的相关文章

随机推荐