๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Spring Boot

[OAuth] ๊ตฌ๊ธ€ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ1 ( ํ† ํฐ ๋ฐœ๊ธ‰๋ฐ›๊ธฐ)

by ์šฐ์ฃผ๋ฌผ๊ณ ๊ธฐ 2025. 5. 7.
๋ฐ˜์‘ํ˜•

 

๊ตฌ๊ธ€ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ํ•˜๋ ค๋ฉด, ์ธ์ฆ์„œ๋ฒ„์—๊ฒŒ ํ† ํฐ ์ œ๊ณต ๋ฐ›์•„์•ผ๋จ.

 

1. ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ ์ฝ˜์†” ๋“ค์–ด๊ฐ€์„œ

https://cloud.google.com/cloud-console

 

https://cloud.google.com/cloud-console

 

cloud.google.com

 

[์ฝ˜์†”] ๋ฒ„ํŠผ ํด๋ฆญ.

 

(์ตœ์ดˆ๋ฉด ์‚ฌ์šฉ ๋™์˜ ํ™”๋ฉด ๋œฐ๊ฑฐ์ž„. ๋™์˜ํ•˜๊ณ  ์ ˆ์ฐจ ๋งˆ์น˜๋ฉด ๋จ)

 

 

2. ์™ผ์ชฝ ์œ„์˜ [ํ”„๋กœ์ ํŠธ ์„ ํƒ] ํด๋ฆญ,

 

 

2-1. [์ƒˆ ํ”„๋กœ์ ํŠธ] ๋ฒ„ํŠผ ํด๋ฆญ

 

 

 

3. ํ”„๋กœ์ ํŠธ ์ด๋ฆ„, ์กฐ์ง ์•Œ์•„์„œ ์ž˜ ์„ค์ •ํ•˜๊ณ 

[๋งŒ๋“ค๊ธฐ] ๋ฒ„ํŠผ ํด๋ฆญ

 

 

 

4. ์˜ค๋ฅธ์ชฝ ์œ„ ์•Œ๋ฆผ(์ข…๋ชจ์–‘)์— ๋ณด๋ฉด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ณด์ž„

๊ทธ๊ฑฐ ํด๋ฆญ

 

 

 

 

 

5. [API ๋ฐ ์„œ๋น„์Šค] - [์‚ฌ์šฉ์ž ์ธ์ฆ ์ •๋ณด] ํด๋ฆญ

 

 

 

 

6. ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ [๋™์˜ ํ™”๋ฉด ๊ตฌ์„ฑ] ํด๋ฆญ

 

 

 

 

7. ์ฑ…์—์„œ๋Š”  User Type์„ ์™ธ๋ถ€์šฉ์œผ๋กœ ์„ ํƒํ•˜๊ณ  [๋งŒ๋“ค๊ธฐ] ๋ฒ„ํŠผ ๋ˆ„๋ฅด๋ผ๋Š”๋ฐ,

๋‚œ ๊ทธ๋Ÿฐ๊ฑฐ ์•ˆ๋– ์„œ ๊ฑ [์‹œ์ž‘ํ•˜๊ธฐ] ๋ˆŒ๋Ÿฌ๋ด„

 

์•ฑ ์ด๋ฆ„, ์ด๋ฉ”์ผ ์“ฐ๊ณ  [๋‹ค์Œ] ํด๋ฆญํ•˜๋‹ˆ๊นŒ

์ด์ œ User Type  ํ™”๋ฉด ๋‚˜์˜ด ใ…‹ใ…‹ใ…‹ใ…‹

์™ธ๋ถ€๋กœ ์ž˜ ๋˜์–ด์žˆ์œผ๋ฉด [๋‹ค์Œ] ๊ณ„์† ๋ˆ„๋ฅด๋ฉด์„œ ๋„˜์–ด๊ฐ€์…ˆ

 

 

 

[๋งŒ๋“ค๊ธฐ] ํด๋ฆญ

 

 

 

8. ์™ผ์ชฝ ํƒญ์— ๋ฐ์ดํ„ฐ ์—‘์„ธ์Šค ํด๋ฆญ , [๋ฒ”์œ„ ์ถ”๊ฐ€ ๋˜๋Š” ์‚ญ์ œ] ํด๋ฆญ

 

 

 

 

9. email์ด๋ž‘ openid ์ฒดํฌํ•ด์ฃผ๊ณ , ์•„๋ž˜์— [์—…๋ฐ์ดํŠธ] ํด๋ฆญ

 

 

10. ์œ„์ชฝ ์ค‘๊ฐ„์— [์‚ฌ์šฉ์ž ์ธ์ฆ ์ •๋ณด ๋งŒ๋“ค๊ธฐ] - [OAuth ํด๋ผ์ด์–ธํŠธ  ID] ํด๋ฆญ

 

 

 

 

11. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์œ ํ˜•, ์ด๋ฆ„, ์Šน์ธ๋œ ๋ฆฌ๋””๋ ‰์…˜ URI ์„ธ๊ฐœ ์ž…๋ ฅ

 

 

 

 

 

 

12. ๋งŒ๋“ค๊ณ  ๋‚˜๋ฉด ๋‚˜์˜ค๋Š” ํด๋ผ์ด์–ธํŠธID๋ž‘ ๋ณด์•ˆ ๋น„๋ฒˆ์€ ๋”ฐ๋กœ ๋ฉ”๋ชจํ•˜์…ˆ

 

 

 

13. applicaion.properties์— ์„ธ๊ฐ€์ง€ ๊ฐ’ ์ถ”๊ฐ€

spring.security.oauth2.client.registration.google.client-id=ํด๋ผ์ด์–ธํŠธID
spring.security.oauth2.client.registration.google.client-secret=๋น„๋ฒˆ
spring.security.oauth2.client.registration.google.scope=profile,email

 

์ ˆ๋Œ€ ํด๋ผ์ด์–ธํŠธ ์•„์ด๋””๋ž‘ ๋น„๋ฐ€ํ‚ค๋Š” ๊นƒํ—™์— ์˜ฌ๋ฆฌ๋ฉด ์•ˆ๋จ!!!!

๋ฐ˜์‘ํ˜•