创建应用程序并使用Spring Security LDAP 模块保护它的过程
你将建造什么
您将构建一个简单的 Web 应用程序,该应用程序由 Spring Security 的嵌入式基于 Java 的 LDAP 服务器保护。您将使用包含一组用户的数据文件加载 LDAP 服务器。
你需要什么
约15分钟
最喜欢的文本编辑器或 IDE
JDK 1.8或更高版本
Gradle 4+或Maven 3.2+
您还可以将代码直接导入 IDE:弹簧工具套件 (STS)IntelliJ IDEA
如何完成本指南
像大多数 Spring入门指南一样,您可以从头开始并完成每个步骤,也可以绕过您已经熟悉的基本设置步骤。无论哪种方式,您最终都会得到工作代码。
要从头开始,请继续从 Spring Initializr 开始。
要跳过基础知识,请执行以下操作:
下载并解压本指南的源代码库,或使用Git克隆它:git clone https://github.com/spring-guides/gs-authenticating-ldap.git
光盘进入gs-authenticating-ldap/initial
继续创建一个简单的 Web 控制器。
完成后,您可以对照中的代码检查结果
gs-authenticating-ldap/complete。
从 Spring Initializr 开始
因为本指南的重点是保护不安全的 Web 应用程序,您将首先构建一个不安全的 Web 应用程序,然后在本指南的后面,为 Spring Security 和 LDAP 功能添加更多依赖项。
您可以使用这个预先初始化的项目并单击 Generate 下载 ZIP 文件。此项目配置为适合本教程中的示例。
手动初始化项目:
导航到https://start.spring.io。该服务提取应用程序所需的所有依赖项,并为您完成大部分设置。
选择 Gradle 或 Maven 以及您要使用的语言。本指南假定您选择了 Java。
单击Dependencies并选择Spring Web。
单击生成。
下载生成的 ZIP 文件,该文件是根据您的选择配置的 Web 应用程序的存档。
如果您的 IDE 具有 Spring Initializr 集成,您可以从您的 IDE 完成此过程。
你也可以从 Github 上 fork 项目并在你的 IDE 或其他编辑器中打开它。
创建一个简单的 Web 控制器
在 Spring 中,REST 端点是 Spring MVC 控制器。以下 Spring MVC 控制器(来自)通过返回简单消息来
src/main/java/com/example/authenticatingldap/HomeController.java处理请求:GET /
package com.example.authenticatingldap;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HomeController { @GetMapping("/") public String index() { return "Welcome to the home page!"; }}复制
整个类都被标记了,@RestController以便 Spring MVC 可以自动检测控制器(通过使用其内置的扫描功能)并自动配置必要的 Web 路由。
@RestController还告诉 Spring MVC 将文本直接写入 HTTP 响应正文,因为没有视图。相反,当您访问该页面时,您会在浏览器中收到一条简单的消息(因为本指南的重点是使用 LDAP 保护该页面)。