簡體   English   中英

如何拒絕直接訪問Jetty上的文件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM