인증과 권한은 spring security의 목표이다.
인증(Authentication)
- 참이라는 근거가 있는 무언가를 확인하거나 확증하는 행위 / 사람들의 신분을 구성
- 해당 사용자가 본인이 맞는지를 확인하는 절차
- 어플리케이션의 작업을 수행할 수 있는 주체(사용자)라고 주장할 수 있는 것
인가(Authorization)
- 인정하여 허가한다
- 인증된 사용자가 요청한 자원에 접근가능한지를 결정하는 절차
- 인증된 주체가 어플리케이션의 동작을 수행할 수 있도록 허락되어있는지를 결정하는 것
* Spring Security는 기본적으로 인증절차를 거친 후에 인가절차를 진행하게 되며, 인가 과정에서 해당 리소스에 대한 접근권한이 있는지 확인하게 된다.
spring security에서는 이러한 인증과 인가를 위해 principal(접근주체, 보호받는 Resource에 접근하는 대상)을 아이디로 , credential(비밀번호,Resource에 접근하는 대상의 비밀번호)을 비밀번호로 사용하는 credental기반의 인증방식을 사용한다. => 이건 무슨소린지 모르겠다.
Spring Security
스프링 기반의 애플리케이션의 보안을 담당하는 스프링 하위 프레임워크이다.
스프링 시큐리티는 인증과 권한에 대한 부분을 필터(Filter)의 흐름에 따라 처리하고 있다.
Spring Security모듈
1) SecuritycontextHolder
2) SecurityContext
3) Authentication
4) UsernamePasswordAuthenticationToken
5) AuthenticationProvider
.. 나중에.. https://mangkyu.tistory.com/76
spring security 파헤치기 (구조, 인증과정, 설정, 핸들러 및 암호화 예제, @Secured, @AuthenticationPrincipal, taglib)
https://sjh836.tistory.com/165
[SpringBoot] Spring Security 처리 과정 및 구현 예제
https://mangkyu.tistory.com/77
[SpringBoot] SpringBoot로 SpringSecurity 기반의 JWT 토큰 구현하기
https://mangkyu.tistory.com/57
[SpringBoot] Spring Security 처리 과정 및 구현 예제
https://mangkyu.tistory.com/77
[Server] 토큰 기반 인증 VS 서버(세션) 기반 인증
https://mangkyu.tistory.com/55
[Server] JWT(Json Web Token)란?
https://mangkyu.tistory.com/56
[참조]
https://mangkyu.tistory.com/76
https://okky.kr/article/382738
'차근차근 > Spring' 카테고리의 다른 글
컨트롤러에서 알럿 | controller message alert (1) (0) | 2022.04.27 |
---|---|
web.xml (0) | 2022.02.03 |
필터, 인터셉터, AOP (0) | 2022.01.11 |
스프링 어노테이션.. 맨날 .. (0) | 2022.01.11 |
WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/] in DispatcherServlet with name 'appServlet' (0) | 2022.01.10 |