SlideShare une entreprise Scribd logo
1  sur  6
‘2011 소셜커머스 ProjectS                                                            개발/소스
                                                                               2011.07.26– Ver. 0.1




                       SNS API분석 : OAuth
                [Source Code ; Twitter, Facebook, Google, MSN, Nate, ME2DAY]




                                            2011.07
                                               .
                                               .
                                               .
                                        IT사업팀 개발1팀
‘2011 소셜커머스 ProjectS
                                 2011.07.26– Ver. 0.1




   1. Project 개요

   2. OAuth 개념도

   3. SNS 별 Consumer Key 획득 방법

   4. Source Code

   5. 분석 결과 및 진행예정 안
‘2011 소셜커머스 ProjectS
                                                                                                                           2011.07.26– Ver. 0.1


  1. Project 개요
      소셜커머스의 소셜화 운영을 위해 SNS의 API를 활용하고자 함.
      SNS API 활용을 위해서는 SNS에 인증이 필요하고, 이 인증방식의 표준으로 OAuth 를 제공하고 있음.
      따라서, OAuth 인증방식의 구조를 파악하고 구현 테스트 하여, SNS API를 손쉽게 사용할 수 있도록 하기 위함.

  2. OAuth 개념도

                               Request
                                                                                               Access
                                Token
                                                                                               Token
                     Request                           Authorize                     Access
   Consumer           Token                              URL                         Token
                       요청                                접속                           요청
                                                                                                                        SNS API
                                                                                                                       서비스 이용
                                     Request                                 인증                       Access
  Service Provider                    Token                                   및                       Token
                                       전달                                    로그인                       발급

                ※ Consumer key 를 발급받고, Request Token을 요청한 후, Request Token으로 Access Token 을 요청하여 인증 하는 방법


   ◈ 변수흐름
                                    Request Token                                                                    Access Token

                                                                                         oauth_consumer_key
    oauth_contomer_key
                                                                                         oauth_token
    oauth_signature_method        oauth_token                                            oauth_signature_method
    oauth_signature
                                  oauth_token_secret               oauth_token           oauth_signature          oauth_token
    oauth_timestamp
                                  oauth_callback_confirme          oauth_verifiler       oauth_timestamp          oauth_token_sercret
    oauth_nonce
                                  d                                                      oauth_nonce
    oauth_version
                                                                                         oauth_version
    oauth_callback
                                                                                         oauth_verifire
