Spring 实战(第四版)
Search…
Spring 实战(第四版)
Spring 实战(第 4 版)
第一部分 Spring 的核心
第 1 章 Spring 之旅
第 2 章 装配 Bean
第 3 章 高级装配
第 4 章 面向切面的 Spring
第二部分 Web 中的 Spring
第 5 章 构建 Spring Web 应用程序
第 6 章 渲染 Web 视图
第 7 章 Spring MVC 的高级技术
第 8 章 使用 Spring Web Flow
第 9 章 保护 Web 应用
9.1 Spring Security 简介
9.2 选择查询用户详细信息的服务
9.2.1 使用基于内存的用户存储
9.2.2 基于数据库表进行认证
9.2.3 基于 LDAP 进行认证
9.2.4 配置自定义的用户服务
9.3 拦截请求
9.4 认证用户
9.5 保护视图
9.6 小结
第三部分 后端中的 Spring
第 10 章 通过 Spring 和 JDBC 征服数据库
第 11 章 使用对象-关系映射持久化数据
第 12 章 使用 NoSQL 数据库
第 13 章 缓存数据
第 14 章 保护方法应用
第四部分 Spring 集成
第 15 章 使用远程服务
第 16 章 使用 Spring MVC 创建 REST API
第 17 章 Spring 消息
第 18 章 使用 WebSocket 和 STOMP 实现消息功能
第 19 章 使用 Spring 发送 Email
第 20 章 使用 JMX 管理 SpringBean
第 21 章 借助 Spring Boot 简化 Spring 开发
Powered By
GitBook
9.2 选择查询用户详细信息的服务
假如你计划去一个独家经营的饭店享受一顿晚餐,当然,你会提前几周预订,保证到时候能有一个位置。当到达饭店的时候,你会告诉服务员你的名字。但令人遗憾的是,里面并没有你的预订记录。美好的夜晚眼看就要泡汤了。但是没有人会如此轻易地放弃,你会要求服务员再次确认预订名单。此时,事情变得有些怪异了。
服务员说没有预订名单。你的名字不在名单上 —— 名单上没有任何人 —— 因为根本就不存在这么个名单。这就解释了为什么位置是空的,但我们却进不去。几周后,我们也就明白这家饭店为何最终会关门大吉,被一家墨西哥美食店所代替。
这也是此时我们应用程序的现状。我们没有办法进入应用,即便用户认为他们应该能够登录进去,但实际上却没有允许他们访问应用的数据记录。因为缺少用户存储,现在的应用程序太封闭了,变得不可用。
我们所需要的是用户存储,也就是用户名、密码以及其他信息存储的地方,在进行认证决策的时候,会对其进行检索。
好消息是,Spring Security 非常灵活,能够基于各种数据存储来认证用 户。它内置了多种常见的用户存储场景,如内存、关系型数据库以及 LDAP。但我们也可以编写并插入自定义的用户存储实现。
借助 Spring Security 的 Java 配置,我们能够很容易地配置一个或多个数据存储方案。那我们就从最简单的开始:在内存中维护用户存储。
Previous
9.1.3 编写简单的安全性配置
Next
9.2.1 使用基于内存的用户存储
Last modified
2yr ago
Copy link