我遇到了安全问题。我有一个菜单,允许或禁止用户转到某个页面。很简单,如果不允许用户访问页面,则链接到它的菜单中会隐藏它。 但是,用户还可以在浏览器中输入直接URL,并且可以到达页面。 例如,我有CardPage,每个链接我可以使用
到达它setResponsePage(new CardPage());
或
setResponsePage(CardPage.class);
但我仍然可以访问此页面输入此类网址:
http://127.0.0.1:8080/my-application-war/?wicket:bookmarkablePage=:com.my.application.CardPage
有没有办法禁止用户按URL访问此页面? 如果您有需要,我可以为您提供有关该问题的其他信息。
更新
必须手动执行,检查是否允许查看每个页面,并重定向到NotAllowedPage。
答案 0 :(得分:6)
有几种方法可以做到这一点,比如使用Spring Security或Apache Shiro。但是如果你不需要任何花哨的东西,我会选择Wicket本身提供的功能。请阅读Wicket指南中的Security with Wicket(这是一个卓越的参考资料)。