• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
기획자를 위한 OAuth
 

기획자를 위한 OAuth

on

  • 11,185 views

KTH 화성에서온 개발자, 금성에서온 기획자 시리즈

KTH 화성에서온 개발자, 금성에서온 기획자 시리즈
기획자를 위한 쉬운 OAuth 소개

Statistics

Views

Total Views
11,185
Views on SlideShare
7,438
Embed Views
3,747

Actions

Likes
35
Downloads
172
Comments
3

17 Embeds 3,747

http://mobicon.tistory.com 3458
http://techit.kr 72
http://www.scoop.it 58
http://hoonihoon.tistory.com 53
http://dearmai.net 25
http://us-w1.rockmelt.com 17
https://twimg0-a.akamaihd.net 16
https://twitter.com 15
https://si0.twimg.com 14
http://dev.geekple.com 6
http://a0.twimg.com 5
http://faavorite.com 2
http://blog.naver.com 2
https://www.facebook.com 1
https://www.rebelmouse.com 1
http://geekple.com 1
http://www.google.co.kr 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

13 of 3 previous next Post a comment

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    기획자를 위한 OAuth 기획자를 위한 OAuth Presentation Transcript

    • 기획자를 위한 OAuth,모바일 세상의 딱풀 박민우PD 기술전략팀 2012/07/18
    • 수많은 서비스들..수많은 패스워드 2
    • Password 패스워드! 비번PW
    • ① 서비스별 다른 패스워드 사용 ② 패스워드는 2주마다 꼭 교체 ③ 패스워드는 - 8글자 이상 - 개인정보 관련 키워드 X - 특수문자사용스마트한 김모씨 4
    • 한 곳에서 ID/PW 관리/인증OpenID authentication(인증)
    • 2006년 11월 어느날.. 저것 만으로는 우리 API 제어에 적합하지 않은데..나, 트위터..우리는 인증 (Authentication)뿐만 아니라API 사용 권한 부여(Authorization) 할 수 있는방법도 필요해! Oauth = Authentication + Authorization
    • OAuth란?1. 아임인에 트위터 비번저장 없이 발도장 트윗 날리기2. 트위터앱에 트위터 비번저장 없이 트위터 쓰기 3초
    • 사랑의 (API) 트라이앵글 consumer 어떤앱 트위터 APIuser service provider
    • An open protocol to allow secure authorization in a simple and standard method from web, mobile and desktop applications. - oauth.netHOW?!“인증 토큰” • 서비스에 패스워드 전달없이 인증 • 필요한 기능만 부여 할 수 있음 • 언제나 다시 권한 취소 가능 • 패스워드 변경시에도 유효
    • 인증 토큰? 토큰?필요한 기능만 제한적으로 부여 할 수 있음
    • OAuthAPI를 사용하는 서비스(consumer)에 비밀번호를 저장하지 않고인증 토큰을 저장해 놓고 인증토큰(Access Token)으로 API 사용인증 토큰 (Access Token) 토큰 (Token) 토큰 (Token) 토큰 (Token)..
    • 발렛파킹! 나, 벤츠..인증 토큰 1시간만 유효함 1km만 주행가능 트렁크는 열 수 없음
    • API 사용자 오~ 새로운 트위터 앱이 나왔군 써볼까? 이 듣보잡 앱에 내 트위터 비밀번호를 저장하라고?
    • API 서비스 제공자 이제 API를 완성했으니 우리 서비스가 널리 퍼질 수 있겠지? 우리 서비스 ID/PW 가 듣보잡 앱에 저장되어야 하는건가?!
    • How does it work?
    • consumer 어떤앱 ① Consumer가 Service Provider에 등록한다 트위터 ②user User가 service provider Service Provider에 로그인한다
    • 조금 더 자세히.. consumer 어떤앱 ① Consumer가 Service Provider에 등록하고 Consumer key를 받아서 저장 트위터 ② user User가 service provider Service Provider에 로그인하고 인증토큰(Access Token)을 Consumer에 저장한다
    • 참고로.. Consumer key = API key 라고 불리기도.. .
    • Consumer가 Service provider에 등록하기
    • Consumer가 Service provider에 등록완료
    • USER 로그인 consumer 어떤앱 ① ② 트위터로 로그인 사용자를 하겠어요- 트위터 로그인 화면으로.. ④ Consumer에 인증토큰 전달 트위터 ③ user 트위터 로그인 service provider
    • 앱 사용시 consumer 어떤앱 트위터로 발도장 인증 토큰으로 공유! 트위터 API 사용 트위터 user service provider
    • Oauth 프로세스
    • 사용자의 관점
    • 트위터 주소창으로 이동 로긴 안되있음 권한을 요청하는부여할 앱 정보권한정보 로그인 창
    • 현재 로긴된 트위터 사용자로그인 되어있는 경우
    • 권한 취소https://twitter.com/settings/applications
    • 나 개발자.. 이걸 어느 세월에 다 구현하나요? 왠만한 언어용으로 라이브러리 제공!
    • Oauth 시나리오 1 이런.. 트위터 로그인 해놓은 내 핸드폰 분실했네! 트위터/페이스북 설정에서 해당 앱의 접근 권한 취소 (revoke) (트위터 비밀번호를 바꿀 필요 없음)
    • Oauth 시나리오 2 트위터 비밀번호 노출되었어요! 비밀번호 변경하면, 모든 앱들 다시 인증? 비밀번호 바꿔도 API사용 서비스(consumer)에 저장된 인증토큰은 그대로 유효 서비스 사용 지장 없음
    • Oauth 시나리오 3 트위터 로그인을 해놓은 Path 가 해킹당해서 모든 토큰이 해커에게 노출 되었다면? 트위터가 Path를 인증 거부한다. Path에 저장된 모든 트위터 토큰 인증 거부됨
    • 아임인 핫스팟에서 바로 아임인 저장하기 (consumer) 아임리얼맛집 모바일 앱 사용 Oauth를 통한 API접근 유저 (service provider) 아임인
    • 푸딩카메라에서 바로 푸딩투 저장하기 (consumer) 푸딩카메라 Oauth를 통한 모바일 앱 사용 API접근 유저 현재는 푸딩 카메라에서 (service provider) 푸딩투 푸딩투 앱을 호출 방식
    • 결국은 다 같은 OAuth1.트위터 앱이 트위터 Oauth 사용2.어떤 앱이 컨텐츠를 트위터로 내보내기 위해 Oauth 사용3.자신의 서비스를 트위터 아이디로 가입하게 open
    • Oauth 의 버젼들 보안 문제가 있는 버전. 1.0 절대로 사용하면 안됨 (아마 spec을 찾을 수도 없겠지만..) 안정적이고 사용해도 됨 1.0a Http상에서도 동작하도록 복잡한 암호화를 함 Https가 아닌 환경에서도 동작하나.. 복잡하다 IEFT에 의해서 계속 표준화 진행중 3가지 인증방법 제공 2.0 - bearer token 방식은 안정적이며 구현이 간단. SSL 필요 - 다른 2가지는 계속 수정 중 (MAC token, SAML)
    • Oauth는 API 확산을 위해 필수API 서비스 프로바이더는모바일과 웹앱을 위해 Oauth 제공 1.0a 2.0(대표적인)OAuth서비스프로바이더
    • 어떤 Oauth 버전을 사용해야 하나요? Oauth 2.0의 bearer token 방식을 쓰세요 (Facebook 도 쓴답니다) YesAPI가 https를사용하나요? No Oauth 1.0a를 쓰세요 (Twitter 방식)
    • Oauth 는 만병통치약인가?
    • Oauth가 적절하지 않은 경우1.사람이 개입되지 않는 서비스 서버-서버 간 통신 유저가 개입되지 않는 APIOauth : 3-legged 2-legged 에 사용불가 Client Serveruser Server (service provider) Client (consumer)
    • Oauth가 적절하지 않은 경우2. 상업적인 수준의 보안을 요구할때 1억원을 이체할때 집을 계약할 때
    • Inspired by“OAuth:The Big Picture” -apigeehttp://youtu.be/M42ouAgPCQI