我有在Internet上運行的應用程序,它也包含一些管理模塊。我不想讓用戶在Internet上訪問我的管理模塊。我希望來自Intranet的請求可以訪問管理模塊。有沒有什麼辦法可以控制這個,而不需要開發一個提供管理組件的新應用程序驗證請求源是否來自Internet或Intranet
1
A
回答
1
如果您正在使用servlet,則可以添加一個篩選器並分析客戶端IP地址(請參閱this question)。
請注意,無法保證您會以任何方式確定正確的地址。
更好的方法是將此方法與某種認證(用戶/密碼,客戶端證書等)結合使用。
如果可能,單獨的應用程序也會更好。通過這種方式,您可以簡化部署過程(應用程序運行在不同的端口等),並使其更容易擴展,因爲您的管理和常規應用程序負載,安全性和可用性等極有可能具有不同的要求。
0
我不知道這是否會在你的情況下工作,但如果管理模塊 在特定端口接受連接,你可以嘗試關閉這個端口 你的路由器/網關(或任何用於連接內部互聯網設置爲 ),因此不允許外部任何人訪問該模塊。
0
從便攜式Java角度來完成此任務的最簡單方法是創建一個篩選器,檢查IP地址和請求的URL。如果url是管理模塊的一部分,並且IP是內部的,那麼您繼續鏈接。否則,你重定向或中止。
也就是說,Weblogic可能還有其他技術來完成這個任務。但是,看到您正在Weblogic服務器上運行此操作,我將假定這是一個企業級應用程序。在這種情況下,您可能需要考慮將其作爲一個單獨的模塊出於安全目的和負載均衡。隨着越來越多的用戶訪問您的應用程序,您需要有更多的服務器來處理負載。但是,您不可能需要相同的管理模塊容量。因此,將管理模塊作爲自己的應用程序託管將允許您將其託管在一個內部應用程序服務器上,而應用程序本身則分佈在較大的服務器場中。
最後,請記住,欺騙IP地址是相當容易的,所以除非您有其他形式的身份驗證(例如:username/pwd,SSL證書交換等),否則您會將應用程序打開以顯示某些重要信息安全漏洞。
只是在做出架構決策時需要考慮的事情。
0
什麼是基礎網絡服務器?如果apache,使用.htaccess規則。
相關問題
- 1. 請求是否來自iframe?
- 2. ASP.MVC Intranet和Internet身份驗證
- 3. 驗證javascript請求來自網站
- 4. 在JAVA中查找IP的來源(Internet或Intranet)?
- 5. 驗證請求是否爲GET/POST
- 6. 驗證POST請求是否成功或未使用硒python
- 7. PHP在發送請求之前是否驗證WSDL請求?
- 8. 如何驗證請求是否來自您網站上的腳本?
- 9. 檢測請求是否來自移動
- 10. Intranet與Internet應用程序中的校驗和驗證
- 11. 如何驗證POST是否來自正確的源?
- 12. 檢查請求是否來自iOS上的webview或瀏覽器?
- 13. JSP/Servlet如何識別HTTP請求是否來自ajax請求
- 14. 資源請求驗證,服務或業務層的責任?
- 15. 使用設備來驗證HTTP請求
- 16. 從資源控制器調用自定義請求驗證
- 17. 如何驗證oauth簽名或請求?
- 18. Asp.mvc請求驗證
- 19. Laravel請求驗證
- 20. 驗證請求sql
- 21. 驗證空請求
- 22. GET請求來源
- 23. 快速自動驗證Swagger API請求?
- 24. Laravel的自定義請求驗證器
- 25. 在處理請求中驗證或跳轉到驗證器
- 26. 緩存控制:必須重新驗證是否需要驗證所有請求,或只是過時的?
- 27. 爲來自web.config文件的http請求配置身份驗證
- 28. 訪問來自驗證器內部的請求參數
- 29. 如何驗證請求來自PHP中的某個網關?
- 30. 如何驗證來自某個域的API請求?
你可能想看看:http://stackoverflow.com/questions/9092376/identify-if-request-is-coming-from-local-network-intranet – Samba
@Samba - 有可能很好是一個weblogic特定的解決方案。但無論哪種方式,C#/ ASP.NET解決方案都無濟於事。 –