登录控制表单身份验证

时间:2011-09-06 18:25:49

标签: asp.net visual-studio-2010 login-control

我设置了一个登录控件,以便在我的Web应用程序上使用,并且在验证用户时遇到问题。我在sql server 2008中使用另一个站点上的建议在我自己的数据库中创建了成员资格表。然后我选择使用表单身份验证并在WSAT中创建了两个用户,并认为这样可以正常工作。但它为所有用户返回false,包括我创建的两个用户。为什么会这样,我不确定,如果我使用sql数据库表,我该怎么做?

<authentication mode="Forms">
 </authentication>
<authorization>
     <allow users="boy"/>
     <allow users="girl"/>
</authorization>
<roleManager enabled="true" />

登录后面的代码:

If Page.IsValid then
   If username <>"" and password <>"" then
       If FormsAuthentication.Authenticate(username,passwprd) = False then
           Return false
       else
           response.redirect("~/default.aspx")
       End If
  End If
 End If

1 个答案:

答案 0 :(得分:2)

您需要配置web.config以使用MembershipProvider

查看here了解详情。您是否尝试使用SqlMembershipProvider

要使用MembershipProvider进行身份验证,请使用Login用户控件,或者您可以创建自己的用户控件并调用以下方法:

if (Membership.ValidateUser(username, password))
{
   FormsAuthentication.SetAuthCookie(userName, createPersistentCookie);
   FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie); 
}