Skip to content

Latest commit

ย 

History

History
205 lines (121 loc) ยท 10.7 KB

OAuth&LDAP.md

File metadata and controls

205 lines (121 loc) ยท 10.7 KB

android OAuth


android์˜ OAuth ํ”„๋กœํ† ์ฝœ ์—ฐ๋™์— ๋Œ€ํ•˜์—ฌ


์ž‘์„ฑ์ž : ๋ฐ•์†Œํ˜„


Present Time : 2018-07-25-WED


Last Updated : 2018-07-31-TUE




0. ๋“ค์–ด๊ฐ€๊ธฐ ์ „

๋ณธ ์ฃผ์ œ๋ฅผ ์„ ํƒํ•˜๊ฒŒ ๋œ ๊ณ„๊ธฐ๋Š” ๋ฐœํ‘œ์ž๊ฐ€ ์ง€์›ํ•˜๊ณ ์ž ํ–ˆ๋˜ ํšŒ์‚ฌ์˜ ์šฐ๋Œ€์‚ฌํ•ญ์— ํฌํ•จ๋˜์–ด ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์ง€์›ํ•˜๊ณ ์ž ํ–ˆ๋˜ ํšŒ์‚ฌ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ํšŒ์‚ฌ์—์„œ๋„ ์ค‘์š”ํ•˜๊ฒŒ ์—ฌ๊ธธ ์ˆ˜ ์žˆ๋Š” ์ฃผ์ œ๋ผ๊ณ  ์ƒ๊ฐ๋˜์–ด ๋ฐœํ‘œํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค.

๋ฐœํ‘œ์ž๋Š” ์•„๋‹ˆ์—ˆ์ง€๋งŒ ๋‹ค๋ฅธ ํšŒ์‚ฌ ๋ฉด์ ‘์—์„œ ์ถฉ๋ถ„ํžˆ ์งˆ๋ฌธ์œผ๋กœ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋…์ด๋‹ˆ๊น ์•Œ๊ณ  ์žˆ์œผ๋ฉด ๋„์›€์ด ๋งŽ์ด ๋  ๊ฒƒ ๊ฐ™๋‹ค.


1. OAuth

1-1. OAuth?

: ์ธ์ฆ์„ ์œ„ํ•œ ์˜คํ”ˆ ์Šคํƒ ๋”๋“œ ํ”„๋กœํ† ์ฝœ


1-2. OAuth์˜ ํƒ„์ƒ

OAuth์˜ ํƒ„์ƒ ์ด์ „์—๋„ ๋‹ค๋ฅธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉ์ž์˜ ์•„์ด๋””์™€ ์•”ํ˜ธ๊ฐ€ ๋…ธ์ถœ๋˜์ง€ ์•Š๋„๋ก ํ•˜๋ฉด์„œ API ์ ‘๊ทผ ์œ„์ž„(API Access Delegation)์ด ๊ฐ€๋Šฅํ•œ ์—ฌ๋Ÿฌ ์ธ์ฆ ๋ฐฉ๋ฒ•์ด ์žˆ์—ˆ๋‹ค. Google๊ณผ Yahoo!, AOL, Amazon ๋“ฑ์—์„œ๋Š” ๊ฐ๊ฐ์˜ ์ธ์ฆ ๋ฐฉ์‹์„ ์ œ์ž‘ํ•˜์—ฌ ์‚ฌ์šฉํ–ˆ๋‹ค. (๊ฐ๊ฐ์˜ ์ธ์ฆ ๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ์ฐพ์•„๋ณด๋„๋ก ํ•˜์ž!)

OAuth๋Š” ์ด๋ ‡๊ฒŒ ์ œ๊ฐ๊ฐ์ธ ์ธ์ฆ๋ฐฉ์‹์„ ํ‘œ์ค€ํ™”ํ•œ ์ธ์ฆ๋ฐฉ์‹์ด๋‹ค. OAuth๋ฅผ ์ด์šฉํ•˜๋ฉด ์ด ์ธ์ฆ์„ ๊ณต์œ ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋ผ๋ฆฌ๋Š” ๋ณ„๋„์˜ ์ธ์ฆ์ด ํ•„์š”์—†๋‹ค. ๋”ฐ๋ผ์„œ ์—ฌ๋Ÿฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ†ตํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋œ๋‹ค.

