보안 프레임 워크 :
프로젝트의 봄 보안 + 시로 + OAuth2를하는
GitHub의 주소 :
https://github.com/ZiCheng-Web/springboot-security
자바 개발 영역에 대한 일반적인 보안 프레임 워크에서 시로 봄 보안이있다.
시로 인증, 권한 부여, 제공하는 경량 보안 관리 프레임 워크
세션 관리, 암호 관리, 캐시 관리 및 기타 기능.
봄 보안 상대적으로 복잡한 보안 관리 프레임 워크, 시로보다 더 강력하고, 더 세분화 된 액세스 제어, OAuth를 친절과에서 봄 보안 때문에 지원
봄 가족, 그것은 수와 Spring 프레임 원활한 통합, 특히 봄 제공하는 자동화 솔루션으로 부팅, 봄 보안을 더 편리하게 사용할 수 있습니다.
스프링 시큐리티는 두 가지 중요한 개념이 있습니다.
그들은 인증 (인증) 및 권한 부여 (권한 부여)입니다.
인증 : 사용자의 로그인 여부가 확인 및 사용자 제어 할 수 있습니다.
승인 : 기능적인 능력 사용자의 식별이 있고, 제어 사용자 권한을 실시하고 있습니다.
Springboot + SpringSecurity 프로젝트 만들기
pom.xml 파일을
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zicheng</groupId>
<artifactId>springsecurity01</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>springsecurity01</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--导入SpringSecurity依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!--导入web依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.zicheng.SpringSecurity01Application</mainClass>
</configuration>
</plugin>
</plugins>
</build>
</project>
구성 시작 클래스
@SpringBootApplication
public class SpringSecurity01Application {
public static void main(String[] args) {
SpringApplication.run(SpringSecurity01Application.class);
}
}
HelloController는 간단한 테스트를 작성
@RestController
public class HelloController {
//简单测试一下
@GetMapping("/ hello")
public String hello(){
return "hello";
}
}
http://127.0.0.1:8080/ 방문 프로젝트를 시작
사용자에 대한 기본 계정, 암호가 로그 콘솔에서 찾을 수 있습니다.
application.yml 사용자 이름 암호 구성
사용자 이름 : 관리자
암호 : 123456
역할 : 관리자에게
spring:
security:
user:
name: admin
password: 123456
roles: admin
프로젝트를 시작, 착륙 관리자 및 123456 사용자 이름과 암호를 구성하는 데 사용됩니다.