๊ตฌ๊ธ, ๋ค์ด๋ฒ, ์นด์นด์ค ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธํ๊ธฐ ์ํด ํ์ํ ํ ํฐ๋ค์ ๋ฐ๊ธ ๋ฐ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค. :D
๊ตฌ๊ธ(Google)
1. ๋จผ์ ์ ๋งํฌ๋ก ์ ์ํด์ ์ ํ๋ก์ ํธ๋ฅผ ์์ฑํฉ๋๋ค.
2. ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด - OAuth ํด๋ผ์ด์ธํธ ID ๋ฅผ ํด๋ฆญํฉ๋๋ค.
3. ๋์ ํ๋ฉด ๊ตฌ์ฑ์ ํด๋ฆญํ๊ณ - User Type์ ์ธ๋ถ๋ก ์ค์ ํด์ค๋ค.
4. [์ฑ ์ด๋ฆ], [์ฌ์ฉ์ ์ง์ ์ด๋ฉ์ผ], [๊ฐ๋ฐ์ ์ฐ๋ฝ์ฒ ์ ๋ณด] ๋ง ์ ๋ ฅํ๊ณ ๋์ด๊ฐ๋ค.
(2) ๋ฒ์, (3) ํ ์คํธ ์ฌ์ฉ์๋ ๋์ด๊ฐ๊ณ ๋์ 5๋ฒ์ ์งํํ๋ฉด ๋ฉ๋๋ค.
5. ๋ค์ [์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด] - [์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ง๋ค๊ธฐ] - [OAuth ํด๋ผ์ด์ธํธ ID] ๋ฅผ ํด๋ฆญํฉ๋๋ค.
6. [์ ํ๋ฆฌ์ผ์ด์ ์ ํ]์ "์น ์ ํ๋ฆฌ์ผ์ด์ "์ผ๋ก ์ง์ ํ๊ณ , URI๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ๋ผ ์ถ๊ฐํด์ค๋๋ค.
7. OAuth ํด๋ผ์ด์ธํธ ID์ ๋น๋ฐ๋ฒํธ ๋ฐ๊ธ!
์นด์นด์ค(Kakao)
1. ์ ๋งํฌ๋ก ์ ์ํด์ [๋ด ์ ํ๋ฆฌ์ผ์ด์ ] ์ ํด๋ฆญํ๊ณ ๋ก๊ทธ์ธ ํด์ค๋๋ค.
2. [์ ํ๋ฆฌ์ผ์ด์ ์ถ๊ฐํ๊ธฐ] ๋ฅผ ํด๋ฆญํ๊ณ ์ฑ ์ด๋ฆ์ ์ค์ ํด์ค๋๋ค.
3. ์ ํ๋ฆฌ์ผ์ด์ ์ ์ถ๊ฐํ๋ฉด, ํค ์ ๋ณด๋ฅผ ์ ๊ณตํด์ค๋๋ค.
4. ์ผ์ชฝ ์ฌ์ด๋ ๋ฐ์ [์นด์นด์ค ๋ก๊ทธ์ธ] ๋ฅผ ํด๋ฆญํด์ค๋๋ค.
5. ์นด์นด์ค ๋ก๊ทธ์ธ์ [ํ์ฑํ] ํด์ฃผ๊ณ , Redirect URI ๋ฅผ ๋ฑ๋กํด์ค๋๋ค.
6. ์ผ์ชฝ ์ฌ์ด๋ ๋ฐ์์ [๋ณด์] ์ ํด๋ฆญํ๊ณ , Client Secret ์ฝ๋ ์์ฑ์ ํด์ค๋๋ค.
7. Client Secret ์ฝ๋๊ฐ ๋ฐ๊ธ์ด ๋์์ต๋๋ค!
๋ค์ด๋ฒ(Naver)
1. ์ ๋งํฌ์ ์ ์ํด์ [์ ํ๋ฆฌ์ผ์ด์ ๋ฑ๋ก] ์ ํด์ค๋๋ค.
๊ธฐ๋ณธ์ ์ธ ๋ด์ฉ์ ์ ๋ ฅํ๊ณ , ๋ค์๋ก(๋ค์ด๋ฒ ์์ด๋๋ก ๋ก๊ทธ์ธ)์ ์ ํํด์ค๋๋ค.
2. ์๋น์ค URL, Callback URL๋ ์๋ง๊ฒ ์ ๋ฃ์ด์ฃผ๋๋ก ํฉ๋๋ค.
3. Client ID, Secret Code ๋ฐ๊ธ ์๋ฃ!!
๋ฐ๊ธ ๋ฐ์ Client ID์ Secret Code๋ ์ฐ๋ฆฌ๊ฐ ํ๋ก์ ํธ์ ์ ๋ ฅํด์ผ ๋ ์ ๋ณด๋ค์ด๊ธฐ ๋๋ฌธ์ ๊ผญ ๊ธฐ์ตํ๊ณ ์์ด์ผ ํฉ๋๋ค!
๊ฐ์ฌํฉ๋๋ค.
์ฐธ๊ณ
[Spring Boot OAuth2๋ฅผ ์ด์ฉํ ๊ตฌ๊ธ, ์นด์นด์ค, ๋ค์ด๋ฒ ๊ณ์ ์ฐ๋ ๋ก๊ทธ์ธํ๊ธฐ]์ ๋ํด์๋ ์๋ ํฌ์คํธ๋ค์ ์ฐธ์กฐํ์๊ธธ ๋ฐ๋๋๋ค.