簡體   English   中英

如何限制對安全頁面的直接訪問?

[英]How to restrict direct access to secure pages?

如何在Java Web應用程序中限制非管理員角色對安全頁面的直接訪問? 例如,我的應用程序中有350-500個URL,我想隱藏20-30個URL,僅允許以管理員角色訪問它們。 解決此問題的最佳方法是什么? 這種情況下的最佳做法是什么?

可能我需要按單個開始URI分組必要的URL? 還是以某種方式使用web.xml屬性? 還是在會話中使用登錄用戶的保存角色並使用servlet過濾器就足夠了? 在這種情況下,問題是我需要整理出每個安全網址。 但是將來可能會有很多...

我認為所有人都面臨這個問題。 請給我這種情況的標准和簡單的解決方案! 提前致謝!

如果有任何建議和提示,我將不勝感激!

您可以嘗試以下選項

是的,您可以按單個開始URI分組必要的URL,如上所述,可以通過過濾器對其進行過濾。


值得閱讀《 Java EE 6教程-安全性》 ,探討安全性概念和示例。

您可以在這里看看。.http://viralpatel.net/blogs/tutorial-java-servlet-filter-example-using-eclipse-apache-tomcat/

您需要以某種方式將它們分組在特定的文件夾中。 比您應該在鏈接中創建一個過濾器。.過濾器將獲得/ admin /模式中的任何內容(假設您的頁面在那里)

在過濾器內部,您只需要添加條件即可。

If(!admin) {
    /Redirect to anywhere you want
}

您可以使用諸如Spring安全性之類的更為復雜的東西,該東西將具有內部邏輯,您只需要設置角色即可。我認為這將是更好的解決方案,但如果您不熟悉Spring,則將花費更多時間。

希望能有所幫助

對於一個非常簡單的應用程序來說,它肯定會過時,但是如果已經准備好使用SpringFramework,則可以看看Spring Security。 它涉及身份驗證,具有許多可能性,並且可以具有非常簡單或非常復雜的授權規則。

Apache Shiro也是一個更簡單(但功能不那么強大)的替代方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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