我有一个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"/>
一切正常。 但是,我想保护文件夹。我的意思是,如果用户未登录我的应用程序,我想禁止访问该文件夹。我该怎么做?
答案 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)
我知道这个问题有点旧,对于任何人来到这篇文章,我遇到了类似的问题并找到了解决方法,