初めてのOAuth・・・・
Webで調べものをしていたら、「〇Auth」との表現があった。最初は、項立てのマル+Authと思ったが、どうも違うことがわかってきた。アルファベットのO+Authだった。
ウィキペディアで見ると、「OAuth (オー オース[1]) は、ブレイン・クックとクリス・メッシーナが始めたオープンプロトコルであり、デスクトップ、モバイル、WebアプリケーションなどにセキュアなAPI認可 (authorization) の標準的手段を提供する。」「マッシュアップによるWebサービスの連携が増え、デジタルアイデンティティの共有が問題となってきた。」「あるWebサービスAにユーザーの個人情報があるとき、そのWebサービスAと別のWebサービスBが連携し、WebサービスAにある個人情報をWebサービスBが自由にアクセスできる状況は好ましくない。そのため、WebサービスのAPIへのアクセスを認可する手段が必要とされていた。」とある。
そう言えば最近、TwitterとFacebookの連携をはじめ、サードパーティアプリとTwitterの連携などが、やたら目についている。どのような仕組みで実現しているのか?またID、パスワードは、どのように管理されているのか気になるところである。
この辺りのことに、OAuthが関連ありそうなので、簡単なサンプルアプリを作って、勉強してみた。
アプリ名は、「Botk」。内容は、自分のTwitterにアプリに組み込んだメッセージを、つぶやく・・・・・とのごくごく簡単なもの。手順は以下の通りだが、サイト「SDN Projyect」http://www.sdn-project.net/labo/oauth.html を参考(ほぼそのまま)にさせていただいた。
1.TwitterへOAuthクライアントの登録
今から作るアプリの情報を、Twitterに登録するが、具体的には以下のサイトにアクセスする。http://dev.twitter.com この際、自分のID、パスワードでログインする。
アプリの名前や説明を、適当に登録する。
2.Access Token と Access Token Secret などの取得
1.の作業で、4つの大事な情報が提供されますから、メモしておく。
a.Consumer key
b.Consumer secret
c.Access Token
d.Access Token Secret
3.PHPでの準備
OAuthライブラリのダウンロード
サンプルコードのセット(Access Token 等)
4.実行
ブラウザから、アプリBotkを起動すると、Twitterにつぶやきました。
最後に、今回レポートをまとめてみて考えた。今後、ソフト開発(特にweb系)は二極化する。一からの手作りソフトとコンポーネントの組合せだけを行うソフトの二つに・・・・・。