Web应用程序中的Tomcat安全文件夹

时间:2012-07-12 12:27:22

标签: tomcat contextpath

我有一个Web应用程序和Tomcat,就像服务器一样。 我将我的网络应用程序放在文件夹中:$(TOMCAT_HOME)/webapps/myapp和我的图片到$(TOMCAT_HOME)/webapps/images 然后我在tomcat的 server.xml

中写道
<Context path="/images" docBase="c:/servers/apache-tomcat-7.0.29/webapps/images"/>

一切正常。 但是,我想保护文件夹。我的意思是,如果用户未登录我的应用程序,我想禁止访问该文件夹。我该怎么做?

2 个答案:

答案 0 :(得分:1)

您需要在部署描述符中添加一个。有点像这样:

<security constraint>
    <web-resource-collection>
        <web-resource-name>Images</web-resource-name>
        <url-pattern>/images/*</url-pattern>
        <http-method>POST</http-method>

    <web-resource-collection>

    <auth-constraint>
        <role-name>Admin</role-name>
        <role-name>Member</role-name>
    </auth-constraint>

</security-constraint>

<security-role><role-name>Admin</role-name></security-role>
<security-role><role-name>Member</role-name></security-role>
<security-role><role-name>Guest</role-name></security-role>

然后,您需要在tomcat-users.xml文件中定义用户角色:

<tomcat-users>
    <role rolename=”Admin”/>
    <role rolename=”Member”/>
    <role rolename=”Guest”/>
    <user username=”Conor” password=”admin” roles=”Admin, Member, Guest” />
    <user username=”SomebodyElse” password=”coder” roles=”Member, Guest” />
    <user username=”Andrew” password=”newbie” roles=”Guest” />
</tomcat-users>

答案 1 :(得分:0)

我知道这个问题有点旧,对于任何人来到这篇文章,我遇到了类似的问题并找到了解决方法,

Tomcat 7 - Secure a folder under webapps folder