我有一个Tomcat 5.5服务器,我在其上部署了一个应用程序。 我有这样的事情http://tocatServer:8088/MyApp 我想通过输入用户名和密码来限制此地址的用户访问,但我需要帮助。我知道我必须在web.xml上添加角色,我尝试但没有成功。 如果可能,我想发送这样的URL http://username:password@tocatServer:8088/MyApp 此url是从java swing应用程序发送的,用于从serlet获取许可证 感谢
答案 0 :(得分:2)
在Tomcat中限制对webapp(或webapp URL中的文件夹)的访问:
在webapps/MyApp/WEB-INF/web.xml
添加
<security-constraint>
<web-resource-collection>
<web-resource-name>
Entire webapp
</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>member</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<!-- pay attention: BASIC in insecure, use it only for test, search for a more secure method -->
<auth-method>BASIC</auth-method>
<realm-name>Text reported when prompting the user for un and pw</realm-name>
</login-config>
并在conf/tomcat-users.xml
添加
<role rolename="member"/>
<user username="bubi" password="bubi" roles="member"/>
然后重新加载webapp,也可能重启Tomcat。
来源:O'Reilly's Top Ten Tomcat Configuration Tips - 5. Configuring Basic Authentication
关于第二个问题,我不知道如何实现它。