충분히 쌓여가는
스프링 시큐리티 spring security 본문
인증 authentication
사용자의 신원을 입증하는 과정
사용자가 사이트에 로그인을 할 때 누구인지 확인하는 과정
인가 authorization
사이트의 특정 부분에 접근할 수 있는지 권한을 확인
관리자는 관리자 페이지에 들어갈 수 있지만 일반 사용자는 관리자 페이지에 들어갈 수 없다
스프링 시큐리티
스프링 기반 애플리케이션의 보안을 담당하는 스프링 하위 프레임워크
인증가 인가 관련 코드를 아무런 도구의 도움 없이 작성하려면 많은 시간이 들지만, 스프링 시큐리티를 사용하면 쉽게 처리 가능
CSRF 공격, 세션 고정 공격을 방어해주고, 요청 헤더도 보안 처리를 해주므로 개발자가 보안 관련 개발을 해야 하는 부담을 줄여줌
UsernamePasswordAuthenticationfilter
아이디와 패스워드가 넘어오면 인증 요청을 위임하는 인증 관리자 역할
FilterSecurityInterceptor
권한 부여 처리를 위임해 접근 제어 결정을 쉽게 하는 접근 결정 관리자 역할
의존성 추가
dependencies {
// 스프링 시큐리티를 사용하기 위한 스타터
implementation 'org.springframework.boot:spring-boot-starter-security'
// 타임리프에서 스프링 시큐리티를 사용하기 위한 의존성 추가
implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6'
// 스프링 시큐리티를 테스트하기 위한 의존성 추가
testImplementation 'org.springframework.security:spring-security-test'
}
'Spring > Spring Boot' 카테고리의 다른 글
thymeleaf (0) | 2023.12.22 |
---|---|
@RestController, @PostMapping, @RequestBody, ResponseEntity.status() (0) | 2023.12.21 |
@RequiredArgsConstructor, @Service (0) | 2023.12.21 |
REST API (0) | 2023.12.21 |
@Entity, @NoArgsConstructor, @Id, @GeneratedValue (0) | 2023.12.21 |