我想仅允许我的Web应用程序中的某些资源访问已登录的用户。我实现了身份验证而不使用任何j_security_check,因为我发现它非常严格且不透明。我想知道是否有任何干净的方法来限制对Web资源的访问,而不依赖于web.xml(security-constraint和web-resource-collection元素)。
此外,我不想使用任何膨胀的框架,如Spring等。
答案 0 :(得分:1)
使用web.xml控制的安全模型是控制授权的主要方式。我认为你有重新发明轮子的危险。标准设施非常强大,我同意有一个学习曲线,但these等资源有帮助。
对于动态资源,您可以自由地实施自己的授权模型,对于人们所做的复杂授权,this article可能有所帮助。
答案 1 :(得分:1)
您可以定义Filter
,将其映射到/*
并让它处理受限制的资源。在您自己的配置文件中列出它们,并在访问其中一个资源时检查用户是否已记录。如果不是 - 重定向到登录页面;如果是 - 继续(chain.doFilter(..)
)