読者です 読者をやめる 読者になる 読者になる

うまいぼうぶろぐ

linuxとhttpdとperlのメモ

最近のtomcatのmanager画面 はtomcat-users.xml でrolename tomcatを指定するとアクセスできない

defaultに用意されているrolename="tomcat" のまま利用すると。。。

<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>

ブラウザでhttp://192.168.0.1:8080/manager にアクセスすると以下のようなエラーになる。

403 Access Denied

You are not authorized to view this page.

If you have already configured the Manager application to allow access and you have used your browsers back button, used a saved book-mark or similar then you may have triggered the cross-site request forgery (CSRF) protection that has been enabled for the HTML interface of the Manager application. You will need to reset this protection by returning to the main Manager page. Once you return to this page, you will be able to continue using the Manager appliction's HTML interface normally. If you continue to see this access denied message, check that you have the necessary permissions to access this application.
If you have not changed any configuration files, please examine the file conf/tomcat-users.xml in your installation. That file must contain the credentials to let you use this webapp.
For example, to add the manager-gui role to a user named tomcat with a password of s3cret, add the following to the config file listed above.

<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
Note that for Tomcat 7 onwards, the roles required to use the manager application were changed from the single manager role to the following four roles. You will need to assign the role(s) required for the functionality you wish to access.

manager-gui - allows access to the HTML GUI and the status pages
manager-script - allows access to the text interface and the status pages
manager-jmx - allows access to the JMX proxy and the status pages
manager-status - allows access to the status pages only

エラー表示のとおり、例えばrolenameをtomcatからmanager-guiに変えてtomcat再起動するとアクセスできる。

<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>

仕様が変わったなら、defaultで置いているconf/tomcat-users.xml も変えといたらいいのに???とも思うけどユーザに意識して変更させるためにわざと残したままにしてるんかな。ちなみにCHANGESとかは全く見てない。