例如我拿TOMCAT 发布 WEB
假如我的项目叫 TEST
项目下 有index.jsp   a.jsp    b.jsp    c.jsp    d.jsp   e.jsp等
首页的话 
一般都是 输入http://172.96.33.150/TEST  (端口80)
(一般会设置)就会进入首页嘛 index.jsp假如有的人故意就不先进去index.jsp
而知道TEST项目下有别的文件
而进入了a.jsp 或者 b.jsp
我防止他这样进入
跨越权限!!!
因为我的首页有登陆,要填写密码和用户的帮助帮助啊.!!!举例
某人故意不进入首页
他就输入 http://172.96.33.150/TEST/a.jsp
也进入了我的页面而跨越了首页
这怎么防止就是这样的一个问题
本人文笔欠佳 不知道是否表达清楚!
希望高手赐教!!
没有分了,希望大家一起来讨论讨论!!

解决方案 »

  1.   

    所以要把需要保护的文件放到WEB-INF中去。
      

  2.   


    放到 WEB-INF 
    下?
    这样可以?
    是吗?
      

  3.   

    通过session控制权限。写一个权限的filter过滤除了index.jsp每个jsp文件。看看当前session的用户有没有登录,如果没有登录就转到index.jsp去。登录了就放行。比较简单。
      

  4.   

    在action判断存放用户信息的session是不是空的,是空的就跳到登陆界面
      

  5.   

    在登录后,在session里放一个对象,随便什么好了,比如就放用户名
    比如"Tom"登录了,那么你就:session.setAttribute("UserName", "Tom");然后,在你需要保护的页面里,比如就是a.jsp好了
    先做个判断,如果session里没有"UserName",就自动跳转到登录页面String userName = session.getAttribute("UserName");
    if(userName == null || userName.equals(""))
        //这里写跳转到index.jsp的语句
      

  6.   


    通过session 
    session怎么写呢?
      

  7.   


    String name=request.getParameter("name");
    String password=request.getParameter("password");
     
     
    if(name.equals(System.getProperty("user.name" ))&&password.equals("123"))
    {
       session.setAttribute("name",name);
       
       response.sendRedirect("loginsucess.jsp");
    }
    else
    {
     response.sendRedirect("session_login.html");
    }
    我是这样写的!
      

  8.   

    如果你没有用struts之类的框架的话用,filter和session是最好的解决方法。
      

  9.   

    如果我想输入一个 IP 地址
    就能让它弹出这个页面
    怎么来实现呢?
    我想以WINDOWS的身份进行登陆!!
    高手赐教啊!!!
      

  10.   

    没有用框架的话(struts)就是用Filter或者HttpSession接口来处理登陆问题或者使用WEB容器自身提供的验证方法,你说的那种叫BASIC认证,并非WINDOWS认证,他需要WEB容器的认证用户表
    以TOMCAT为例
    有效的用户表单
    <%tomcat-root%>/conf/tomcat-users.xml<tomcat-users>
     <user name="admin" password="admin123" roles="admin" />
     <user name="user" password="user" roles="user" />
     <user name="test" passowrd="123" roles="user" />
    </tomcat-users>此文件用于配置TOMCAT认证的用户在你工程的/WEB-INF/web.xml中配置认证<web-app>
    ...
    <security-constraint>
     <web-resource-collection>
      <web-resource-name>user</web-resource-name>
      <url-pattern>/*</url-pattern>
     </web-resource-collection>
     <auth-constraint>
      <role-name>user</role-name>
     </auth-constraint>
    </security-constraint>
    <login-config>
     <auth-method>BASIC</auth-method>
     <realm-name>user</realm-name>
    </login-config>
    ...
    </web-app>
    注意web.xml中配置的role组要与tomcat-users.xml中相对应
      

  11.   

    用session  权限限制就行了
      

  12.   

    就如6楼所言啦,你可以在每个页面加载时,做一验证啦,这样做不就OK啦,你说呢!但是小述的还都不太行呀,当果是jsp的编辑的话,可以在第一页加载静态的页啦!
      

  13.   

    这是最笨的办法了,基本验证肯定是过滤器,将需要保护的页面放在一个目录中,然后设置过滤器过滤访问这个目录的页面,检查session中是否有用户信息,这样一个过滤器就搞定目录中的所有jsp了
      

  14.   

    WEB-INF 只有服务器可以访问
    所以....1楼正确
      

  15.   

    修改conf下的web.xml
    <servlet>
            <servlet-name>default</servlet-name>
            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>false</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
      

  16.   

    晕,没看清问题。比较简单的就是用session或者是cookies。
    也可以用String url=request.getHeader("Referer");
    如果url是null的话就转到index.jsp
      

  17.   

    WEB-INF
    可以控制
    在.xml
    设置