SlideShare a Scribd company logo
1 of 26
Adwords APICommunity
oAuth2.0対応について
目次
1.自己紹介
2.oAuth2.0について
3.AdWords アカウント
4.今までの接続の仕方
5.oAuth2.0の利用方法
6.AdWords API oAuth2.0対応
7.まとめ
1.自己紹介
名前:竹上
所属:株式会社ロックオン
職業:エンジニア
AdWords API歴:5年ぐらい
2.oAuth2.0について
oAuth2.0について学びましょう
2-1.oAuth2.0を学ぶ前に
AdWords APIをご利用の皆様はoAuth2.0対
応されましたか?
されていない方は、余裕を見て、6月中旬
頃には対応されることをお勧めします。
6月末にはoAuth2.0の利用が必須です。
2-2.oAuth2.0ってなに?
OAuth 2.0は次世代のOAuthプロトコルであり、OAuth 1.0とは後方互換性を
持たない。OAuth 2.0はクライアントとなるウェブアプリケーション、デス
クトップアプリケーション、スマートフォン、リビングデバイス等のアプ
リケーションの開発者に対し、リソースアクセス権限を付与する簡単な方
法を提供する。この規格は開発途上である。 [3] Eran Hammer-Lahavによ
れば、IETF OAuthワークグループは2010年終わりごろまでの範囲での締結
を期待していた[4]が作業は大幅に遅延し、2012年8月にようやくRFCエデ
ィタへ送付された。 仕様は中心になる The OAuth 2.0 Authorization
Framework [5] の他、The OAuth 2.0 Authorization Framework: Bearer
Token Usage [6]など幾つかに分割されている。
引用http://ja.wikipedia.org/wiki/OAuth
2-3.どこで利用している?
・TwitterやFacebook、Googleの各種サービスに利用されています。
・oAuth自体は一般的なのでAdWords API以外でも使えます。
2-4.何がよいのか?
・許可した内容だけ参照ができる
⇒アクセスを許可する側からすると
セキュアであるといえる。
3.AdWordsアカウント
改めてAdWordsアカウントに
ついておさらいを行いましょう
3-1.AdWordsアカウント種類
大きく2つのアカウントに分類される。
・MCCアカウントと呼ばれる、代理店やツールベンダーなど管理向けのアカ
ウント
・AdWords個別の子アカウント、直接の広告主向け
3-2.アカウントの種類の違い
・閲覧範囲が異なる。
MCCアカウント1はAdWordsアカウント4,5,6,7を閲覧操作を行える。
MCCアカウント2はAdWordsアカウント4,5を閲覧操作を行える。
4.今までの接続の仕方
oAuth2.0を利用しない接続の仕方を
おさらいしましょう
4.今までのAPI接続の仕方①
・MCCアカウントにAPIに接続する
ためのキーを取得し管理下のアカ
ウントを操作することができる
構成がスマートなため扱いやすい
4.今までのAPI接続の仕方②
・developerTokenを利用しアカウン
トそれぞれにID/PASSを用いて操
作します。
・MCCアカウント1からAdWordsア
カウント2~5は直接参照はでき
ないが、APIでフル操作はできる
・変更履歴が、AdWordsアカウント
で変更と残る
※developerTokenはMCCアカウントでしか発行できないため、MCCアカウ
ントは最低1つは所有している必要がございます。
5.oAuth2.0の利用方法
oAuth2.0の利用してみましょう
AdWords APIで利用するために
テストアカウントを作成し、対応し
てみましょう
5-1.準備
ここでテストアカ
ウントが作れる
作成すると右のような感じでテスト
アカウントができる
ここにoAuth2.0でアクセス
5-2.google codeでキーを作成
https://console.developer.google.com
にアクセスし、oAuth用のClient ID,Client
secrectを作成
このページへのアクセスは管理者のみ
に絞り原則アクセスしないようにしま
しょう
本番環境のこちらの情報が消えると
APIに通信ができず障害になります。
5-3.アクセストークンの取得
Step1.認証用URLを作成
Step2.codeを取得
Step3.アクセストークン取得
Step1~Step3のStep1は認証する側が用意するURLとなり
Step2は認証するアカウントのログインが求められます。
Step3でログイン後codeと呼ばれる文字列が取得できるの
でこちらを利用し、アクセストークンを取得します。
アクセストークンを利用することでAPIへのアクセスが行
えます。アクセストークンはoAuth2.0経由でAPIアクセス
を利用するうえで必ず必要となります。
5-4.アクセストークンの注意
Step1.認証用URLを作成
Step2.codeを取得
Step3.アクセストークン取得
アクセストークンは実は寿命があります。
こちらは大体3600秒(1h)となります。
では、寿命が来るたびに、codeを取得し
アクセストークンの取得がになることを避ける仕組みがあ
ります。
こちらはリフレッシュトークンと呼ばれるものを利用し
アクセストークンを取得し直すことができます。
AdWordsのようなバックグラウンドでキーワードや
夜間に入稿を行う者の場合はこちらのリフレッシュトーク
ンの
仕組みが必須となります。
イメージとしては、アクセストークンはブラウザが1hごとにID/PASSの自動ログ
アウトをし再度ログインが必要リフレッシュトークンは入力作業を代行してくれる
5-5.refreshトークンを利用
リフレッシュトークンから新しいアクセストークン
を取得
アクセストークンを利用しAPIアクセス
簡易図としては、アクセストークンの有効期限からリフレッシュトークンを利用し
た
新しいアクセストークンを取得するようになる。
アクセストークンの有効期限を確認
紛失すると動かなくなるのでご
注意を
6.AdWords API oAuth2.0対応
前置きが長かったですが、AdWords APIの利用に入ります
。
(既にご利用されている方向けです。
6-1.ポリシーを決める
1.MCCアカウントを利用する 2.ID/PASSのアカウントに対応する
どちらがよいかはご提供するサービス次第
、個人的にはMCCがおすすめ
なぜ
1.認証の管理がフォーマット化しやすい
2.認証するアカウントが混在しにくい
3.oAuthのアクセストークンが利用しやすい
4.モバイルとPCでアカウントが1つの認証
で行える
6-2.MCCでアプリを対応
1.AdWords APIのdeveloperアカウントにログインgoogle consoleからoAuth2.0の認証キーを作成
2.自分自身を許可するようにcode=>アクセストークンの取得=>リフレッシュトークンの取得を実施する
3.APIにアクセスする
mcc アカウント
ログイン
CP1アカウントA
アカウント キャンペーン 1日予算
¥1000
CP2アカウントA ¥1000
CP3アカウントB ¥1500
CP4アカウントC ¥1000
リフレッシュトーク
ンがあるとこの作業
が不要
リフレッシュトークンが1個でMCC配下全
ての情報が取得できる
6-3.ID/PASSでアプリ対応
1.AdWords APIのdeveloperアカウントにログインgoogle consoleからoAuth2.0の認証キーを作成
2.個別のID/PASSに入りcode=>アクセストークンの取得=>リフレッシュトークンの取得を実施する
3.APIにアクセスする
個別アカウント
ログイン
CP1アカウントA
アカウント キャンペーン 1日予算
¥1000
CP2アカウントA ¥1000
リフレッシュトーク
ンがあるとこの作業
が不要
MCCアカウントと異なり、個別アカウントの
アカウントAしかみれない
リフレッシュトークンが1個で1アカウント複数
アカウントの場合は全てリフレッシュトークン
を保存する必要がある
7.まとめ
1.全体的なまとめ
・oAuth2.0のClientIDの管理は厳重にしましょう
・リフレッシュトークンはなくさないように
1.これからAdWords APIをご利用される方
・AdWords のアカウント構成を理解しましょう
・なるべくMCCアカウントを利用した実装にしましょう
2.今現在ご利用中の方
・ID/PASSの場合は、個別でoAuth2.0を対応する必要があるので、非常に時間がかかります。
移行スケジュールとつくり移行しましょう
・ID/PASSの場合はMCCアカウントに移行するのが手間が省けます。
3.参考サイト
OAuth 2.0 http://oauth.net/2/
OAuth 2.0 Authentication https://developers.google.com/adwords/api/docs/guides/authentication
OAuth2.0の備忘録的まとめ http://www.ari-hiro.com/blog/2012/12/30/oauth2-summary
ご清聴ありがとうございました。

More Related Content

Similar to Ad words api oauth2.0について

Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_insideAuthlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_insideTatsuo Kudo
 
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawawsOAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawawsTatsuo Kudo
 
Opauthライブラリによるtwitter,facebook認証について
Opauthライブラリによるtwitter,facebook認証についてOpauthライブラリによるtwitter,facebook認証について
Opauthライブラリによるtwitter,facebook認証について松本 雄貴
 
初めてのAuth0ハンズオン
初めてのAuth0ハンズオン初めてのAuth0ハンズオン
初めてのAuth0ハンズオンHisashi Yamaguchi
 
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向Tatsuo Kudo
 
Google+ API の紹介 - Google Social Developers 2011 Winter
Google+ API の紹介 - Google Social Developers 2011 WinterGoogle+ API の紹介 - Google Social Developers 2011 Winter
Google+ API の紹介 - Google Social Developers 2011 WinterNobuhiro Nakajima
 
How to create android's c to c EC APP !
How to create android's c to c EC APP !How to create android's c to c EC APP !
How to create android's c to c EC APP !Saiki Iijima
 
LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】
LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】
LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】TYamamoto1007
 
ソーシャルログイン5分クッキング
ソーシャルログイン5分クッキングソーシャルログイン5分クッキング
ソーシャルログイン5分クッキングSaiki Iijima
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版貴志 上坂
 
Authlete overview
Authlete overviewAuthlete overview
Authlete overviewmtisol
 
#3 Go_SaaS Onboarding Seminar Auth0 20191023
#3 Go_SaaS Onboarding Seminar Auth0 20191023#3 Go_SaaS Onboarding Seminar Auth0 20191023
#3 Go_SaaS Onboarding Seminar Auth0 20191023Rica Nakajima
 
Line messaging api ハンズオン資料 ver1.2
Line messaging api ハンズオン資料 ver1.2Line messaging api ハンズオン資料 ver1.2
Line messaging api ハンズオン資料 ver1.2hajime sato
 
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW日本マイクロソフト株式会社
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルMasaru Kurahayashi
 
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Tatsuo Kudo
 
Azure の ID 管理サービスに LINE ログインを組み込もう
Azure の ID 管理サービスに LINE ログインを組み込もうAzure の ID 管理サービスに LINE ログインを組み込もう
Azure の ID 管理サービスに LINE ログインを組み込もうYuta Matsumura
 
Autify User Meetup LT "Slack通知"
Autify User Meetup LT "Slack通知"Autify User Meetup LT "Slack通知"
Autify User Meetup LT "Slack通知"Atsushi Funahashi
 
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチKazuya Sugimoto
 

Similar to Ad words api oauth2.0について (20)

Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_insideAuthlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
 
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawawsOAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
 
GDG Shikoku 2013
GDG Shikoku 2013GDG Shikoku 2013
GDG Shikoku 2013
 
Opauthライブラリによるtwitter,facebook認証について
Opauthライブラリによるtwitter,facebook認証についてOpauthライブラリによるtwitter,facebook認証について
Opauthライブラリによるtwitter,facebook認証について
 
初めてのAuth0ハンズオン
初めてのAuth0ハンズオン初めてのAuth0ハンズオン
初めてのAuth0ハンズオン
 
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
利用者本位のAPI提供に向けたアイデンティティ (ID) 標準仕様の動向
 
Google+ API の紹介 - Google Social Developers 2011 Winter
Google+ API の紹介 - Google Social Developers 2011 WinterGoogle+ API の紹介 - Google Social Developers 2011 Winter
Google+ API の紹介 - Google Social Developers 2011 Winter
 
How to create android's c to c EC APP !
How to create android's c to c EC APP !How to create android's c to c EC APP !
How to create android's c to c EC APP !
 
LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】
LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】
LINEDC新年LT会【LINEで個人開発を始めて1年でLAEになれた話】
 
ソーシャルログイン5分クッキング
ソーシャルログイン5分クッキングソーシャルログイン5分クッキング
ソーシャルログイン5分クッキング
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
 
Authlete overview
Authlete overviewAuthlete overview
Authlete overview
 
#3 Go_SaaS Onboarding Seminar Auth0 20191023
#3 Go_SaaS Onboarding Seminar Auth0 20191023#3 Go_SaaS Onboarding Seminar Auth0 20191023
#3 Go_SaaS Onboarding Seminar Auth0 20191023
 
Line messaging api ハンズオン資料 ver1.2
Line messaging api ハンズオン資料 ver1.2Line messaging api ハンズオン資料 ver1.2
Line messaging api ハンズオン資料 ver1.2
 
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
【de:code 2020】 Apps on Azure AD - アプリケーション連携 WHY と HOW
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクル
 
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
 
Azure の ID 管理サービスに LINE ログインを組み込もう
Azure の ID 管理サービスに LINE ログインを組み込もうAzure の ID 管理サービスに LINE ログインを組み込もう
Azure の ID 管理サービスに LINE ログインを組み込もう
 
Autify User Meetup LT "Slack通知"
Autify User Meetup LT "Slack通知"Autify User Meetup LT "Slack通知"
Autify User Meetup LT "Slack通知"
 
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
 

Ad words api oauth2.0について