0

フォルダーをパスワードで保護するようにフォーム認証を構成しようとしています。資格情報が正しい場合でも、現在、どのユーザーもログインしていません。

これが私のコードです...

ウェブ構成:

<authentication mode="Forms">
  <forms name=".ASPXAUTH" loginUrl="login.aspx" protection="All" timeout="999999">
    <credentials passwordFormat="MD5">
      <user name="admin" password="passwordhashhere" />
    </credentials>
  </forms>
</authentication>
<authorization>
  <allow users="?" />
</authorization>

次に、最後のsystem.webの外側:

<location path="Admin">
  <system.web>
    <authorization>
      <allow users="admin" />
      <deny users="*" />
    </authorization>
  </system.web>
</location>

次に、私のaspxで:

<div class="user">
    <p>Username:</p>
    <br />
    <asp:TextBox ID="TextBoxUser" runat="server"></asp:TextBox>
</div>

<div class="pass">
    <p>Password:</p>
    <br />
    <asp:TextBox ID="TextBoxPass" runat="server" TextMode="Password"></asp:TextBox>
</div>

<div class="login">   
    <asp:Button ID="ButtonLogin" runat="server" Text="Log In" />
    <asp:Label ID="LabelError" runat="server" Text=""></asp:Label>
</div>

次に、コードビハインドで:

Protected Sub ButtonLogin_Click(sender As Object, e As System.EventArgs) Handles ButtonLogin.Click
    If Membership.ValidateUser(TextBoxUser.Text, TextBoxPass.Text) Then
        If Request.QueryString("ReturnUrl") IsNot Nothing Then
            FormsAuthentication.RedirectFromLoginPage(TextBoxUser.Text, False)
        Else
            FormsAuthentication.SetAuthCookie(TextBoxUser.Text, False)
        End If
    Else
        LabelError.Text = "Invalid UserID and Password"
    End If
End Sub
4

1 に答える 1

1

試す

<deny users="?" />

<deny users="*" />2番目のコードブロックの代わりに...

そしてまた

<allow users="*" />

<allow users="?" />最初のコードブロックの代わりに、または必須ではありません..

于 2012-08-29T07:07:40.610 に答える