๐ Spring Security์ ์ธ์ฆ ์ฒ๋ฆฌ ํ๋ฆ
๐ Authentication(์ธ์ฆ)
๐ Authentication ์ธํฐํ์ด์ค
๐ฅ Spring Security์์ Authentication์ ์ธํฐํ์ด์ค๋ก ์กด์ฌํ๋ค.
๐ฅ ์ฌ์ฉ์๊ฐ ์ธ์ฆ์ ์ฑ๊ณต์ ์ผ๋ก ์ํํ๋ฉด ์ฌ์ฉ์์ ์ธ์ฆ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋๋ค.
๐ฅ SecurityContextHolder๋ SecurityContext๋ฅผ ํธ์ถํ๊ณ SecurityContext๋ Authentication ๊ฐ์ฒด๋ฅผ ๊ฐ๊ณ ์๋ค.
๐ฅ ์ผ๋ฐ์ ์ผ๋ก ๋ง์ด ์ฌ์ฉํ๋ ๊ตฌํ์ฒด๋ UsernamePasswordAuthenticationToken ์ด๋ค.
โก๏ธ ์ฌ์ฉ์์ ๊ณ ์ ์๋ณ์(Username)๊ณผ ์ํธ(Password)๋ก ๊ฐ๋จํ๊ฒ Authentication ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๋ค.
๐ Spring Security๋ด์์์ Authentication ์ฃผ์ ๋ชฉ์
- ์ฌ์ฉ์๊ฐ ์ธ์ฆ์ ์ํด ์ ๊ณตํ Credential(์๊ฒฉ์ฆ๋ช )์ ์ ๊ณตํ๊ธฐ ์ํด AuthenticationManager์ ๋ํ ์ ๋ ฅ๊ฐ์ด๋ค.
- ํ์ฌ ์ธ์ฆ๋ ์ฌ์ฉ์๋ฅผ ๋ํ๋ธ๋ค. ํ์ฌ Authenticaion์ SecurityContext์์ ์ป์ ์ ์๋ค.
๐ Authentication ์ ํฌํจ๋ ์ ๋ณด
๐ฐ principal
- ์ฌ์ฉ์๋ฅผ ์๋ณํ๋ค.
- UserDetails ์ธํฐํ์ด์ค ๊ตฌํ์ฒด๋ ์ฌ์ฉ์์ username๊ณผ password๋ก ์ธ์ฆ์ด ์ด๋ฃจ์ด์ง๋ค.
- ๊ตฌํ์ฒด ์์น : org.springframework.security.core.userdetails.User
- ์ง์ UserDetails๋ฅผ ์์๋ฐ์ ๊ตฌํํ ์๋ ์๋ค.
๐ฐ credentials
- ๋๋ถ๋ถ password ์ด๋ค.
- ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ฌ์ฉ์ ์์ฆ ํ์ ์ ์ถ๋์ง ์๋๋ก ์ญ์ ๋๋ค.
๐ฐ authorities
- AuthenticationManager์ ์ํด ๋ถ์ฌ๋ ์ธ๊ฐ์ ๋ํ ์ ๋ณด์ด๋ค.
- ๋ถ์ฌ๋ ๊ถํ์ ๋ํ ์ ๋ณด๋ GrantedAuthority๋ก ์ถ์ํํ๋ค.
- ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ตฌํ์ฒด๋ SimpleGrantedAuthority ์ด๋ค.
๐ Spring Security ์์ Authentication
- Spring Security ๋ ์ข ํฉ์ ์ธ ์ธ์ฆ์ฒ๋ฆฌ๋ฅผ ์ง์ํ๋ค.
- ์ธ์ฆ์ ํน์ ๋ฆฌ์์ค์ ์ ๊ทผํ๋ ค๊ณ ํ๋ ์ฌ์ฉ์๊ฐ ๋๊ตฌ์ธ์ง ํ์ธํ ๋ ์ฌ์ฉํ๋ค.
- ๋ณดํต ์ฌ์ฉ์๊ฐ ์ด๋ฆ๊ณผ ๋น๋ฐ๋ฒํธ๋ฅผ ์ ๋ ฅํ๋ ๊ฒ์ผ๋ก ์ฌ์ฉ์๋ฅผ ์ธ์ฆํ๋ค.
- ํ๋ฒ ์ธ์ฆํ๋ฉด ์ฌ์ฉ์๋ฅผ ์๋ณํ๊ณ ๊ถํ์ ๋ถ์ฌํ ์ ์๋ค. (Authorization, ์ธ๊ฐ)
๐ Password Storage
Spring Security์ PasswordEncoder ์ธํฐํ์ด์ค๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ ํ๊ฒ ์ ์ฅํ ์ ์๋๋ก ๋จ๋ฐฉํฅ ๋ณํ์ ์ํํด์ค๋ค.
- PasswordEncoder ๋ ๋น๋ฐ๋ฒํธ๋ฅผ ๋จ๋ฐํฅ(๋น๋ฐ๋ฒํธ -> ์ํธํ)์ผ๋ก ๋ณํ, ์๋ฐฉํฅ ๋ณํ ๋ชฉ์ x
- ์ธ์ฆ์ ์ฌ์ฉํ credential ์ ๋ณด๋ฅผ ์ ์ฅํ๋ค.
PasswordEncoder ๋ฅผ ์ฌ์ฉํด์ ์ ์ฅํ๋ ๋น๋ฐ๋ฒํธ๋ ์ธ์ฆ ์์ ์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ๋ ๋น๋ฐ๋ฒํธ์ ๋น๊ตํ๋ ์ฉ๋์ด๋ค.
๐ Password Storage History
ํจ์ค์๋๋ฅผ ์ ์ฅํ๋ ํ์ค ๋งค์ปค๋์ฆ์ ๋ณํ
๐ฐ ์ฒ์์๋ ์ผ๋ฐ ํ ์คํธ๋ก ์ํธ๋ฅผ ์ ์ฅํ๋ค.
- ๋น๋ฐ๋ฒํธ๋ฅผ ๋ด๊ณ ์๋ DB์ ์ ๊ทผํ๋ ค๋ฉด credential์ด ํ์ํ๊ธฐ ๋๋ฌธ์ ๋น๋ฐ๋ฒํธ๊ฐ ์์ ํ๋ค๊ณ ์๊ฐํ๋ค.
- ์ ์์ ์ธ SQL Injection ๊ฐ์ ๊ณต๊ฒฉ์ผ๋ก “Data dump”๋ฅผ ์ฝ์ด๊ฐ ์ ์๋ ๋ฐฉ๋ฒ์ด ์กด์ฌํ๋ค.
๐ฐ ์ํธ๋ฅผ ์ ์ฅํ๊ธฐ ์ ์ SHA-256 ๊ฐ์ ๋จ๋ฐฉํฅ ํด์๋ฅผ ์คํํ ํ ์ํธ๋ฅผ ์ ์ฅํ๋ค.
- ์ฌ์ฉ์๊ฐ ์ธ์ฆ์ ์๋ํ ๋ ์ ๋ ฅํ ์ํธ๋ฅผ ํด์ ์ฒ๋ฆฌํ์ฌ ์ ์ฅ๋ ๋น๋ฐ๋ฒํธ์ ์ ๋ ฅํ ๋น๋ฐ๋ฒํธ์ ํด์๊ฐ์ ๋น๊ตํ๋ค.
- ์์คํ ์์ ๋น๋ฐ๋ฒํธ์ ๋จ๋ฐฉํฅ ํด์๋ง ์ ์ฅํ๋ฉด ๋๋ค.
- ์ ์์ ์ธ ๊ณต๊ฒฉ์ผ๋ก ์ ๋ณด๊ฐ ์ ์ถ์ด ๋๋๋ผ๋ ์ค์ ๋น๋ฐ๋ฒํธ๊ฐ ์๋ ๋น๋ฐ๋ฒํธ์ ๋จ๋ฐฉํฅ ํด์๊ฐ๋ง ์ ์ ์๋ค.
- ๋จ๋ฐฉํฅ ํด์๊ฐ๋ง์ผ๋ก ๋น๋ฐ๋ฒํธ๋ฅผ ์ถ์ธกํ๊ธฐ๋ ๋ถ๊ฐ๋ฅ์ ๊ฐ๊น์ ๋ค.
- ํ์ง๋ง ๋ ์ธ๋ณด์ฐ ํ ์ด๋ธ๋ก ์๋ ค์ง ๋ฃฉ์ ํ ์ด๋ธ์ด ๋ง๋ค์ด์ง๋ฉด์ ์์ ํ์ง ์๊ฒ ๋๋ค.
๐ฐ ๋ ์ธ๋ณด์ฐ ํ ์ด๋ธ์ ๋ฌด๋ ฅํํ๊ธฐ ์ํด ์ํฐ๋ ํจ์ค์๋(salted password)๋ฅผ ์ฌ์ฉํ๋ค.
- ๋น๋ฐ๋ฒํธ ํด์ ํจ์ โก๏ธ ๋ชจ๋ ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ๋ก ๋๋ค ๋ฐ์ดํธ(์ํธ)๋ฅผ ๋ง๋ค์๋ค.
- ์ํธ์ ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ๋ก ํด์ ํจ์๋ฅผ ์คํํ๋ฉด ์ ๋ํฌํ ํด์๊ฐ์ ์์ฑํ๋ค.
- ์ํธ๋ ์ ๋ํฌํ๊ธฐ ๋๋ฌธ์ ์ํธ์ ๋น๋ฐ๋ฒํธ ์กฐํฉ์ ๋ ์ธ๋ณด์ฐ ํ ์ด๋ธ์ ๋ฌด๋ ฅํํ ์ ์์๋ค.
- ํ์ง๋ง ๊ธฐ์ ์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ต์ ํ๋์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๋น ์์ญ์ต ๊ฑด์ ๊ณ์ฐํ ์ ์๊ฒ ๋๋ฉฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฝ๊ฒ ํด๋ ํ ์ ์์ด SHA-256๊ฐ์ ํด์๊ฐ ๋ ์ด์ ์์ ํ์ง ์๊ฒ ๋์๋ค.
๐ฐ ํ์ฌ๋ ์ ์ํ ๋จ๋ฐฉํฅ ํจ์(adaptive one-way function)๋ก ๋น๋ฐ๋ฒํธ๋ฅผ ์ ์ฅํ๋ ๊ฒ์ ๊ถ์ฅํ๋ค.
- CPU, ๋ฉ๋ชจ๋ฆฌ ๋ฑ ๋ง์ ๋ฆฌ์์ค๋ฅผ ์๋ชจํด์ ๋น๋ฐ๋ฒํธ๋ฅผ ๊ฒ์ฆ โก๏ธ ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ์ด ํฌ๊ฒ ๋จ์ด์ง ์ ์๋ค.
- ์ ์ํ ๋จ๋ฐฉํฅ ํจ์๋ ํ๋์จ์ด ์ฌ์์ ๋ฐ๋ผ work factor๋ฅผ ๊ตฌ์ฑํ ์ ์๋ค.
- ์ํฌ ํฉํฐ(work factor) : ๊ณต๊ฒฉ์๊ฐ ์ํธ๋ฅผ ๊นจ๋๋ฐ ๋๋ ๋ ธ๋ ฅ, ์์คํ ์์ ๋น๋ฐ๋ฒํธ๋ฅผ ๊ฒ์ฆํ ๋ ์์๋๋ ์๊ฐ๊ณผ ๊ด๋ จ์๋ค.
- ๊ณต๊ฒฉ์๊ฐ ์ฝ๊ฒ ๋น๋ฐ๋ฒํธ๋ฅผ ํด๋ ํ์ง ๋ชปํ๊ฒ ๋ง๋ค์ง๋ง ์์คํ ์์ฒด์ ๋ถ๋ด์ด ๋๋ค.
- Spring Security ๋ work factor ์์์ ์ ์ ๊ณตํ์ง๋ง ์ฑ๋ฅ์ ๋ฐ๋ผ ๊ฐ์์ ์์คํ ์ ๋ง๊ฒ ์ค์ ํ๋๊ฒ ์ข๋ค.
- ์ข ๋ฅ : bcrypt, PBKDF2, scrypt, argon2
- ์ฌ์ฉํ๋ ๋ถ๋ถ์์ ์ฅ๊ธฐ ์๊ฒฉ ์ฆ๋ช (์ฌ์ฉ์ ์ด๋ฆ๋ฐ ์ํธ)์์ ๋จ๊ธฐ ์๊ฒฉ ์ฆ๋ช (์ธ์ , OAuth ํ ํฐ ๋ฑ)์ผ๋ก ๋ฐ๊พธ๋๊ฒ ์ข๋ค. โก๏ธ ๋จ๊ธฐ ์๊ฒฉ ์ฆ๋ช ์ ๋์ผํ ๋ณด์ ์์ค์ ์ ์งํ๋ฉด์๋ ๋น ๋ฅด๊ฒ ๊ฒ์ฆํ ์ ์๋ค.
๐ Servlet Authentication Architecture
๐ Architecture
Servlet authentication์์ ์ฌ์ฉํ๋ Spring Security์ ๊ตฌ์ฑ์์
๐ฐ SecurityContextHolder
Spring Security๊ฐ ์ธ์ฆํ ๋์์ ๋ํ ๋ํ ์ผ์ ์ ์ฅํ๋ ๊ณณ์ด๋ค.
๐ฐ SecurityContext
SecurityContextHolder์์ ๊ฐ์ ธ์์ง๋ค. ํ์ฌ ์ธ์ฆ๋ ์ฌ์ฉ์์ ์ธ์ฆ์ ํฌํจํ๋ค.
๐ฐ Authentication
AuthenticationManager์ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉ๋๋ค.
์ฌ์ฉ์ ์ธ์ฆ์ ์ํด ์ ๊ณตํ credential์ด๋ SecurityContext์ ์๋ ํ์ฌ ์ฌ์ฉ์์ credential์ ์ ๊ณตํ๋ค.
Authentication์ด ๊ฐ์ง๊ณ ์๋ ์ ๋ณด๋ค
- principal : ์ฌ์ฉ์๋ฅผ ์๋ณํ๋ค. username/password๋ก ์ธ์ฆํ ๋ ์ฃผ๋ก UserDetails์ ์ธ์คํด์ค๋ฅผ ์ด์ฉํ๋ค.
- credentials : ์ผ๋ฐ์ ์ผ๋ก password๋ฅผ ์ฌ์ฉํ๋ค. (์ ์ถ๋์ง ์๋๋ก ์ธ์ฆ ํ ๋น์ด๋ค.)
- authorities : ์ฌ์ฉ์์๊ฒ ๋ถ์ฌํ ๊ถํ์ grantedAuthority๋ก ์ถ์ํํ๋ค.
๐ฐ GrantedAuthority
Authentication์์ principal(์ฃผ์ฒด)์๊ฒ ๋ถ์ฌ๋ authority(๊ถํ)์ด๋ค. (์ญํ , ๋ฒ์ ๋ฑ)
Authentication.getAuthorities() ๋ฉ์๋๋ GrantedAuthority ๊ฐ์ฒด๋ค์ Collection์ผ๋ก ๋ฆฌํดํ๋ค.
๊ถํ์ ๋ณดํต ์ญํ (roles)์ด๋ค. (์ : "ROLE_ADMINISTRATOR", "ROLE_HR_SUPERVISOR")
์ด๋ฐ ์ญํ ๋ค์ ๋์ค์ ์น ๊ถํ ๋ถ์ฌ, ๋ฉ์๋ ๊ถํ ๋ถ์ฌ ๋ฐ ๋๋ฉ์ธ ๊ฐ์ฒด ๊ถํ ๋ถ์ฌ๋ฅผ ์ํด ๊ตฌ์ฑ๋๋ค.
username/password ๊ธฐ๋ฐ ์ธ์ฆ์ ์ฌ์ฉํ๋ค๋ฉด UserDetailsService๊ฐ GrantedAuthority๋ฅผ ๋ก๋ํ๋ค.
GrantedAuthority ๊ฐ์ฒด๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒด์ ๊ฑธ์น ๊ถํ์ ์๋ฏธํ๋ค. (ํน์ ๋๋ฉ์ธ์ผ๋ก ํ์ ํ๋ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉํ์ง ์๋๋ค.)
๐ฐ AuthenticationManager
Spring Seuciry์ ํํฐ๊ฐ ์ด๋ป๊ฒ ์ธ์ฆ์ ์ํํ๋์ง์ ๋ํ ๋ฐฉ๋ฒ์ ์ ์ํ๋ API์ด๋ค.
- AuthenticationManager๋ฅผ ํธ์ถํ ๊ฐ์ฒด(Filter)๊ฐ ๋ฆฌํดํ Authentication์ SecurityContextHolder์ ์ค์ ํ๋ค.
- Spring Security์ Filters๋ฅผ ์ฌ์ฉํ์ง ์์ ๊ฒฝ์ฐ AuthenticationManager๋ฅผ ์ฌ์ฉํ์ง ์๊ณ SecurityContextHolder์ ์ง์ ์ค์ ํ๋ฉด ๋๋ค.
- AuthenticationManager์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ๊ตฌํ์ฒด๋ ProviderManager์ด๋ค.
๐ฐ ProviderManager
AuthenticationManager์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๊ตฌํ์ฒด์ด๋ค.
- ProviderManager๋ ๋์์ AuthenticationProvider List์ ์์ํ๋ค.
- ๋ชจ๋ AuthenticationProvider๋ ์ธ์ฆ์ ์ฑ๊ณต or ์คํจ or ๊ฒฐ์ ์ ๋ด๋ฆด ์ ์๋ ์ง๋ฅผ ํ๋จํ๊ณ ๋ค์ด์คํธ๋ฆผ์ ์๋ AuthenticationProvider๊ฐ ๊ฒฐ์ ํ๊ฒ ํ ์ ์๋ค.
- ์ค์ ํ AuthenticationProvider๋ค ์ค ์ด๋ค ๊ฒ๋ ์ธ์ฆํ ์ ์๋ค๋ฉด, ProviderNotFoundException ์ค๋ฅ์ ํจ๊ป ์ธ์ฆ์ด ์คํจํ๋ค.
- ProviderNotFoundException : ProviderManager๊ฐ ์ ๋ฌ๋ Authentication ์ ํ์ ์ง์ํ๋๋ก ๊ตฌ์ฑ๋์ง ์์์์ ๋ํ๋ธ๋ค.
- AuthenticationProvider๋ง๋ค ๊ฐ์ ๋งก์ ์ธ์ฆ์ ์ํํ๋ค.
- ProviderManager์ ์ธ์ฆ์ ์ํํ AuthenticatinoProvider๊ฐ ์์ ๊ฒฝ์ฐ, ๋ถ๋ชจ AuthenticationManager ๊ตฌ์ฑ์ ํ์ฉํ๋ค.
- ๋ถ๋ชจ๋ ์ด๋ค ํ์ ์ AuthenticationManager๋ ๊ฐ๋ฅํ์ง๋ง ์ฃผ๋ก ProviderManager์ ์ธ์คํด์ค์ด๋ค.
- ์ฌ๋ฌ ๊ฐ์ SecurityFilterChain ์ธ์คํด์ค๊ฐ ๊ณตํต์ ์ธ์ฆ(๊ฐ์ ๋ถ๋ชจ AuthenticationManager)์ ๊ฐ์ง์ง๋ง ๋ค๋ฅธ ์ธ์ฆ ๋งค์ปค๋์ฆ(๋ค๋ฅธ ProviderManager ์ธ์คํด์ค)์ผ ๊ฒฝ์ฐ ๊ฐ์ ๋ถ๋ชจ AuthenticationManager๋ฅผ ์ฌ๋ฌ ProviderManager๊ฐ ๊ณต์ ํ ์ ์๋ค.
- ProviderManager๋ ์ธ์ฆ ์ดํ์ ๋ฆฌํด๋ Authentication ๊ฐ์ฒด์ ๋ชจ๋ ๋ฏผ๊ฐํ credential ์ ๋ณด๋ ์ ๊ฑฐํ๋ ค๊ณ ์๋ํ๋ค.
- password์ ๊ฐ์ ์ ๋ณด๊ฐ HttpSession์ ํ์ ์ด์์ผ๋ก ์ค๋ ๋จ์์๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด์์ด๋ค.
- ํ์ง๋ง Authentication์ cache์ ๊ฐ์ฒด(ex. UserDetails)์ ๋ํ ์ฐธ์กฐ๊ฐ ํฌํจ๋์ด ์๋ ๊ฒฝ์ฐ credential ์ ๋ณด๋ฅผ ๋ชจ๋ ์ ๊ฑฐํ๋ฉด ์บ์๋ ๊ฐ์ ๋ํด ๋ ์ด์ ์ธ์ฆํ ์ ์๋ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์๋ค.
- ํด๊ฒฐ์ฑ ์ ์บ์ ๊ตฌํ ๋๋ ๋ฐํ๋ Authentication ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ AuthenticationProvider์์ ๋จผ์ ๊ฐ์ฒด์ ๋ณต์ฌ๋ณธ์ ๋ง๋๋ ๊ฒ์ด๋ค.
- ๋ ๋ค๋ฅธ ํด๊ฒฐ์ฑ ์ผ๋ก๋ ProviderManager์ eraseCredentialsAfterAuthentication property๋ฅผ ๋นํ์ฑํ ํ๋๊ฒ์ด๋ค.
๐ฐ AuthenticationProvider
๋ค์์ AuthenticationProvider๋ฅผ ProviderManager์ ์ฃผ์ ํ ์ ์๋ค.
๊ฐ๊ฐ์ AuthenticationProvider๋ ํน์ ์ ํ์ ์ธ์ฆ์ ์ํํ๋ค.
ex) DaoAuthenticationProvider : username/password ๊ธฐ๋ฐ์ ์ธ์ฆ์ ์ง์ํ๋ค.
JwtAuthenticationProvider : JWT ํ ํฐ ์ธ์ฆ์ ์ง์ํ๋ค.
๐ฐ Request Credentials with AuthenticationEntryPoint
AuthenticationEntryPoint๋ ํด๋ผ์ด์ธํธ์ ์๊ฒฉ์ฆ๋ช ์์ฒญ์ ๋ํ ์๋ต HTTP๋ฅผ ๋ณด๋ด๋๋ฐ ์ฌ์ฉ๋๋ค.
๋ํ ํด๋ผ์ด์ธํธ์ ์๊ฒฉ์ฆ๋ช ์ ์์ฒญํ ๋ ์ฌ์ฉ๋๋ค.
AuthenticationEntryPoint์ ๊ตฌํ์ฒด๋ ๋ก๊ทธ์ธ ํ์ด์ง๋ก ๋ฆฌ๋๋ ์ ํ๊ฑฐ๋ WWW-Authenticate header๋ฅผ ์ ์กํ๋ ๊ฒ์ ์ํํ๋ค.
๐ฐ AbstractAuthenticationProcessingFilter
์ฌ์ฉ์์ credentials๋ฅผ ์ธ์ฆํ๊ธฐ ์ํ ๊ธฐ์ด Filter๋ก ์ฌ์ฉ๋๋ค.
credentials์ด ์ธ์ฆ๋๊ธฐ ์ ์, Spring Security๋ ์ผ๋ฐ์ ์ผ๋ก AuthenticationEntryPoint๋ฅผ ์ฌ์ฉํ์ฌ credentials์ ์์ฒญํ๋ค.
์ฌ๋ฌ component๋ฅผ ์กฐํฉํ์ฌ ์ฌ๋์๋ ์ธ์ฆ ํ๋ก์ฐ๋ฅผ ๊ตฌ์ฑํ ์ ์๋ค.
์ฐธ๊ณ ) Servlet Authentication Architecture
๊ฐ์ฌํฉ๋๋ค.
์ค๊ฐ๋ ์ ๋ํ ์ง์ ์ ๋ ํ์์ ๋๋ค. ๐
'TIL(Today I Learned)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
8/22 (์) [Pre-Project] ํ๋ก์ ํธ ์์ํ๊ธฐ (0) | 2022.08.22 |
---|---|
7/22 (๊ธ) Spring Security ๊ธฐ๋ณธ (0) | 2022.08.15 |
8/9 (ํ) [Cloud] ์ด์ ์ ๋ต (0) | 2022.08.15 |
7/19 (ํ) [Spring MVC] ์ ํ๋ฆฌ์ผ์ด์ ๋น๋ / ์คํ / ๋ฐฐํฌ (0) | 2022.08.03 |
7/18 (์) [Spring MVC] API ๋ฌธ์ํ (0) | 2022.08.02 |