关于身份验证的请求。
我做了两个页面,index.aspx和login.aspx。现在我在login页面中添加了用户名输入框和密码输入框,触发登录按钮事件:
login.aspx.cs文件中为   ...
  if (user.CompareTo("用户名") == 0 && pass.CompareTo("密码") == 0)
        {
            this.Response.Redirect("index.aspx");   //跳转到index页面
        }
...
结果呢,发现我要是直接输入http://.../ndex.aspx也能访问。根本就起不到效果。然后我就网上查资料。又在web.config里加入了以下几句:<authentication mode="Forms">
      <forms name="authen" loginUrl="login.aspx"/>
    </authentication>
    
    <authorization>
      <deny users="?"/>
    </authorization>结果还是不行,现在我一头雾水啊,哪位好心的哥哥帮帮忙啊。我该怎么做啊,网上有完整的vbscipt例子,可是我不会啊。我也没用VS2005自带的login控件,因为那个好像是sql server2005绑定的,我用的oracle数据库

解决方案 »

  1.   

    oracle数据库照样可以绑定,和SQL一样的
      

  2.   

    FormsAuthentication.RedirectFromLoginPage("用户名",true);
      

  3.   

    我试了一下  和你做的一样  没有问题啊  你的web.config是根目录下的么?
      

  4.   

    我试了一下  和你做的一样  没有问题啊  你的web.config是根目录下的么?
      

  5.   

    可以新建一个judge.aspx
    在page_load中加入:
    if (Session["UserName"] == null || Session["UserName"] == "")
    {
        Response.Redirect("index.aspx");
    }
    然后每一页的page_load中加入:
    if(!Page.IsPostBack)
    {
        Server.Execute("judge.aspx");
    }
    http://community.csdn.net/Expert/topic/5637/5637200.xml?temp=.4004785
      

  6.   

    web.config是在跟目录下的啊。直接打default.aspx的网址还是可以进去的
      

  7.   

    web.config是在跟目录下的啊。现在打default.aspx的网址会直接跳到login.aspx.
    网址变成了
    http://localhost/authen/login.aspx?ReturnUrl=%2fauthen%2fdefault.aspx
    ,但是我现在点击按钮转不到default.aspx页面了
      

  8.   

    if (user.CompareTo("用户名") == 0 && pass.CompareTo("密码") == 0)
    {
                FormsAuthentication.RedirectFromLoginPage("123", false);
    }这样写就行了,自动返回上你选择的页面 ReturnUrl=%2fauthen%2fdefault.aspx 这个是要返回的页面 
      

  9.   

    我晕啊
    在index.aspx页面的pageload做一个判断对方有没有登陆不就可以了吗。
    登陆可以访问,否则拒绝访问。
      

  10.   

    你用的是.net2.0里面的login控件吗?
    如果是,在角色管理中设置为禁止匿名用户登录就可以了!
    试试吧!