‘2011 소셜커머스 ProjectS
                                                                                                              2011.07.26– Ver. 0.1


  3. SNS 서비스 별 Consumer Key 획득 방법 : 사이트 URL 및 CallBack URL 등록
     서비스 명                  신청 메뉴                                      신청 URL                             비고
      Twitter   Create an app                         https://dev.twitter.com                       비교적 간단
    Facebook    앱                                     http://developers.facebook.com                비교적 간단
     Google     Create ID for web application         https://code.google.com/apis/console          상세한 안내
      MSN       My applications                       https://manage.dev.live.com                   방대한 자료(검색 난해)
      Nate      Consumer key 발급신청                     http://devsquare.nate.com                     구현의 어려움
     Me2day     me2API 애플리케이션 키 요청                    http://me2day.net/api/front/appkey            Naver인증방식과 다름


  4. Source Code : 개발에 참조된 URL
     서비스 명                                                        구현 개요
                twitteroauth 사용 구현 -
      Twitter
                (http://net.tutsplus.com/tutorials/php/how-to-authenticate-users-with-twitter-oauth/)
    Facebook    facebook-php-sdk 사용 구현 (https://github.com/facebook/php-sdk/)
     Google     Google OAuth 2.0 구현 - (http://code.google.com/apis/accounts/docs/OAuth2.html)
      MSN       Windows Live Oauth 2.0 구현 - (http://msdn.microsoft.com/en-us/library/hh243647.aspx)
      Nate      네이트 인증 API 개발자 가이드 참조 - (http://devsquare.nate.com/openApi/nateAuthAPIDevGuide)
     Me2day     미투데이 사용자 인증 참조 – (http://dev.naver.com/openapi/apis/me2day/me2api_intro#metwo3)

                                   ※ 상세 내역은 “SNS API분석:OAuth[Source Code;Twitter, Facebook, Google, MSN, Nate, ME2DAY]” 참조
                                       ※ PHP OAuth 를 사용하기 위하여 PECL 및 OAuth가 설치되어야 하며 CULR을 사용할 수 있어야 함
‘2011 소셜커머스 ProjectS
                                                                     2011.07.26– Ver. 0.1


  5. 분석 결과 및 진행 예정 안

    1) 분석 결과

        OAuth 라는 표준안을 기준으로, 각 SNS OAuth 마다 권장방식이 다름

        제공 매뉴얼(자료)의 부재 ; 국내자료는 물론, 국외 자료도 비교적 적은 상황

        서비스 속도의 문제 : 국외 서비스의 속도 문제

        제한된 호출 ; 각 SNS별로 제한된 호출로 서비스 이용

        서비스 제공업체(Service Provider) 의존적
         (Daum 같은 경우 표준 PHP OAuth 를 이용하고 있지만, 정상적인 값이 리턴되는 것을 확인할 수 없었음)



    2) 진행 예정 안

        SNS API별 마케팅 가능한 요소 검색 ; 트위터의 DM, Facebook의 쪽지 기능 등

        OAuth Source 최적화

        SNS API 속도개선을 위한 로직 설계
‘2011 소셜커머스 ProjectS
                           2011.07.26– Ver. 0.1




                       감사합니다

Contenu connexe

Similaire à SNS API분석 : OAuth 분석

KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718
KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718
KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718
KTH, 케이티하이텔
 
생활코딩 oauth 소개
생활코딩 oauth 소개생활코딩 oauth 소개
생활코딩 oauth 소개
Binseop Ko
 
How to make Successful Open APIs for Startups (2012)
How to make Successful Open APIs for Startups (2012)How to make Successful Open APIs for Startups (2012)
How to make Successful Open APIs for Startups (2012)
Channy Yun
 
소셜 네트워크 앱 개발
소셜 네트워크 앱 개발소셜 네트워크 앱 개발
소셜 네트워크 앱 개발
Kenu, GwangNam Heo
 
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016
모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016
모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016
Amazon Web Services Korea
 
Web2.0 기술 동향 및 web 보안 취약성 분석
Web2.0 기술 동향 및 web 보안 취약성 분석Web2.0 기술 동향 및 web 보안 취약성 분석
Web2.0 기술 동향 및 web 보안 취약성 분석
nam kwangjin
 

Similaire à SNS API분석 : OAuth 분석 (20)

KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718
KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718
KTH_Detail day_화성에서 온 개발자 금성에서 온 기획자 시리즈_7차(2)_Oauth_박민우_20120718
 
생활코딩 oauth 소개
생활코딩 oauth 소개생활코딩 oauth 소개
생활코딩 oauth 소개
 
Auth
AuthAuth
Auth
 
Week7. sso and oauth
Week7. sso and oauthWeek7. sso and oauth
Week7. sso and oauth
 
Open platform/API overview
Open platform/API overviewOpen platform/API overview
Open platform/API overview
 
XECon2015 :: [3-3] 김찬희 & 전창완- 네이버 아이디 로그인 소개 및 Laravel 적용
XECon2015 :: [3-3] 김찬희 & 전창완- 네이버 아이디 로그인 소개 및 Laravel 적용XECon2015 :: [3-3] 김찬희 & 전창완- 네이버 아이디 로그인 소개 및 Laravel 적용
XECon2015 :: [3-3] 김찬희 & 전창완- 네이버 아이디 로그인 소개 및 Laravel 적용
 
How to make Successful Open APIs for Startups (2012)
How to make Successful Open APIs for Startups (2012)How to make Successful Open APIs for Startups (2012)
How to make Successful Open APIs for Startups (2012)
 
RED HAT SINGLE SIGN-ON
RED HAT SINGLE SIGN-ONRED HAT SINGLE SIGN-ON
RED HAT SINGLE SIGN-ON
 
소셜 네트워크 앱 개발
소셜 네트워크 앱 개발소셜 네트워크 앱 개발
소셜 네트워크 앱 개발
 
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
Amazon Cognito를 활용한 모바일 인증 및 보안, 자원 접근 제어 기법 - AWS Summit Seoul 2017
 
모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016
모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016
모바일게임 플랫폼 쉽게 개발하기 :: 박선용 :: Gaming on AWS 2016
 
Clova Tech Summit 세션3 :Clova extension에서 OAuth 계정 연동 구현
Clova Tech Summit 세션3 :Clova extension에서 OAuth 계정 연동 구현Clova Tech Summit 세션3 :Clova extension에서 OAuth 계정 연동 구현
Clova Tech Summit 세션3 :Clova extension에서 OAuth 계정 연동 구현
 
API Management Reference Architecture
API Management Reference ArchitectureAPI Management Reference Architecture
API Management Reference Architecture
 
리로그인 Relogin: 코드스테이츠 데모데이
리로그인 Relogin: 코드스테이츠 데모데이리로그인 Relogin: 코드스테이츠 데모데이
리로그인 Relogin: 코드스테이츠 데모데이
 
100.RED HAT SINGLE SIGN-ON
100.RED HAT SINGLE SIGN-ON100.RED HAT SINGLE SIGN-ON
100.RED HAT SINGLE SIGN-ON
 
OAuth
OAuthOAuth
OAuth
 
20140820 멀티플랫폼 인증서버_개발
20140820 멀티플랫폼 인증서버_개발20140820 멀티플랫폼 인증서버_개발
20140820 멀티플랫폼 인증서버_개발
 
비트코인에 기록하다. 포에버잇 소개 및 발전 방향
비트코인에 기록하다. 포에버잇 소개 및 발전 방향비트코인에 기록하다. 포에버잇 소개 및 발전 방향
비트코인에 기록하다. 포에버잇 소개 및 발전 방향
 
Web2.0 기술 동향 및 web 보안 취약성 분석
Web2.0 기술 동향 및 web 보안 취약성 분석Web2.0 기술 동향 및 web 보안 취약성 분석
Web2.0 기술 동향 및 web 보안 취약성 분석
 
API Gateway를 이용한 토큰 기반 인증 아키텍처
API Gateway를 이용한 토큰 기반 인증 아키텍처API Gateway를 이용한 토큰 기반 인증 아키텍처
API Gateway를 이용한 토큰 기반 인증 아키텍처
 

SNS API분석 : OAuth 분석

  • 1. ‘2011 소셜커머스 ProjectS 개발/소스 2011.07.26– Ver. 0.1 SNS API분석 : OAuth [Source Code ; Twitter, Facebook, Google, MSN, Nate, ME2DAY] 2011.07 . . . IT사업팀 개발1팀
  • 2. ‘2011 소셜커머스 ProjectS 2011.07.26– Ver. 0.1 1. Project 개요 2. OAuth 개념도 3. SNS 별 Consumer Key 획득 방법 4. Source Code 5. 분석 결과 및 진행예정 안
  • 3. ‘2011 소셜커머스 ProjectS 2011.07.26– Ver. 0.1 1. Project 개요 소셜커머스의 소셜화 운영을 위해 SNS의 API를 활용하고자 함. SNS API 활용을 위해서는 SNS에 인증이 필요하고, 이 인증방식의 표준으로 OAuth 를 제공하고 있음. 따라서, OAuth 인증방식의 구조를 파악하고 구현 테스트 하여, SNS API를 손쉽게 사용할 수 있도록 하기 위함. 2. OAuth 개념도 Request Access Token Token Request Authorize Access Consumer Token URL Token 요청 접속 요청 SNS API 서비스 이용 Request 인증 Access Service Provider Token 및 Token 전달 로그인 발급 ※ Consumer key 를 발급받고, Request Token을 요청한 후, Request Token으로 Access Token 을 요청하여 인증 하는 방법 ◈ 변수흐름 Request Token Access Token oauth_consumer_key oauth_contomer_key oauth_token oauth_signature_method oauth_token oauth_signature_method oauth_signature oauth_token_secret oauth_token oauth_signature oauth_token oauth_timestamp oauth_callback_confirme oauth_verifiler oauth_timestamp oauth_token_sercret oauth_nonce d oauth_nonce oauth_version oauth_version oauth_callback oauth_verifire
  • 4. ‘2011 소셜커머스 ProjectS 2011.07.26– Ver. 0.1 3. SNS 서비스 별 Consumer Key 획득 방법 : 사이트 URL 및 CallBack URL 등록 서비스 명 신청 메뉴 신청 URL 비고 Twitter Create an app https://dev.twitter.com 비교적 간단 Facebook 앱 http://developers.facebook.com 비교적 간단 Google Create ID for web application https://code.google.com/apis/console 상세한 안내 MSN My applications https://manage.dev.live.com 방대한 자료(검색 난해) Nate Consumer key 발급신청 http://devsquare.nate.com 구현의 어려움 Me2day me2API 애플리케이션 키 요청 http://me2day.net/api/front/appkey Naver인증방식과 다름 4. Source Code : 개발에 참조된 URL 서비스 명 구현 개요 twitteroauth 사용 구현 - Twitter (http://net.tutsplus.com/tutorials/php/how-to-authenticate-users-with-twitter-oauth/) Facebook facebook-php-sdk 사용 구현 (https://github.com/facebook/php-sdk/) Google Google OAuth 2.0 구현 - (http://code.google.com/apis/accounts/docs/OAuth2.html) MSN Windows Live Oauth 2.0 구현 - (http://msdn.microsoft.com/en-us/library/hh243647.aspx) Nate 네이트 인증 API 개발자 가이드 참조 - (http://devsquare.nate.com/openApi/nateAuthAPIDevGuide) Me2day 미투데이 사용자 인증 참조 – (http://dev.naver.com/openapi/apis/me2day/me2api_intro#metwo3) ※ 상세 내역은 “SNS API분석:OAuth[Source Code;Twitter, Facebook, Google, MSN, Nate, ME2DAY]” 참조 ※ PHP OAuth 를 사용하기 위하여 PECL 및 OAuth가 설치되어야 하며 CULR을 사용할 수 있어야 함
  • 5. ‘2011 소셜커머스 ProjectS 2011.07.26– Ver. 0.1 5. 분석 결과 및 진행 예정 안 1) 분석 결과  OAuth 라는 표준안을 기준으로, 각 SNS OAuth 마다 권장방식이 다름  제공 매뉴얼(자료)의 부재 ; 국내자료는 물론, 국외 자료도 비교적 적은 상황  서비스 속도의 문제 : 국외 서비스의 속도 문제  제한된 호출 ; 각 SNS별로 제한된 호출로 서비스 이용  서비스 제공업체(Service Provider) 의존적 (Daum 같은 경우 표준 PHP OAuth 를 이용하고 있지만, 정상적인 값이 리턴되는 것을 확인할 수 없었음) 2) 진행 예정 안  SNS API별 마케팅 가능한 요소 검색 ; 트위터의 DM, Facebook의 쪽지 기능 등  OAuth Source 최적화  SNS API 속도개선을 위한 로직 설계
  • 6. ‘2011 소셜커머스 ProjectS 2011.07.26– Ver. 0.1 감사합니다