我现在做好了一个系统了,但是安全方面不行,别人可以通过直接在浏览器上输入地址进入系统,这样的话前面首页登录框就白做了,有什么好的方法可以帮我解决这个问题?谢谢!

解决方案 »

  1.   

    用什么开发的。如果是.net 1.1 以上版本,你可以配置web.config文件来设置那么页面可以匿名访问,那些不可以。
      

  2.   

    Forms验证,这么基本的东西。
    看看www.codehenry.com,
    怎么绕也饶不过去
      

  3.   

    看一下asp.net forms验证.(推荐)
    http://msdn.microsoft.com/zh-cn/library/7t6b43z4(VS.80).aspx或是你可以用session验证(不推荐)
      

  4.   

    麻烦这位兄弟可以具体说下嘛?我是VS 2005开发的 用的.NET FRAMEWORK 2.0  谢谢
      

  5.   

    这个问题是大多数程序员都容易碰到的问题,特别是在用户后台的页面验证上,如果我们知道了URL就可以直接绕过登录而进入的话,那我们的登录就白做了,我推荐一个最好的方法:public class BasePage : System.Web.UI.Page//注意这里
        {
            //重载页面方法
            protected override void OnLoad(EventArgs e)
            {
                //如果没登录,转到登录,Session不为空,则正常加载页面.
                if (Session["UserName"] == null)
                {
                    Response.Redirect("~/Admin/Login.aspx");
                }
                else
                {
                    base.OnLoad(e);
                }
            }
        }
    然后把需要验证的页面的,都遵循basepage接口.例如要验证Default.aspx 那么要把Default.aspx.cs的public partial class Default : BasePage//改为BasePage
      

  6.   

    打开google,输入:asp.net 2.0  访问控制
    然后点搜索。
    或者:
    打开msdn,左边栏点“index(索引)”然后输入:URL 身份验证
      

  7.   

    另外,你也可以考虑下用session。
      

  8.   

    你可以在登陆页用 session[name]=用户名 的方式记录一下。
    在其他也的 page_load()中判断一下,如果没有登录那麽 if session[name]=nothing or session[name]="" then
     response.redirect("首页地址")
      

  9.   

    你可以自定义一个控件,在这个控件里面设置好SESSION
    这样你只需要在每个需要登录的页面里面添加一下这个控件。
    如果SESSION中设置好需要登录的值为null的话,就跳转到登录页面
    这样不管你是在地址栏中直接输入URL地址也好,还是链接进来也好,只要SESSION过期或为空了。就一定需要登录
      

  10.   

    登录的时候存Session["yonghuid"],每个页面Page_lode 都判断Session是否存在不存在就跳到登录页面
      

  11.   

    楼上的session验证不能真正解决楼主的问题,如果user用户,直接访问admin的页面呢?
    这样不是还要增加权限的验证?
    有什么办法控制来源呢?
      

  12.   

    更具不同用户的具体要求:
    首先判断session值,不同的类型可以转到不同的登录界面,没有页面的后台都要判断,也就是权限问题·~~
      

  13.   

    一个不错的ASP.NET技术网站:http://singletowm.com/
      

  14.   

    你可以到ASP.NET技术网站:http://singletowm.com/,也许上面有你要解决的问题
      

  15.   

    强烈楼主使用session验证!在验证与安全方面,session都很有成效的。
      

  16.   

    session 和 froms 都可以。
      

  17.   

    之前都用session验证,前些日子才知道forms验证,看了一下,没真正用到,不过session应该够用了吧
      

  18.   

    Forms验证
    或者SESSION都可以的
    cookie不保险
      

  19.   

    除了Forms验证最好外,实在是不知道该给楼主建议什么。
    Session不稳定,老是丢失让客户频繁登录会气死人
      

  20.   

    session比较占资源   最好还是用form验证
      

  21.   

     page_load()中判断一下,
     if (session[name]==null )
     { 
        response.redirect("Login.aspx") 
     }
      

  22.   

            if (!IsPostBack)
            { 
                //权限判断
                if (User.Identity.Name.ToString() == "") 
                    Response.Redirect("Login.aspx");            //设置导航栏
                ...
                //设置数据
            }
      

  23.   

    session cookies 等等,随便用一种就绕不过