[英]How to deny direct url access to files on Jetty
我在Jetty上運行webapp。 我已將“ dirAllowed”設置為“ false”,以禁用通過webAppContext.setInitParameter(“ org.eclipse.jetty.servlet.Default.dirAllowed”,“ false”)在定義的上下文路徑上進行目錄瀏覽。
但是,用戶仍然可以通過url(例如http://somehost.yahoo.com:8081/abc.xml )訪問其他文件(不在上下文路徑中),並且abc.xml位於Jetty服務器的根目錄下。
有沒有一種方法可以阻止/拒絕直接訪問位於Jetty上的文件的URL? 謝謝!
並非沒有在Web應用程序中添加某些功能,而是沒有。 Java Webapp本質上是從上下文根(以下示例中的myWebApp)開始的標准化目錄結構。
myWebApp/
index.jsp
styles/
mywebapp.css
images/
myimage.png
WEB-INF/
web.xml
lib/
MyLib.jar
classes/
MyPackage/
MyServlet.class
WEB-INF之上的任何內容都可以直接使用,WEB-INF之下的任何內容都不能直接使用。 您可以使用Servlet過濾器( http://www.oracle.com/technetwork/java/filters-137243.html )制定一些授權方案,並限制對WEB-INF之上內容的訪問。 另外,如果您需要認證/授權,請查看Http授權以及如何在Jetty中實現它( http://www.eclipse.org/jetty/documentation/current/configuring-security-authentication.html )。 一種或另一種方式,您將需要進行某種編碼或配置,以限制對Java Webapp中WEB-INF上方內容的訪問。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.