我有一個應用程序,我在使用spring安全和grails旋律。我計劃在生產環境中運行Grails旋律,但不希望訪問者訪問它。我應該如何實現這一目標?我試圖在Grails的創建過濾器(只是顯示的什麼,我想,而不是實際的代碼示例) -使用grails過濾器保護grails旋律
def filters = {
allURIs(uri:'/**') {
before = {
//...
if(request.forwardURI.indexOf("admin") != -1 ||
request.forwardURI.indexOf("monitoring") != -1) {
response.sendError 404
return false
}
}
}
}
但是,這並不工作,作爲「監視」犯規打這個過濾器的請求。我甚至不希望用戶知道這樣的URL存在,所以我想檢查過濾器,如果「監測」是URL,我顯示404錯誤頁面。這也是爲什麼我不想用Spring安全保護這個URL的原因,因爲它會顯示「訪問被拒絕」頁面。
基本上我希望URL存在,但它們應該對用戶不可見。我希望訪問權限僅針對這些特殊網址的某些IP地址開放。
另一個說明,是否有可能編寫一個grails過濾器,在彈簧安全過濾器被擊中之前「起作用」?我希望能夠在將請求轉發到安全性之前進行一些篩選。編寫像上面的grails過濾器不會有幫助。如果我訪問一個受保護的資源並且這個過濾器沒有被調用,Spring安全過濾器首先被命中。
感謝
Thanks Burt!我會去「真正的」過濾器解決方案。 – batmannavneet 2010-06-02 19:54:01
現在看來您應該看到: http://burtbeckwith.github.com/grails-spring-security-core/docs/manual/guide/18%20IP%20Address%20Restrictions.html – evernat 2010-10-07 20:49:17