๐ฑ ์์ธ
AuthenticationException
์ธ์ฆ ์์ธ ์ฒ๋ฆฌ
- AuthenticationEntryPoint ํธ์ถ
- ๋ก๊ทธ์ธ ํ์ด์ง ์ด๋, 401 ์ค๋ฅ ์ฝ๋ ์ ๋ฌ ๋ฑ
- ์ธ์ฆ ์์ธ๊ฐ ๋ฐ์ํ๊ธฐ ์ ์ ์์ฒญ ์ ๋ณด๋ฅผ ์ ์ฅ
- RequestCache : ์ฌ์ฉ์ ์ด์ ์์ฒญ ์ ๋ณด๋ฅผ ์ธ์ ์ ์ ์ฅํ๊ณ ์ด๋ฅผ ๊บผ๋ด์ค๋ ์บ์ ๋ฉ์ปค๋์ฆ
- SavedRequest : ์ฌ์ฉ์๊ฐ ์์ฒญํ๋ request ํ๋ผ๋ฏธํฐ ๊ฐ๋ค, ๊ทธ ๋น์ ํค๋ ๊ฐ๋ค ๋ฑ์ด ์ ์ฅ
AccessDeniedExeption
์ธ๊ฐ ์์ธ ์ฒ๋ฆฌ
- AccessDeniedHandler์์ ์์ธ ์ฒ๋ฆฌํ๋๋ก ์ ๊ณต
๐ ์ด๋ฐ ์์ธ๋ FilterSecurityInterceptor์์ ์ฒ๋ฆฌํ๊ณ ์ด ํํฐ ์์ ์๋ ํํฐ๊ฐ ExceptionTranslationFilter์ ๊ทธ๋์ ์์ธ๊ฐ ๋ฐ์ํ๋ฉด FilterSecurityinterceptor๋ฅผ ์์๋ฐ๊ณ ์๋ ExeptionTranslationFilter์์ ๋ฐ์ํ๊ฒ ๋จ
์์ธ์ฒ๋ฆฌ API
protected void configure(HttpSecurity http) throws Exception {
http.exceptionHandling()
.authenticationEntryPoint(authenticationEntryPoint()) // ์ธ์ฆ์คํจ ์ ์ฒ๋ฆฌ
.accessDeniedHandler(accessDeniedHandler()) // ์ธ์ฆ์คํจ ์ ์ฒ๋ฆฌ
}
ํด๋น ๊ธ์ ์ธํ๋ฐ์ ์คํ๋ง์ํ๋ฆฌํฐ-Spring Boot ๊ธฐ๋ฐ์ผ๋ก ๊ฐ๋ฐํ๋ Spring Security๋ฅผ ๋ณด๊ณ ์์ฑํ ๊ธ์ ๋๋ค.