2011-11-18 78 views
3

我使用AJP連接器運行Tomcat 6.0.24。對於連接器,我已經設置了屬性tomcatAuthentication =「false」,這樣Tomcat將從本地Web服務器(Apache 2.2.15使用mod_proxy_ajp和mod_cosign)獲取經過身份驗證的用戶的名稱。這對於我設置的「Hello,World」servlet來說工作得很好。使用本機Web服務器身份驗證與Tomcat管理器WebApp

當使用Tomcat的MemoryRealm,tomcat-users.xml文件和默認配置中的連接器(tomcatAuthentication =「true」)時,我的Tomcat Manager WebApp工作正常。但是,對於tomcatAuthentication =「false」,我從Tomcat管理器WebApp中收到錯誤「HTTP狀態403 - 訪問所請求的資源已被拒絕」。

如何配置Tomcat管理器Web應用程序以依賴本地Web服務器(Apache HTTPD)進行身份驗證,但對用戶角色使用獨立源(tomcat-users.xml或其他)?我已閱讀文檔並進行了搜索,但我對Tomcat的瞭解還不足以找到答案。

+0

三年後我有同樣的問題。你記得你是否知道了什麼? – rjcarr

回答

1

Tomcat Manual

  1. 配置Tomcat是否或Web服務器做認證

當Tomcat與Web服務器,如Apache使用,默認是 有Tomcat的繼續處理認證。在Web服務器轉發給Tomcat 的請求中指定的任何經過身份驗證的 都將被忽略。

如果你想Tomcat來使用由 Web服務器提供經過驗證的用戶,加:

tomcatAuthentication="false" to the Ajp12Connector or Ajp13Connector as appropriate. For example: 

<Ajp13Connector port="8009" tomcatAuthentication="false" /> 

你有沒有嘗試添加第二個配置值。

+0

當tomcatAuthentication =「false」被添加到連接器時,將使用Apache HTTPD完成的身份驗證,並且它可以與期望它的servlet一起使用。但是,這會打破Tomcat Manager WebApp。我的根本問題是,如何修復Tomcat Manager WebApp,以便使用通過連接器傳遞的身份驗證? – Mark

+0

爲了完整起見,可以在「 \ conf \ server.xml」 – Wouter

相關問題