Spring/[2024] Spring Boot(6)
-
[Spring Boot] Spring Security, JWT ํ ํฐ ์ธ์ฆ
์กฐ๊ธ์ ์๊ฐ์ด ๋จ์ ํญ์ ๋ฏธ๋ค์๋์คํ๋ง ๋ถํธ์์ JWT ํ ํฐ์ ์ฌ์ฉํด ๋ก๊ทธ์ธ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ณ , Spring Security๋ก ์ธ์ฆ์ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ํ ์คํธ ํ๋ก์ ํธ ๋ง๋ค์ด๋ณด๊ณ , ํฐ์คํ ๋ฆฌ์ ์ ๋ฆฌํด๋ณธ๋ค.!! ์ด๋ฒ์ REST API ํ๋ก์ ํธ์ ์ธ์ฆ๋ฐฉ์์ผ๋ก JWT ํ ํฐ์ ์ฌ์ฉํ๊ณ , ์ด ๋ถ๋ถ์ ๋ด๊ฐ ์ ๋๋ก ์๊ณ ์๊ฒ ๋ ์ํฉ์ด ๋์ด์,,, ๋ฏธ๋ฆฌ ๋ฏธ๋ฆฌ ๊ณต๋ถํ๋ฉฐ ์ ๋ฆฌ ํด๋๋ค ใ ใ ๐๐ 0๏ธโฃ Spring Security, JWT ๊ด๋ จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ build.gardle implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'io.jsonwebtoken:jjwt-impl:0.11.5' implementati..
2024.11.04 -
๊ฐ๋จํ Spring Boot Restful API Sample Project ๋ง๋ค์ด๋ณด๊ธฐ #2. ํ์๊ฐ์ ๊ตฌํํ๊ธฐ
https://hyejin.tistory.com/1295 ๊ฐ๋จํ Spring Boot Restful API Sample Project ๋ง๋ค์ด๋ณด๊ธฐ #1. Spring Security ์ค์ + CustomFilter ๋ง๋ค๊ธฐ โ ์ํ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๊ธฐ๋ก ๊ฒฐ์ ํ ์ด์ -> ์๊ฐ์ด ์กฐ๊ธ ์ฌ์ ๋ก์ด ์์ฆ, ๊ณง ๊ฐ๋ฐ ๋ค์ด๊ฐ๊ธฐ ์ ์ ๊ฐ๋จํ๊ฒ ์ํ ํ๋ก์ ํธ ๋ง๋ค๋ฉด์ ๊ฐ ์ก๊ณ ? ์๊ณ ์ถ์ด์! ๊ทธ๋ฆฌ๊ณ ๋ง๋ ๊น์ ์ค๋๋ง์ ํฐ์คํ ๋ฆฌ hyejin.tistory.com -> ์ด๋ฒ ๊ธ์ ํ์ ๊ฐ์ ๋ก์ง์ ๊ตฌํํ๋ ๊ธ๋ก, ์ํ๋ฆฌํฐ ์ค์ ๊ด๋ จ ๋ถ๋ถ์ ๋ฐ์ ๋งํฌ ํด๋ฆญํด์ ํ์ธ ๊ฐ๋ฅํฉ๋๋ค :) ๐ : ์๊ฐํด๋ณด๋ฉด ์คํ๋ง ์ํ๋ฆฌํฐ ์ค์ ๋ฐ ๋ก๊ทธ์ธ ๊ตฌํํ๊ธฐ ์ ์ ํ์๊ฐ์ ๋ก์ง์ ๋ง๋ค์์ด์ผ ํ๋ค.. ์๋ ํ์ ๊ฐ์ ์ ํด์ผ ํ์ ์ ๋ณด ์ ์ฅํ๊ณ , ๋ก๊ทธ..
2024.03.11 -
๊ฐ๋จํ Spring Boot Restful API Sample Project ๋ง๋ค์ด๋ณด๊ธฐ #1. Spring Security ์ค์ + CustomFilter ๋ง๋ค๊ธฐ
โ ์ํ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๊ธฐ๋ก ๊ฒฐ์ ํ ์ด์ -> ์๊ฐ์ด ์กฐ๊ธ ์ฌ์ ๋ก์ด ์์ฆ, ๊ณง ๊ฐ๋ฐ ๋ค์ด๊ฐ๊ธฐ ์ ์ ๊ฐ๋จํ๊ฒ ์ํ ํ๋ก์ ํธ ๋ง๋ค๋ฉด์ ๊ฐ ์ก๊ณ ? ์๊ณ ์ถ์ด์! ๊ทธ๋ฆฌ๊ณ ๋ง๋ ๊น์ ์ค๋๋ง์ ํฐ์คํ ๋ฆฌ์ ๊ธ๋ ๋ง์ด ์ฌ๋ฆฌ๋ฉด์ ์งํํ ์์ ์ด๋ค. โ ๊ฐ๋ฐ ํ๊ฒฝ - Jdk 17 - SpringBoot 3.2.3 - Spring Security - JPA + H2 (์ํ ํ๋ก์ ํธ๋ผ ๊ทธ๋ฅ ๊ฐ๋จํ ๊ตฌํํ ์ ์๋ h2 ์ฌ์ฉํ ์์ ์ด๋ค.) - Spring REST Docs + mockMvc (REST Docs ๋ฅผ ์ด์ฉํด์ api ๋ฌธ์ ์๋ํํ ์์ ์ด๋ค.) โ ์ง๊ธ ์๊ฐํ๋ ๊ธฐ๋ฅ - ๋ก๊ทธ์ธ ๋ฐ ํ์๊ฐ์ - ๊ฒ์๊ธ ์์ฑ, ์กฐํ, ์์ , ์ญ์ - ๋๊ธ ์์ฑ, ์กฐํ, ์์ , ์ญ์ ( + ์ฌ์ฉ์ ๊ด๋ฆฌ? ) ์ด๋ ๊ฒ ์๊ฐํ๊ณ ์๋ค. ์ฐ์ ๊ธฐ..
2024.03.07 -
Spring REST Docs ๋ฅผ ์ฌ์ฉํด ๋ฌธ์ ์๋ํํ๋ ๋ฐฉ๋ฒ + ์ํ ํ๋ก์ ํธ ์์ฑ (Spring +JPA)
* ํน์๋ ๋ฐ๋ก ์ฝ๋๋ถํฐ ๋ณด๊ณ ์ถ์ ์ฌ๋๋ค์ -> " Spring REST Docs ๋ฅผ ์ด์ฉํ Sample Project " ๊ฒ์ ๋ ์ญ๊ณ 0๏ธโฃ Spring REST Docs ๋ ? : Spring MVC Test ๋๋ WebTestClient์ผ๋ก ์์ฑ๋ ์ค๋ํซ๊ณผ ์ง์ ์์ฑํ ๋ฌธ์๋ฅผ ๊ฒฐํฉํ์ฌ Restful ์๋น์ค๋ฅผ ๋ฌธ์ํํ๋ ๊ฒ์ด๋ค. https://docs.spring.io/spring-restdocs/docs/current/reference/htmlsingle/#introduction Spring REST Docs Document RESTful services by combining hand-written documentation with auto-generated snippets produced wi..
2024.02.27 -
[Spring] ๋ค์ด๋ฒ ๋ก๊ทธ์ธ API ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
https://hyejin.tistory.com/1290 [Spring] ์นด์นด์ค ๋ก๊ทธ์ธ API ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ์์ฆ์ ์นด์นด์ค, ๋ค์ด๋ฒ๋ฅผ ์ด์ฉํ Login Api ๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ์ค์ ์ฌ์ฉํ๊ธฐ ์ ์ ์ํ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด kakao login api ๋์ ๋ฐฉ์์ ์์๋ณผ ๊ฒ์ด๋ค. REST API๋ฅผ ์ฌ์ฉํ ์นด์นด์ค ๋ก๊ทธ์ธ์ PC ๋ฐ hyejin.tistory.com -> ์นด์นด์ค ๋ก๊ทธ์ธ api ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ์นด์นด์ค ๋ก๊ทธ์ธ api๋ฅผ ์ฌ์ฉํด์ ๋ก๊ทธ์ธ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณธ ๋ค์, ์ด์ ๋ค์ด๋ฒ ๋ก๊ทธ์ธ api๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์์๋ณผ ๊ฒ์ด๋ค. ํ๋ฒ ํด๋ณด๋ฉด ๋๋ค ํ๋ก์ฐ๋ ๋น์ทํ๊ธฐ ๋๋ฌธ์ ๊ธ๋ฐฉํ ์ ์๋ค. Naver ๋ก๊ทธ์ธ ๋์ ๋ฐฉ๋ฒ https://developers.naver.com/main/ NAVER Develo..
2024.02.07 -
[Spring] ์นด์นด์ค ๋ก๊ทธ์ธ API ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
์์ฆ์ ์นด์นด์ค, ๋ค์ด๋ฒ๋ฅผ ์ด์ฉํ Login Api ๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ์ค์ ์ฌ์ฉํ๊ธฐ ์ ์ ์ํ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด kakao login api ๋์ ๋ฐฉ์์ ์์๋ณผ ๊ฒ์ด๋ค. REST API๋ฅผ ์ฌ์ฉํ ์นด์นด์ค ๋ก๊ทธ์ธ์ PC ๋ฐ ๋ชจ๋ฐ์ผ ์น์์ ์ ํฉํ ๋ฐฉ์์ด๋ค. ์นด์นด์ค ๋ก๊ทธ์ธ์ OAuth 2.0 ๊ธฐ๋ฐ์ ์์ ๋ก๊ทธ์ธ ์๋น์ค๋ก ์นด์นด์ค ๋ก๊ทธ์ธ์ ์ด์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ์นด์นด์คํก ๋๋ ์นด์นด์ค ๊ณ์ ์ผ๋ก ์์ฝ๊ฒ ์๋น์ค์ ๋ก๊ทธ์ธ ํ ์ ์๋ค. ์นด์นด์ค ๋ก๊ทธ์ธ ์๋น์ค ๊ณผ์ 1๏ธโฃ ์นด์นด์ค ๋ก๊ทธ์ธ ์ฌ์ฉ์๊ฐ ์๋น์ค์์ ์นด์นด์ค ๋ก๊ทธ์ธ ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค. ์๋น์ค๋ ์นด์นด์ค ์ธ์ฆ ์๋ฒ๋ก ์ธ๊ฐ ์ฝ๋ ๋ฐ๊ธ์ ์์ฒญํฉ๋๋ค. ์นด์นด์ค ์ธ์ฆ ์๋ฒ๋ ์ฌ์ฉ์์๊ฒ ์ธ์ฆ์ ์์ฒญํฉ๋๋ค. (์ฐธ๊ณ : ์ฌ์ฉ์ ํ๊ฒฝ์ ๋ฐ๋ฅธ ์ธ์ฆ ๋ฐฉ๋ฒ) ์นด์นด์คํก์ผ๋ก ๋ก๊ทธ์ธ: ์นด์นด์คํก ์คํ,..
2024.02.07