86 lines
3.2 KiB
Markdown
86 lines
3.2 KiB
Markdown
스프링부트의 Security에 관한 책의 목차를 작성해 드리겠습니다. 이 목차는 초보자부터 중급 개발자까지 이해할 수 있도록 기본 개념부터 실무 활용까지 다루며, 실습 예제와 함께 체계적으로 구성했습니다. 아래는 제안하는 목차입니다:
|
|
|
|
---
|
|
|
|
### 목차
|
|
|
|
#### 1장. 스프링 시큐리티 소개
|
|
- 1.1 스프링 시큐리티란?
|
|
- 1.2 스프링부트와 시큐리티의 통합
|
|
- 1.3 보안의 중요성과 기본 개념
|
|
- 1.4 이 책의 목표와 구성
|
|
|
|
#### 2장. 개발 환경 설정
|
|
- 2.1 스프링부트 프로젝트 생성
|
|
- 2.2 스프링 시큐리티 의존성 추가
|
|
- 2.3 기본 설정 확인 및 테스트
|
|
- 2.4 개발 도구와 환경 준비
|
|
|
|
#### 3장. 스프링 시큐리티 기본 동작 이해
|
|
- 3.1 인증(Authentication)과 인가(Authorization)
|
|
- 3.2 기본 인증 메커니즘
|
|
- 3.3 Security Filter Chain의 구조
|
|
- 3.4 기본 로그인 페이지와 동작 원리
|
|
|
|
#### 4장. 사용자 인증 구현
|
|
- 4.1 In-Memory 인증 설정
|
|
- 4.2 데이터베이스 연동을 통한 사용자 인증
|
|
- 4.3 커스텀 UserDetailsService 구현
|
|
- 4.4 비밀번호 암호화와 보안
|
|
|
|
#### 5장. 인가와 권한 관리
|
|
- 5.1 역할(Role)과 권한(Authority)의 차이
|
|
- 5.2 URL 기반 접근 제어
|
|
- 5.3 메서드 수준 보안 설정
|
|
- 5.4 @PreAuthorize와 @Secured 활용
|
|
|
|
#### 6장. 로그인/로그아웃 커스터마이징
|
|
- 6.1 커스텀 로그인 페이지 제작
|
|
- 6.2 로그인 성공/실패 처리
|
|
- 6.3 로그아웃 기능 구현
|
|
- 6.4 세션 관리와 타임아웃 설정
|
|
|
|
#### 7장. OAuth2와 소셜 로그인
|
|
- 7.1 OAuth2 기본 개념
|
|
- 7.2 스프링 시큐리티와 OAuth2 통합
|
|
- 7.3 구글, 깃허브 등 소셜 로그인 구현
|
|
- 7.4 커스텀 OAuth2 클라이언트 설정
|
|
|
|
#### 8장. JWT와 토큰 기반 인증
|
|
- 8.1 JWT(Json Web Token) 개요
|
|
- 8.2 스프링 시큐리티와 JWT 연동
|
|
- 8.3 토큰 발급 및 검증 구현
|
|
- 8.4 stateless 인증 설계
|
|
|
|
#### 9장. 보안 강화 기법
|
|
- 9.1 CSRF(Cross-Site Request Forgery) 방어
|
|
- 9.2 XSS(Cross-Site Scripting)와 콘텐츠 보안 정책
|
|
- 9.3 HTTPS 설정과 SSL/TLS 적용
|
|
- 9.4 보안 헤더 추가
|
|
|
|
#### 10장. 실무에서의 스프링 시큐리티
|
|
- 10.1 REST API 보안 설계
|
|
- 10.2 프론트엔드와 백엔드 통합
|
|
- 10.3 에러 처리와 예외 관리
|
|
- 10.4 배포 시 보안 점검 항목
|
|
|
|
#### 11장. 테스트와 디버깅
|
|
- 11.1 스프링 시큐리티 테스트 환경 구축
|
|
- 11.2 MockMvc를 활용한 보안 테스트
|
|
- 11.3 일반적인 문제 해결과 디버깅 팁
|
|
|
|
#### 12장. 프로젝트 실습
|
|
- 12.1 간단한 웹 애플리케이션 보안 구현
|
|
- 12.2 JWT 기반 REST API 구축
|
|
- 12.3 소셜 로그인 통합 프로젝트
|
|
- 12.4 종합 예제: 회원 관리 시스템
|
|
|
|
#### 부록
|
|
- A. 스프링 시큐리티 설정 참고 자료
|
|
- B. 자주 사용하는 보안 관련 라이브러리
|
|
- C. 용어 정리
|
|
- D. 추가 학습 리소스
|
|
|
|
---
|
|
|
|
이 목차는 스프링 시큐리티의 기초부터 실무 적용까지 폭넓게 다루며, 독자가 단계적으로 학습하고 실습할 수 있도록 설계되었습니다. 필요에 따라 특정 주제(예: 클라우드 환경에서의 보안, 마이크로서비스 보안)를 추가하거나 세부 항목을 조정할 수 있습니다. 의견이 있으면 말씀해 주세요! |