LinkedIn SNS ์—ฐ๋™

2021. 12. 15. 15:57ยทWeb
๋ชฉ์ฐจ
  1. ๐Ÿš€ Overview
  2.  
  3. ๋กœ๊ทธ์ธ ์—ฐ๋™ ๊ณผ์ •


๐Ÿš€ Overview

๋งํฌ๋“œ์ธ API๋Š” OAuth2๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œ ์ € ์ธ๊ฐ€์™€ API ์ธ์ฆ์„ ์ฒ˜๋ฆฌํ•œ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋งํฌ๋“œ์ธ ํšŒ์› ์ •๋ณด์— ์ ‘๊ทผํ•˜๊ฑฐ๋‚˜ ๋งํฌ๋“œ์ธ์œผ๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์ „์— ์ธ์ฆ๊ณผ ์ธ๊ฐ€๊ฐ€ ์ด๋ฃจ์–ด์ ธ์•ผ ํ•œ๋‹ค.

 

์Šน์ธ ํƒ€์ž…

์Šน์ธ ํƒ€์ž…์€ ๋งํฌ๋“œ์ธ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•  ๋•Œ ํ•„์š”ํ•œ ์ธ๊ฐ€์— ๋Œ€ํ•ด ์Šน๋‚™ ์—ฌ๋ถ€๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์ฝ”๋“œ์ด๋‹ค. ๋งํฌ๋“œ์ธ์€ ํšŒ์› ์ •๋ณด๊ฐ€ ์˜ค์šฉ๋˜์ง€ ์•Š๋„๋ก ์ •๋ณด๋ฅผ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด ์Šน์ธ ํƒ€์ž…์„ ์‚ฌ์šฉํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์Šน์ธ ํƒ€์ž…์„ ์ƒ์„ฑํ•ด์•ผ ํ•œ๋‹ค.

 

๋กœ๊ทธ์ธ ์—ฐ๋™ ๊ณผ์ •

 

์ „์ œ ์กฐ๊ฑด

๏ฟฎ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒ์„ฑ

๋งํฌ๋“œ์ธ ๊ฐœ๋ฐœ์ž ํฌํ„ธ์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•œ๋‹ค.

๏ฟฎ ์Šน์ธ ํƒ€์ž… ์ถ”๊ฐ€

Products ํƒญ์—์„œ "Sign in with LinkedIn"์„ ์ถ”๊ฐ€ํ•˜๊ณ  Auth ํƒญ์— ์žˆ๋Š” Oauth 2.0 scopes์— ์Šน์ธ ํƒ€์ž…์ด ๋กœ๋“œ๋˜๋Š”์ง€ ํ™•์ธํ•œ๋‹ค. (๋ฐ”๋กœ ์ ์šฉ์ด ์•ˆ ๋  ๊ฒฝ์šฐ์— 30์ดˆ-1๋ถ„ ํ›„์— ์ƒˆ๋กœ๊ณ ์นจ์„ ํ•ด์„œ ํ™•์ธํ•œ๋‹ค.)

Products ํƒญ
Auth ํƒญ [OAuth 2.0 scopes]

 

์—ฐ๋™ ๊ณผ์ •

Step 1: ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ค์ •

 

๏ฟฎ Redirect URL ์„ค์ •

Auth ํƒญ [OAuth 2.0 settings]์—์„œ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL์„ ์ถ”๊ฐ€ํ•œ๋‹ค.

 

๏ฟฎ Client ID & Client Secret ํ™•์ธ

Auth ํƒญ์—์„œ Client ID์™€ Client Secret์„ ํ™•์ธํ•œ๋‹ค.

 

Step 2: ์ธ๊ฐ€ ์ฝ”๋“œ ์š”์ฒญ

 

1. ์š”์ฒญ

