我有一個在Apache Tomcat 7.x上運行的Java/JEE Web App。比方說,它是在此URL運行:如何防止訪問受TAM WebSEAL保護的後端應用程序?
http://app.example.com:9080/app
我想控制通過WebSEAL服務器訪問該應用程序(TAM的電子商務6.0)。所以,我創建了一個透明路徑結/app
來訪問應用程序。
所以,現在我可以通過在WebSEAL URL訪問它,像這樣:
https://secure.example.com/app
我還創建充當直通和允許任何人使用上述訪問的應用的ACL WebSEAL URL。身份驗證由應用直接控制。所以,我不需要TAM來驗證用戶。
我的問題是,如何防止用戶直接通過此URL訪問應用程序:http://app.example.com:9080/app
?
我想知道我是否可以使用某種標識來告訴我請求是來自WebSEAL服務器還是直接來自應用程序URL。
我試圖使在WebSEAL聯結這些選項:
根據客戶身分頭
User Name (Short)
User Name (Full DN)
User Groups List
User Credential
常規選項
Insert client IP header
Insert WebSEAL cookies
Preserve names of cookies
Add cookie path to cookie names
這些選項不添加任何HTTP頭,除非用戶通過TAM認證,這對我來說不是一種選擇。如果可以的話,我可以創建一個WebFilter,它可以在Java應用程序中讀取此標題,並在標題丟失時阻止該請求。但沒有運氣。
有什麼建議嗎?
感謝您抽出寶貴時間,並提供一個答案。我幾天前就能使它工作。我一直有意在這裏發表一個關於我所做的事情的答案;但沒有得到這樣的機會。我會盡快做到這一點。謝謝。 – anacron