✔ 인증(Authentication)과 인가(Authorization)
- 인증(Authentication): 유효한 사용자인가? 사용자의 신원을 확인하는 과정
- 인가(Authorization): 유저가 올바른 접근 권한을 부여 받았는가?
✔ Spring Security 기본 설정
- 모든 것은 인증 받아야 한다
(원치 않으면 필터를 커스터마이즈 해야함)
- 폼 인증이 가능하다
- 기본 인증이 가능하다
- CSRF(Cross-Site Request Forgery, 사이트 간 요청 위조) 보호가 가능하다
▶ protection을 통해 GET요청을 제외한 상태를 변화시킬 수 있는 POST, PUT, DELETE 요청으로부터 보호하는 것
- CORS(Cross-Origin Resource Sharing, 교차 출처 리소스 공유) 요청은 거절된다
- X-Frame-Options은 0으로 세팅된다
- 기타
✔ build.gradle / application.properties
◼ dependencies 추가
📝 build.gradles
implementation 'org.springframework.boot:spring-boot-starter-security'
- 위와 같이 의존성을 추가하면 별도의 코드를 작성하지 않아도
spring security가 적용된다
- 기본 사용자 이름은
user이고, 프로그램을 실행하면 생성되는 비밀번호를 사용하여 로그인하면 된다
- 아이디와 비밀번호를 정하고 싶으면
application.properties 파일에 작성해준다
📝 application.properties
spring.security.user.name = "사용자이름"
spring.security.user.password = "비밀번호"