GET https://www.linkedin.com/oauth/v2/authorization
ํŒŒ๋ผ๋ฏธํ„ฐ ํƒ€์ž… ์„ค๋ช… ํ•„์ˆ˜
response_type string value ๊ฐ’์€ ํ•ญ์ƒ 'code'๋กœ ์ง€์ • O
client_id string Auth ํƒญ์— ์žˆ๋Š” Client ID O
redirect_uri url ์ธ๊ฐ€๋ฅผ ๋งˆ์น˜๋ฉด ๋Œ๋ ค ๋ณด๋‚ผ URL O
state string ๋žœ๋ค์œผ๋กœ ์ƒ์„ฑ๋œ ์˜ˆ์ธก ๋ถˆ๊ฐ€ํ•œ ์ŠคํŠธ๋ง ๊ฐ’
์˜ˆ) state=DCEeFWf45A53sdfKef424
X
scope string ์Šน์ธ ํƒ€์ž…(๋ฆฌ์ŠคํŠธ๋ผ๋ฉด ์ธ์ฝ”๋”ฉ ํ•„์š”)
์˜ˆ1) scope=r_liteprofile%20r_emailaddress%20w_member_social
์˜ˆ2) scope=r_liteprofile
O

 

์š”์ฒญ URL ์˜ˆ์ œ

https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=YOUR_CLIENT_ID&scope=r_liteprofile&state=DCEeFWf45A53sdfKef424&redirect_uri=YOUR_REDIRECT_URL

๐Ÿšจ Developer potal์— ์ž‘์„ฑํ•œ Redirect URL๊ณผ ํŒŒ๋ผ๋ฏธํ„ฐ์˜ URL์ด ์ผ์น˜ํ•˜์ง€ ์•Š์œผ๋ฉด ์˜ค๋ฅ˜ ๋ฐœ์ƒ

 

์„ฑ๊ณต ์‹œ ๋œจ๋Š” ๋กœ๊ทธ์ธ ํ™”๋ฉด

 

2. ๋กœ๊ทธ์ธ ์„ฑ๊ณต ์‹œ

์—ฐ๋™ ํ—ˆ์šฉ์„ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ์‚ฌ์šฉ์ž๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‚ฌ์šฉ์ž ์ •๋ณด์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋•Œ code์™€ state ๊ฐ’์„ ์–ป๊ฒŒ ๋œ๋‹ค.

 

๏ฟฎ  code : OAuth2 ์ธ๊ฐ€ ์ฝ”๋“œ๋กœ access token์„ ๋ฐ›๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

๏ฟฎ  state : CSRF(Cross-Site Request Forgery, ํฌ๋กœ์Šค ์‚ฌ์ดํŠธ ์š”์ฒญ ์œ„์กฐ) ๊ณต๊ฒฉ ๋ฐฉ์ง€๋ฅผ ์œ„ํ•œ ๊ฐ’

 

 

Step 3: ์•ก์„ธ์Šค ํ† ํฐ์„ ์œ„ํ•œ ์ธ๊ฐ€ ์ฝ”๋“œ ๊ตํ™˜

 

1. ์š”์ฒญ

POST https://www.linkedin.com/oauth/v2/accessToekn
ํŒŒ๋ผ๋ฏธํ„ฐ ํƒ€์ž… ์„ค๋ช… ํ•„์ˆ˜
grant_type string value ๊ฐ’์€ ํ•ญ์ƒ 'authorization_code'๋กœ ์ง€์ • O
code string Step 2์—์„œ ๋ฐ›์€ ์ธ๊ฐ€ ์ฝ”๋“œ O
client_id string Step 1์—์„œ ๋ฐ›์€ Client ID ๊ฐ’ O
client_secret string Step 1์—์„œ ๋ฐ›์€ Client Secret ํ‚ค O
redirect_uri url ์ „ ๋‹จ๊ณ„์—์„œ ์‚ฌ์šฉํ•œ Redirect URL O

 

์š”์ฒญ URL ์˜ˆ์ œ

grant_type=authorization_code&code=YOUR_AUTHORIZATION_CODE&redirect_uri=YOUR_REDIRECT_URL&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET

 

 