OAuth 1.0์ด ๋‚˜์˜จ ๋•Œ๋Š” 2007๋…„์ด๋ฉฐ, ์ดํ›„ ๋ณด์•ˆ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ ์ˆ˜์ • ๋ฒ„์ „์ธ OAuth 1.0 revision A ๊ฐ€ 2008๋…„์— ๋‚˜์™”๋‹ค.

2007๋…„์— ๋‚˜์˜จ OAuth 1.0์€ ๋น„๊ณต์‹ ๋…ผ์˜์ฒด์— ์˜ํ•ด ์ตœ์ดˆ๋กœ ๋งŒ๋“ค์–ด์ง„ ๊ฒƒ์ด๊ณ , 2010๋…„ IETF OAuth ์›Œํ‚น๊ทธ๋ฃน์— ์˜ํ•ด ์ด ํ”„๋กœํ† ์ฝœ์ด IETF ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ๋กœ ๋ฐœํ‘œ๋œ ๊ฒƒ์ด๋‹ค.

ํ˜„์žฌ ๋‚˜์™€ ์žˆ๋Š” OAuth 2.0์€ ๋“œ๋ž˜ํ”„ํŠธ ๋‹จ๊ณ„์— ์žˆ๋Š” ๊ฒƒ์œผ๋กœ, IETF OAuth ์›Œํ‚น๊ทธ๋ฃน์ด ์ฃผ์ถ•์ด ๋˜์–ด ๋งŒ๋“  ๊ฒƒ์ด๋‹ค. OAuth 2.0์€ OAuth 1.0๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์ง€๋งŒ, ์ธ์ฆ ์ ˆ์ฐจ๊ฐ€ ๊ฐ„๋žตํ•˜๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์•„์ง ์ตœ์ข…์•ˆ์ด ๋‚˜์˜ค์ง€ ์•Š์•˜์Œ์—๋„ ์—ฌ๋Ÿฌ ์ธํ„ฐ๋„ท ์„œ๋น„์Šค์—์„œ OAuth 2.0์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. ๋‹ค์Œ ํ‘œ๋Š” ๋Œ€ํ‘œ์ ์ธ ์ธํ„ฐ๋„ท ์„œ๋น„์Šค ๊ธฐ์—…์—์„œ ์‚ฌ์šฉํ•˜๋Š” OAuth์˜ ๋ฒ„์ „์„ ์ •๋ฆฌํ•œ ๊ฒƒ์ด๋‹ค.

[ํ‘œ1 - ์ธํ„ฐ๋„ท ์„œ๋น„์Šคย ๊ธฐ์—…์ด ์‚ฌ์šฉํ•˜๋Š” OAuth ๋ฒ„์ „]

