1. 程式人生 > >tomcat-users.xml配置manager

tomcat-users.xml配置manager

Tomcat Manager是Tomcat自帶的、用於對Tomcat自身以及部署在Tomcat上的應用進行管理的web應用。Tomcat是Java領域使用最廣泛的伺服器之一,因此Tomcat Manager也成為了使用非常普遍的功能應用。

在預設情況下,Tomcat Manager是處於禁用狀態的。準確地說,Tomcat Manager需要以使用者角色進行登入並授權才能使用相應的功能,不過Tomcat並沒有配置任何預設的使用者,因此需要我們進行相應的使用者配置之後才能使用Tomcat Manager。

Tomcat Manager的使用者配置是在Tomcat安裝目錄/conf/tomcat-users.xml檔案中進行管理的。

Tomcat Manager的使用者配置非常簡單,下面我們以一個具體的配置為例:

如上所示,我們只需要在tomcat-users節點中配置相應的role(角色/許可權)和user(使用者)即可。一個user節點表示單個使用者,屬性username和password分別表示登入的使用者名稱和密碼,屬性roles表示該使用者所具備的許可權。

user節點的roles屬性值與role節點的rolename屬性值相對應,表示當前使用者具備該role節點所表示的角色許可權。當然,一個使用者可以具備多種許可權,因此屬性roles的值可以是多個rolename,多個rolename之間以英文逗號隔開即可。

稍加思考,我們就應該猜測到,rolename的屬性值並不是隨意的內容,否則Tomcat怎麼能夠知道我們隨便定義的rolename表示什麼樣的許可權呢。實際上,Tomcat已經為我們定義了4種不同的角色——也就是4個rolename,我們只需要使用Tomcat為我們定義的這幾種角色就足夠滿足我們的工作需要了。

以下是Tomcat Manager 4種角色的大致介紹(下面URL中的*為萬用字元):

manager-gui
允許訪問html介面(即URL路徑為/manager/html/)
manager-script
允許訪問純文字介面(即URL路徑為/manager/text/
)
manager-jmx
允許訪問JMX代理介面(即URL路徑為/manager/jmxproxy/)
manager-status
允許訪問Tomcat只讀狀態頁面(即URL路徑為/manager/status/

)
從Tomcat Manager內部配置檔案中可以得知,manager-gui、manager-script、manager-jmx均具備manager-status的許可權,也就是說,manager-gui、manager-script、manager-jmx三種角色許可權無需再額外新增manager-status許可權,即可直接訪問路徑/manager/status/*。