Tomcat 7管理应用程序访问被拒绝。

5

当我第一次访问管理应用程序http://localhost:8080/manager/html时,会出现一个浏览器提示登录窗口,要求输入用户名和密码。如果输入错误的用户名和密码,则页面会返回403(访问被拒绝)。

因此,我进行了一些谷歌搜索,并进行了以下设置:

<role rolename="manager-gui" />
<user username="admin" password="tomcat" roles="manager-gui"/>
<!-- these 2 lines was there before my editing -->
<user password="tom" roles="manager-script,admin" username="tom"/>
<user password="tomcat" roles="manager-script,admin" username="tomcat"/> 

在重新启动Tomcat后,管理器应用程序这次直接显示403页面,而不要求输入用户名和密码。所以我有点困惑。这个管理器应用程序使用什么类型的身份验证?我该如何登录管理器应用程序?

我认为你需要角色“经理”。 - Darius X.
3个回答

6

这与浏览器有关,它会保留活动登录状态。对于 Firefox 浏览器,你可以进入 ''工具'' -> ''清除最近的历史记录...'' 并清除 ''活动登录'' 。在此之后刷新您的管理应用程序,将弹出您要求的提示。

祝好, β


这对我有用,在Google Chrome上,打开一个隐身窗口也起了作用。 - cheenbabes

0

虽然这是一个老问题,但我现在也遇到了同样的问题,直到我找到了解决方法才摆脱困境。

正如问题描述的那样,我已经正确配置了tomcat-users.xml,但浏览器从未要求凭据。

在Tomcat 7的新安装中,manager/META-INF/context.xml包含一个过滤器,只允许本地主机。

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

添加网络IP后它就可以工作了。

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.0\.\d+" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

在之前的版本中,这个阀门被注释了。

-1

默认情况下,Tomcat 7使用

LockOutRealm

:这意味着在5次登录失败后,用户名将被锁定。

解决方案

在tomcat-users.xml中添加另一个用户。

<?xml version='1.0' encoding='cp1252'?>
<tomcat-users>
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-gui"/>
</tomcat-users>

我建议保持XML文件的清洁,就像上面的例子一样。 希望能有所帮助。


(a) 他已经拥有一个角色为“manager-gui”的用户; (b) 添加另一个用户并不是解决锁定的办法; (c) 在问题中没有锁定的证据。 - user207421

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接