Spring安全示例

Dra*_*ian 5 java spring hibernate spring-mvc spring-security

我正在学习Spring并尝试实现Springs Security.我无法理解它是如何工作的.我阅读了从中了解以下内容的教程:

  1. 我们必须配置web.xml来委托代理和模式
  2. 我们需要向dispatcher-servlet.xml添加拦截

当提出请求时它会触发拦截但在此之后我无法理解它是如何工作的.如果有人能提供一系列要遵循的步骤,将会很有帮助.我正在使用Hibernate和Spring(都带有注释),我想使用Hibernate对用户进行身份验证.

Mar*_*kus 11

详细的文章可以在这里找到:代码项目
或用MVC和Spring安全性的教程在这里.

我试着稍微说明一下这个过程: 在此输入图像描述

  1. 用户向服务器发送HTTP请求
  2. 服务器根据web.xml处理请求
  3. web.xml包含一个过滤器(AKA拦截器),并通过此过滤器传递请求.
  4. 由于用户未知/未经过身份验证,因此Spring Security会尽力获取更多详细信息.
    它取决于配置
    • 发送HTTP标头,以便在浏览器(客户端)弹出登录弹出窗口.
    • 重定向到您可以输入用户名和密码的表单.
    • 在服务器和浏览器之间进行了很多隐藏的交互,以保证"单点登录"(SSO)
  5. 除SSO外,用户输入她/他/她的凭据并创建其他请求.
  6. Spring Security实现登录尝试并根据a对用户进行身份验证
    • 用户和密码的文件
    • spring配置文件中的内置XML结构
    • 一个数据库
    • 一个LDAP
  7. 授予访问权限后,它会分配必要的角色......
  8. ...并重定向到硬编码的"主页".(Spring Security让你调整这个行为.)
  9. 在您的应用程序中,您可以检查某些操作的授权
  10. .....
  11. 用户单击"注销"或会话过期.随着下一个请求,该过程再次开始.

注释

我在这里找到了一个教程(Link).

我理解/假设以下事实:

  • 仍必须在web.xml中定义过滤器.
  • 您可以使用注释来添加类/方法
    • @Controller(API)
    • @Secured(API)
    • @RequestMapping(API)

我承认我只给了你粗略的概述,因为你的问题不是那么具体.

请让我知道您想要详细了解的内容(重新识别用户,针对不同资源进行身份验证,执行SSO,在您的网页上创建安全区域,......)