2. ์‘๋‹ต

ํŒŒ๋ผ๋ฏธํ„ฐ ํƒ€์ž… ์„ค๋ช… ํ•„์ˆ˜
access_token string ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ์•ก์„ธ์Šค ํ† ํฐ O
expires_in int ๋งŒ๋ฃŒ ๊ธฐ๊ฐ„๊นŒ์ง€์˜ ์‹œ๊ฐ„(์ดˆ ๋‹จ์œ„, 60์ผ) O

 

Step 4: ์ธ์ฆ ๋ฐ›์€ ์š”์ฒญ ์ƒ์„ฑ

 

1. ์š”์ฒญ

Step 3์—์„œ ์‘๋‹ต์œผ๋กœ ์ „๋‹ฌ ๋ฐ›์€ Access Token์„ Authorization ํ—ค๋”์— ๋‹ด์•„ ์š”์ฒญ์„ ์ƒ์„ฑํ•œ๋‹ค.

GET https://api.linkedin.com/v2/me
HEADER 'Authorization: Bearer YOUR_ACCESS_TOKEN'

๐Ÿšจ 'Bearer '์€ YOUR_ACCESS_TOKEN ์•ž์— ๊ทธ๋Œ€๋กœ ์ถ”๊ฐ€ํ•ด์„œ Header์— ์„ค์ •ํ•ด ์ค€๋‹ค.

 

 

2. ์‘๋‹ต

 

 

 

 


  • https://esther-liao.medium.com/how-to-get-a-linkedin-access-token-a53f9b62f0ce
  • https://docs.microsoft.com/ko-kr/linkedin/consumer/integrations/self-serve/sign-in-with-linkedin
  • https://docs.microsoft.com/en-us/linkedin/shared/authentication/authorization-code-flow?context=linkedin%2Fcontext&tabs=HTTPS

'Web' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Gradle] build.gradle๋ฅผ ํ†บ์•„๋ณด์ž  (0) 2023.02.04
[IntelliJ] war๊ณผ war(exploded)์˜ ์ฐจ์ด  (0) 2022.09.28
CSRF/XSRF(Cross-Site Request Forgery) ๊ณต๊ฒฉ๊ณผ ๋Œ€์‘ ๋ฐฉ์•ˆ  (0) 2022.09.02
XSS(Cross-Site Scripting)์˜ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•๊ณผ ๋Œ€์‘ ๋ฐฉ์•ˆ  (3) 2022.09.02
SQL Injection์˜ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•๊ณผ ๋Œ€์‘ ๋ฐฉ์•ˆ  (2) 2022.09.02
  1. ๐Ÿš€ Overview
  2.  
  3. ๋กœ๊ทธ์ธ ์—ฐ๋™ ๊ณผ์ •
'Web' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [IntelliJ] war๊ณผ war(exploded)์˜ ์ฐจ์ด
  • CSRF/XSRF(Cross-Site Request Forgery) ๊ณต๊ฒฉ๊ณผ ๋Œ€์‘ ๋ฐฉ์•ˆ
  • XSS(Cross-Site Scripting)์˜ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•๊ณผ ๋Œ€์‘ ๋ฐฉ์•ˆ
  • SQL Injection์˜ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ•๊ณผ ๋Œ€์‘ ๋ฐฉ์•ˆ
soro.k
soro.k
  • soro.k
    ์ผ์ผ์†Œ๋ก
    soro.k
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (182)
      • Java (14)
      • Spring (24)
      • JavaScript (5)
      • DB (33)
      • Web (6)
      • Computer Science (47)
        • Operating System (9)
        • Network (3)
        • Data Structure (6)
        • Algorithm (28)
      • Git (1)
      • ๋…ธํŠธ (4)
        • F-lab (20)
        • ํšŒ๊ณ  (14)
        • Review (12)
  • ์ธ๊ธฐ ๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
soro.k
LinkedIn SNS ์—ฐ๋™
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.