๋ฐฑ์๋ ๊ฐ๋ฐ/Spring-Security
4
[ํ ํฐ ์ธ์ฆ ๋ฐฉ์]์ ์๋ฆฌ, ์ธ์
์ธ์ฆ๊ณผ์ ์ฐจ์ด์
1. Token ์ธ์ฆ ๋ฐฉ์์ด ์ด๋ป๊ฒ ์ด๋ฃจ์ด ์ง๋๊ฐํ์์ด ๋ก๊ทธ์ธ์ ์๋ํ๋ค๊ณ ๊ฐ์ ํด๋ณด์.โ Client๊ฐ ID/PW ๋ก๊ทธ์ธ ์ฐฝ์ ์จ์ ์ ์ถํ๋ค. โ Server๊ฐ DB๋ฅผ ํตํด ํด๋น ID/PW๋ฅผ ๊ฐ์ง ํ์์ด ์๋์ง ํ์ธํ๋ค. ์ฌ๊ธฐ์ ํด๋น ํ์์ ์ ๋ณด๊ฐ ์ฐ๋ฆฌ DB์ ์์ด์ ์ฐ๋ฆฌ ํ์์ธ ๊ฒ์ด ํ์ธ ๋์๋ค๊ณ ๊ฐ์ ํด๋ณด์. โ Server์์ ํด๋น ํ์์ ์ ๋ณด๋ฅผ ์ด์ฉํ์ฌ ๊ณ ์ ํ Token์ ๋ง๋ ๋ค. โ ๊ทธ๋ฆฌ๊ณ ํด๋น ํ ํฐ์ ์๊น ์ ํจํ ์์ฒญ์ ํ ํด๋ผ์ด์ธํธ์๊ฒ ๋ณด๋ด์ค๋ค. โ ์ด์ ํด๋ผ์ด์ธํธ๋ ์ธ์ฆ์ด ํ์ํ API๋ฅผ ์ด์ฉํ ๊ฒฝ์ฐ ํด๋น Token์ ์์ฒญ Header์ ๋๋ดํ์ฌ ๊ฐ์ด ๋ณด๋ธ๋ค. โ ์ด์ ์๋ฒ์์๋ ํด๋น Token์ ์ ํจ์ฑ์ ๊ฒ์ฆ ํ ์ ํจํ ํ ํฐ์ด ๋ง๋ค๋ฉด ์๋ต์ผ๋ก ์์ฒญํ ๋ด์ฉ์ ๋ํ ์ ์ ๋ต๋ณ์ ๋ณด๋ด์ฃผ๋ฉด ๋..
2024.07.07
๋ฐฑ์๋ ๊ฐ๋ฐ/Spring-Security
ํนํ ํ๋ก์ ํธ Spring Security ๋ถ์
1. ๊ฐ์4์ 5์ผ๋ถ๋ก ํนํ ํ๋ก์ ํธ๊ฐ ๋๋ฌ๋ค. ์ด๋ฒ ํ๋ก์ ํธ์์ ๋ณด์์ ๋งก์๋๋ฐ, ํญ์ ๋ด๊ฐ ๋งก์ ํํธ๋ฅผ ์ ๋ฆฌํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ ํ๋ค. ๋ฒ์จ 2์ฃผ ๋ฐ์ด ํ๋ ๊ธฐ์, ๋ ๊น๋จน๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ์ ๋ฆฌํด๋๋ คํ๋ค.ํด๋น ํ๋ก์ ํธ์ ์ ๋ฌธ์ ๋ณด๊ณ ์ถ๋ค๋ฉด, ๋ค์์ ํ์ธํ์.SSAFY 10๊ธฐ ๊ตฌ๋ฏธ 2๋ฐ ํนํํ๋ก์ ํธ WALK_WALK2. ์ ๊ฐ๋3. ์ฝ๋ ๋ถ์(1) JwtAuthFilter ์์ ์๋ JwtUtil ๋ถ์import io.jsonwebtoken.*;import io.jsonwebtoken.security.Keys;import jakarta.annotation.PostConstruct;import jakarta.servlet.http.HttpServletRequest;import lombok.RequiredArgsCo..
2024.04.26
๋ฐฑ์๋ ๊ฐ๋ฐ/Spring-Security
JWT์ ๋ํ์ฌ
1. JWT๋ ๋ฌด์์ธ๊ฐ?๊ธฐ๋ณธ์ ์ธ ํ ํฐ ์ธ์ฆ ๋ฐฉ์์ ๋ฐ๋ฅด๊ณ , ๊ฑฐ๊ธฐ์ ํ ํฐ ์์ฒด๋ฅผ ๊ฐํํ ๋ฐฉ์์ด๋ผ ์๊ฐํ๋ฉด ๋๋ค.์๋์ ํ ํฐ ์ธ์ฆ ๊ธฐ๋ฐ์์ ์์ฒญ์๊ฐ ๋ณด๋ด์จ ID/PW ๊ฐ DB์ ์กด์ฌํ๋ฉด (์ฐ๋ฆฌ ํ์์ด ๋ง์ผ๋ฉด) ๊ทธ ์์ฒญ์์๊ฒ ์์ ๋ค์ API๋ฅผ ์ธ ์ ์๋ ํ๊ฐ์ฆ์ธ ํ ํฐ์ ์ ํด์คฌ์๋ค. ์ฌ๊ธฐ์ ๋ํด JWT์ ๊ฒฝ์ฐ ํ ํฐ์ ๋ง๋ค ๋, ์ฌ์ฉ์์ ์ ๋ณด(๊ฐ๋จํ ๊ฐ์ธ์ ๋ณด ๋ฑ +@)๋ฅผ ์ํธํํ์ฌ ๋ง๋ ๋ค.์ด๋ ๊ฒ ๋๋ฉด ๋ฌด์์ด ์ข์๊น?์๊น ํ ํฐ ์์ฒด๊ฐ ์ฌ์ฉ์์ ๋ํ ๊ฐ์ธ ์ ๋ณด๋ผ๊ณ ํ์๋ค. ํ์๊ฐ์
์ ํ์ฌ ํ ํฐ์ ๋ฐ์๋ค๋ฉด, ์ดํ API ์์ฒญ์ ํ ๋, ํ ํฐ์ Header๋ Cookie์ ๋ฃ์ด์ ๋ณด๋ธ๋ค. ๋ง์ฝ ํด๋ผ์ด์ธํธ๊ฐ ์ํ๋ ์์ฒญ์ด ์ฌ์ฉ์์ ๊ฐ์ธ์ ๋ณด์ ๋ํ ์์ฒญ์ด๋ผ๋ฉด, ์๋ฒ์์๋ DB๋ฅผ ์กฐํํ ํ์์์ด ํ ํฐ์ ๋ณตํธํ ํ์ฌ ๊ทธ ์์..
2024.04.25
๋ฐฑ์๋ ๊ฐ๋ฐ/Spring-Security
[01]-OAuth2 ์ด๋ก
๋ชฉ์ฐจ1. OAuth2์ ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (OAuth2๋ ์ ํ์ํ๊ฐ?)2. ๊ทธ๋์ OAuth2๋?3. OAuth2 ๊ด๋ จ ์ฉ์ด ์ ๋ฆฌ 4. OAuth2์ ๋์ ๊ณผ์ 1. OAuth์ ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (OAuth2๋ ์ ํ์ํ๊ฐ?)ํ IT ์๋น์ค ์์ฅ์๋ ๊ตฌ๊ธ์ด๋ ์๋ง์กด, ํธ์ํฐ์ ๊ฐ์ ๋ฉ๊ฐ๊ธ ๊ธฐ์
๋ค์ด ๋ค์ ์กด์ฌํ๋ค. ์ด ๊ธฐ์
์ ์ฌ์ฉ์๋ค์ ์์ฒ๋ง ๋ง๊ฒ๋ ์ต๋ ๋จ์๋ก ๋์ด๊ฐ๋ค. ๊ทธ ๋งํผ ํด๋น ๊ธฐ์
๋ค์ด ๊ฐ์ง ๋ฆฌ์์ค๋ ๋ค์ ์กด์ฌํ ๊ฒ์ด๋ค. ํ์ง๋ง, ๋จ์ฒด์ํ์ ํด๋ดค๋ค๋ฉด ์ ์์๋ฏ์ด ํ๋์ ์ผ์ ์์
์ ์ ์์ด ๋ง์กฑํ๋ ๋ฐฉ์์ผ๋ก ์ํํ๋ค๋ ๊ฒ์ ๋ถ๊ฐ๋ฅ์ ๊ฐ๊น๋ค. A๋ ์๋ฅ ์์
์ ๋ ์๋ฒฝํ ํ๊ณ ๋ค์ ์ผ๋ก ๊ฐ์ผ๋ฉด ์ข๊ฒ ๊ณ , B๋ ๊ทธ์ ๋ณธ ์์
์ ๋นจ๋ฆฌ ์งํํ๊ณ ์ถ์ ์๋ ์๋ค. ์ด๋ ์ฐ๋ฆฌ๊ฐ ํน์ ์๋น์ค๋ฅผ ์ด์ฉํ ๋๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ค. ..
2024.03.03
๋ฐฑ์๋ ๊ฐ๋ฐ/Spring-Security