์ธํ„ฐ๋„ท ์„œ๋น„์Šค ๊ธฐ์—… OAuth ๋ฒ„์ „
Facebook 2.0
Foursquare 2.0
Google 2.0
Microsoft (Hotmail, Messenger, Xbox) 2.0
LinkedIn 2.0
Daum(ํ‹ฐ์Šคํ† ๋ฆฌ 2.0
NHN (์˜คํ”ˆAPI) 1.0a
Daum(์š”์ฆ˜, ์˜คํ”ˆAPI) 1.0a
MySpace 1.0a
Netflix 1.0a
ํŠธ์œ„ํ„ฐ 1.0a
Vimeo 1.0a
Yahoo! 1.0a

1-3. OAuth Dance, OAuth 1.0 ์ธ์ฆ ๊ณผ์ •

1-3-1. OAuth Dance?

: OAuth๋ฅผ ์ด์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ธ์ฆ์„ ํ•˜๋Š” ๊ณผ์ •

๋‘ ๋ช…์ด ์ถค์„ ์ถ”๋“ฏ ์ •ํ™•ํ•˜๊ฒŒ ์ •๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๊ณผ์ •์„ ์žฌ๋ฏธ์žˆ๊ฒŒ ๋ช…๋ช…ํ•œ ๊ฒƒ์ด๋‹ค.


1-3-2. OAuth 1.0 ๋Œ€ํ‘œ ์šฉ์–ด

[ํ‘œ2 - OAuth 1.0 ๋Œ€ํ‘œ ์šฉ์–ด]

์šฉ์–ด ์„ค๋ช…
User Service Provider์— ๊ณ„์ •์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด์„œ, Consumer๋ฅผ ์ด์šฉํ•˜๋ ค๋Š” ์‚ฌ์šฉ์ž
Service Provider OAuth๋ฅผ ์‚ฌ์šฉํ•˜๋Š” Open API๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค
Consumer OAuth ์ธ์ฆ์„ ์‚ฌ์šฉํ•ด Service Provider์˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ ค๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด๋‚˜ ์›น ์„œ๋น„์Šค
Request Token Consumer๊ฐ€ Service Provider์—๊ฒŒ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ธ์ฆ๋ฐ›๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๊ฐ’. ์ธ์ฆ์ด ์™„๋ฃŒ๋œ ํ›„์—๋Š” Access Token์œผ๋กœ ๊ตํ™˜ํ•œ๋‹ค.
Access Token ์ธ์ฆ ํ›„ Consumer๊ฐ€ Service Provider์˜ ์ž์›์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค๋ฅผ ํฌํ•จํ•œ ๊ฐ’

1-3-3. OAuth 1.0 ์ธ์ฆ ๊ณผ์ •

diagram

[ํ‘œ3 - ํšŒ์‚ฌ ๋ฐฉ๋ฌธ ๊ณผ์ •๊ณผ OAuth ์ธ์ฆ ๊ณผ์ •]

ํšŒ์‚ฌ ๋ฐฉ๋ฌธ ๊ณผ์ • OAuth ์ธ์ฆ ๊ณผ์ •
1. ๋‚˜๋ฐฉ๋ฌธ์”จ๊ฐ€ ์•ˆ๋‚ด ๋ฐ์Šคํฌ์—์„œ ์—…๋ฌด์ ์ธ ๋ชฉ์ ์œผ๋กœ ๊น€๋ชฉ์ ์”จ๋ฅผ ๋งŒ๋‚˜๋Ÿฌ ์™”๋‹ค๊ณ  ๋งํ•œ๋‹ค. Request Token์˜ ์š”์ฒญ๊ณผ ๋ฐœ๊ธ‰
2. ์•ˆ๋‚ด ๋ฐ์Šคํฌ์—์„œ๋Š” ๊น€๋ชฉ์ ์”จ์—๊ฒŒ ๋‚˜๋ฐฉ๋ฌธ์”จ๊ฐ€ ๋ฐฉ๋ฌธํ–ˆ๋‹ค๊ณ  ์—ฐ๋ฝํ•œ๋‹ค. ์‚ฌ์šฉ์ž ์ธ์ฆ ํŽ˜์ด์ง€ ํ˜ธ์ถœ
3. ๊น€๋ชฉ์ ์”จ๊ฐ€ ์•ˆ๋‚ด ๋ฐ์Šคํฌ๋กœ ์ฐพ์•„์™€ ๋‚˜๋ฐฉ๋ฌธ์”จ์˜ ์‹ ์›์„ ํ™•์ธํ•ด ์ค€๋‹ค. ์‚ฌ์šฉ์ž ๋กœ๊ทธ์ธ ์™„๋ฃŒ
4. ๊น€๋ชฉ์ ์”จ๋Š” ์—…๋ฌด ๋ชฉ์ ๊ณผ ์ธ์  ์‚ฌํ•ญ์„ ์•ˆ๋‚ด ๋ฐ์Šคํฌ์—์„œ ๊ธฐ๋กํ•œ๋‹ค. ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ ์š”์ฒญ ๋ฐ ์ˆ˜๋ฝ
5. ์•ˆ๋‚ด ๋ฐ์Šคํฌ์—์„œ ๋‚˜๋ฐฉ๋ฌธ ์”จ์—๊ฒŒ ๋ฐฉ๋ฌธ์ฆ์„ ๋ฐœ๊ธ‰ํ•ด ์ค€๋‹ค. Access Token ๋ฐœ๊ธ‰
6. ๊น€๋ชฉ์ ์”จ์™€ ๋‚˜๋ฐฉ๋ฌธ์”จ๋Š” ์ •ํ•ด์ง„ ์žฅ์†Œ๋กœ ์ด๋™ํ•ด ์—…๋ฌด๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. Access Token์„ ์ด์šฉํ•ด ์„œ๋น„์Šค ์ •๋ณด ์š”์ฒญ

์œ„์˜ ํ‘œ์— ๋”ฐ๋ฅด๋ฉด, Access Token์€ ๋ฐฉ๋ฌธ์ฆ์ด๋ผ๊ณ  ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด ๋ฐฉ๋ฌธ์ฆ์œผ๋กœ ์‚ฌ์ „์— ํ—ˆ๋ฝ๋œ ๊ณต๊ฐ„์— ์ถœ์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Access Token์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” Consumer๋Š” ์‚ฌ์ „์— ํ˜ธ์ถœ์ด ํ—ˆ๋ฝ๋œ Service Provider์˜ ์˜คํ”ˆ API๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.


1-4. OAuth 2.0

OAuth 1.0์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์•„๋‹Œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ์‚ฌ์šฉํ•˜๊ธฐ ๊ณค๋ž€ํ•˜๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. ๋˜ํ•œ ์ ˆ์ฐจ๊ฐ€ ๋ณต์žกํ•˜์—ฌ OAuth ๊ตฌํ˜„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ œ์ž‘ํ•˜๊ธฐ ์–ด๋ ต๊ณ , ์ด๋Ÿฐ์ €๋Ÿฐ ๋ณต์žกํ•œ ์ ˆ์ฐจ ๋•Œ๋ฌธ์— Service Provider์—๊ฒŒ๋„ ์—ฐ์‚ฐ ๋ถ€๋‹ด์ด ๋ฐœ์ƒํ•œ๋‹ค.

OAuth 2.0์€ ์ด๋Ÿฌํ•œ ๋‹จ์ ์„ ๊ฐœ์„ ํ•œ ๊ฒƒ์ด๋‹ค. OAuth 1.0๊ณผ ํ˜ธํ™˜์„ฑ์ด ์—†๊ณ , ์•„์ง ์ตœ์ข…์•ˆ์ด ๋ฐœํ‘œ๋œ ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ ์—ฌ๋Ÿฌ ์ธํ„ฐ๋„ท ์„œ๋น„์Šค ๊ธฐ์—…์—์„œ OAuth 2.0์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.

1-4-1. OAuth 2.0์˜ ํŠน์ง•

  • ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์•„๋‹Œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ง€์› ๊ฐ•ํ™”
  • ์•”ํ˜ธํ™”๊ฐ€ ํ•„์š” ์—†์Œ HTTPS๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  HMAC์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • Siganature ๋‹จ์ˆœํ™” ์ •๋ ฌ๊ณผ URL ์ธ์ฝ”๋”ฉ์ด ํ•„์š” ์—†๋‹ค.
  • Access Token ๊ฐฑ์‹  OAuth 1.0์—์„œ Access Token์„ ๋ฐ›์œผ๋ฉด Access Token์„ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ํŠธ์œ„ํ„ฐ์˜ ๊ฒฝ์šฐ์—๋Š” Access Token์„ ๋งŒ๋ฃŒ์‹œํ‚ค์ง€ ์•Š๋Š”๋‹ค. OAuth 2.0์—์„œ๋Š” ๋ณด์•ˆ ๊ฐ•ํ™”๋ฅผ ์œ„ํ•ด Access Token์˜ Life-time์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ–ˆ๋‹ค.

์ด์™ธ์—๋„ OAuth 2.0์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์šฉ์–ด ์ฒด๊ณ„๋Š” OAuth 1.0๊ณผ ์™„์ „ํžˆ ๋‹ค๋ฅด๋‹ค. ๊ฐ™์€ ๋ชฉ์ ์˜ ๋‹ค๋ฅธ ํ”„๋กœํ† ์ฝœ์ด๋ผ๊ณ  ์ดํ•ด๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ํ•˜์ง€๋งŒ ์•„์ง ์ตœ์ข…์•ˆ์ด ๋‚˜์˜ค์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ˜„์žฌ๋กœ์„œ๋Š” OAuth 2.0์˜ ํŠน์ง•๋งŒ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์œผ๋กœ๋„ ์ถฉ๋ถ„ํ•  ๋“ฏ ํ•˜๋‹ค.


1-5. Android์—์„œ Facebook Loginํ•ด๋ณด์ž!!!

NAVER๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ๊ณต์‹์ ์ธ ๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ๊ฐ€ ๋”ฐ๋กœ ์žˆ๊ณ , Facebook์ด๋‚˜ Google์€ ๊ณต์‹์€ ์•„๋‹ˆ์ง€๋งŒ(๊ณต์‹ ๋ฌธ์„œ๋„ ์žˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค) ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ฐ€์ด๋“œ๋ฅผ ์นœ์ ˆํ•˜๊ฒŒ ์„ค๋ช…ํ•ด๋†“์•˜๋‹ค. ๊ทธ๋ž˜์„œ ๋‹จ๊ณ„๋งˆ๋‹ค์˜ ์„ธ์„ธํ•œ ์„ค๋ช…๋ณด๋‹ค ์ฃผ์˜ํ•ด์•ผ ํ•  ์  ์œ„์ฃผ๋กœ ์ ์–ด๋ณด์•˜๋‹ค.

  • minSdkVersion๋Š” API 15 ์ด์ƒ์œผ๋กœ ์„ค์ •ํ•œ๋‹ค.
  • ํ•ด์‹œ ํ‚ค์˜ ๊ฒฝ์šฐ, ์ปค๋ฉ˜๋“œ ์ฐฝ์„ ํ†ตํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ฝ”๋“œ๋กœ ํ™•์ธํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

https://developers.facebook.com/docs/facebook-login/android?sdk=maven

http://superwony.tistory.com/13


2. LDAP

2-1. LDAP?

: Lightweight Directory Access Protocol

์ธํ„ฐ๋„ท์ด๋‚˜ ๊ธฐ์—… ๋‚ด์˜ ์ธํŠธ๋ผ๋„ท ๋“ฑ ๋„คํŠธ์›Œํฌ ์ƒ์— ์žˆ๋Š” ํŒŒ์ผ์ด๋‚˜ ์žฅ์น˜๋“ค๊ณผ ๊ฐ™์€ ์ž์› ๋“ฑ์˜ ์œ„์น˜๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ํ”„๋กœํ† ์ฝœ์ด๋‹ค.

๋„คํŠธ์›Œํฌ์—์„œ, ๋””๋ ‰ํ† ๋ฆฌ๋ž€ ์–ด๋–ค ์ž์›์ด ๋„คํŠธ์›Œํฌ ์ƒ์˜ ์–ด๋””์— ์žˆ๋Š”๊ฐ€๋ฅผ ์•Œ๋ ค์ค€๋‹ค. ์ธํ„ฐ๋„ท์„ ํฌํ•จํ•œ TCP/IP ๋„คํŠธ์›Œํฌ์—์„œ, DNS ๋Š” ํŠน์ • ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ์™€ ๋„๋ฉ”์ธ ์ด๋ฆ„ ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋””๋ ‰ํ† ๋ฆฌ ์‹œ์Šคํ…œ์ด๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ๋•Œ๋กœ๋Š” ๋„๋ฉ”์ธ ์ด๋ฆ„ ์กฐ์ฐจ ๋ชจ๋ฅผ ์ˆ˜ ์žˆ๋Š”๋ฐ, LDAP๋Š” ๊ฐœ์ฒด๊ฐ€ ์–ด๋””์— ์žˆ๋Š”์ง€ ์•Œ์ง€ ๋ชปํ•˜๋”๋ผ๋„ ๊ทธ๊ฒƒ์„ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค (๋น„๋ก ์ถ”๊ฐ€์ •๋ณด๊ฐ€ ์žˆ์œผ๋ฉด, ๊ฒ€์ƒ‰์‹œ ๋„์›€์€ ๋˜๊ฒ ์ง€๋งŒ).

LDAP ๋””๋ ‰ํ† ๋ฆฌ๋Š” ์•„๋ž˜์— ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ฒ˜๋Ÿผ, ๊ณ„์ธต์œผ๋กœ ๊ตฌ์„ฑ๋˜๋Š” ๋‹จ์ˆœํ•œ ํŠธ๋ฆฌ ๊ตฌ์กฐ์ด๋‹ค.

  • ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ (์‹œ์ž‘์œ„์น˜ ๋˜๋Š” ํŠธ๋ฆฌ ๊ตฌ์กฐ์˜ ๊ทผ์›), ๊ฐ๊ฐ ์•„๋ž˜๋กœ ๋ป—์–ด๋‚˜๊ฐ„๋‹ค
  • ๊ตญ๊ฐ€๋“ค, ๊ฐ๊ฐ ์•„๋ž˜๋กœ ๋ป—์–ด๋‚˜๊ฐ„๋‹ค
  • ๊ธฐ๊ด€๋“ค, ๊ฐ๊ฐ ์•„๋ž˜๋กœ ๋ป—์–ด๋‚˜๊ฐ„๋‹ค
  • ๊ธฐ๊ด€๋ณ„ ๋‹จ์œ„ (๋ถ€์„œ ๋“ฑ), ๊ฐ๊ฐ์€ ์•„๋ž˜๋กœ ๋ป—์–ด๋‚˜๊ฐ„๋‹ค
  • ๊ฐœ์ฒด๋“ค (์‚ฌ๋žŒ, ํŒŒ์ผ, ๋ฐ ํ”„๋ฆฐํ„ฐ ๋“ฑ๊ณผ ๊ฐ™์€ ๊ณต์œ ์ž์›๋“ค)

2-2. ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋ ๊นŒ?

SSO(Single Sign On) : ํ•œ ๋ฒˆ์˜ ์ธ์ฆ ๊ณผ์ •์œผ๋กœ ์—ฌ๋Ÿฌ ์ปดํ“จํ„ฐ ์ƒ์˜ ์ž์›์„ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ์ธ์ฆ ๊ธฐ๋Šฅ

SSO์˜ ๊ธฐ๋ณธ DB๊ฐ€ ์ฃผ๋กœ LDAP์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

  1. ์‚ฌ์šฉ์ž๊ด€๋ฆฌ์— ์ฃผ๋กœ ์ด์šฉ๋˜๊ณ  ์žˆ๋‹ค.

    ์™œ๋ƒํ•˜๋ฉด, LDAP๋Š” ์ง€์ •๋˜์–ด์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ์˜ ๋‚ด์šฉ์„ ์ฝ์–ด์˜ค๋Š”๋ฐ ์•„์ฃผ ๋น ๋ฅธ ์„ฑ๋Šฅ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

  2. ์ธ์ฆ์„œ๋ฅผ ์ €์žฅํ•˜๋Š”๋ฐ ๋งŽ์ด ์ด์šฉํ•˜๊ณ  ์žˆ๋‹ค.ย  ๊ธˆ์œต๊ถŒ์—์„œ๋Š” ๊ฑฐ์˜ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค


2-3. ๊ธฐํƒ€ ๋“ฑ๋“ฑ

LDAP๋Š” ๋””๋ ‰ํ† ๋ฆฌ ์„œ๋น„์Šค ์—‘์„ธ์Šค๋ฅผ ์œ„ํ•œ ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ํ”„๋กœํ† ์ฝœ์ด๋‹ค.

๋””๋ ‰ํ† ๋ฆฌ ์„œ๋น„์Šค

๋””๋ ‰ํ† ๋ฆฌ๋Š” ๋ฐ์ดํƒ€๋ฒ ์ด์Šค์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋””๋ ‰ํ† ๋ฆฌ ๋‚ด์˜ ์ •๋ณด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์“ฐ๊ธฐ๋ณด๋‹ค๋Š” ์ฝ๊ธฐ ์ž‘์—…์— ๋นˆ๋ฒˆํžˆ ์ด์šฉ๋œ๋‹ค. ๋”ฐ๋ผ์„œ, ๋””๋ ‰ํ† ๋ฆฌ๋Š” ํ†ต์ƒ์ ์œผ๋กœ ์ •๊ทœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋“ค์ด ๋‹ค๋Ÿ‰์˜ ๋ณต์žกํ•œ(high-volume complex) ๊ฐฑ์‹ ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋ณต์žกํ•œ ์ฒ˜๋ฆฌ(transaction) ๋˜๋Š” ๋กค๋ฐฑ ๊ณ„ํš(ํ”„๋กœ๊ทธ๋žจ์— ๋”ฐ๋ผ ๋ฐ”๋กœ ์ „์˜ ์ฒดํฌํฌ์ธํŠธ๋กœ ๋Œ์•„๊ฐ€๊ธฐ, roll-back)์„ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ฆ‰, ๋””๋ ‰ํ† ๋ฆฌ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ, ์ ์–ด๋„ ํ—ˆ์šฉ๋œ๋‹ค๋ฉด, ์ „๋ถ€ ๊ฐฑ์‹ ๋˜๊ฑฐ๋‚˜ ์•„๋ฌด ๊ฒƒ๋„ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š”๋‹ค.

์ž์ฃผ ๋ณ€๊ฒฝ๋˜๋Š” ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์€ LDAP๋ณด๋‹ค๋Š” RDBMS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์˜ณ๋‹ค.


3. ๋งˆ๋ฌด๋ฆฌ

3-1. ์ถœ์ฒ˜

https://d2.naver.com/helloworld/24942

3-2. ๋งˆ๋ฌด๋ฆฌ

๋ฉด์ ‘์„ ๋ณด๊ธฐ ์ „์— ํ•œ ๋ฒˆ์”ฉ ์ฝ๊ณ  ๊ฐ€๋ฉด ๊ฐœ๋…์ ์œผ๋กœ ๋„์›€์ด ๋  ๊ฒƒ ๊ฐ™๋‹ค.