oauthってなに?
DESCRIPTION
Oauthについて適当にまとめましたTRANSCRIPT
Oauthってなに?
2013/11/06 Twitter: @tatsuaki_w
Oauthとは
} 読み方: オーオース
} あらかじめ信頼関係を構築したサービス間でユーザの同意のもとにセキュアにユーザの権限を受け渡しすることが出来るオープンプロトコル
早い話
} 例:Twitterアカウントを持っているとして
} Twitterを別なサービスから利用したり、別なサービスのユーザアカウントとして使えるしくみ
Oauthを利用できるサービス
� Yahoo!
� Google+
� などなどたくさんのサービスで利用できます
メリットは?(twitterをOauthで利用したら)
� 別なサービスから機能を利用出来る � いちいちサービスへユーザー登録しなくても、 Twitterの
アカウントでログイン出来る � サービスを退会しなくてもTwitterの設定画面で連結を切
ればそのサービスのTwitterへのアクセスを拒否出来る この際にTwitter自体のパスワードは そのサービスに登録しなくてもよい
ざっくり利用のながれ
ユーザーがついばと!にアクセス
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
サービスを使ってみよう
ついばと!→Twitterへ許可申請
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
Aさんのアカウントでつぶやきたいです
Twitter →ついばと!へ ユーザーへの申請依頼
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
じゃあAさんから許可もらってね
ついばと!→ユーザーへ Twitterでの認証許可依頼
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
Aさん Twitterに言っておいたので、許可して
Twitterでのサービスの Oauth利用許可依頼
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
ついばと!のTwitterのアクセスを許可します
ついばと!への Twitterアカウントの使用の許可
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
了解。ついばと!のCさんのtwitterアカウントへのアクセスを許可します
Oauthを使ってのつぶやき機能利用
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er
これをAさんのアカウントでつぶやいてください
ほげほげ
実際のつぶやき
C
Twi$erアカウントを持つCさん
ついばと!
Twi$er ほげほげとつぶやきました
ほげほげ
超ざっくりこんな感じ
} 本当はサーバー側はもうちょっといろいろやりとりをしています。
} 開発者の方の参考 ↓
} OAuthプロトコルの中身をざっくり解説してみるよ
Oauthの機能:レベルを選択出来る
} Twitterの場合
} Level.1 Read Only } プロフィールやフォローしているユーザーを見る
} Level.2 Read Write } つぶやきやプロフィールの編集が可能
} Level.3 Read, Write, & Private Message } DMを送ったり削除したりも可能
注意点
• 例えばTwitterのOauthを使った悪意のあるアプリに登録を許可したら・・・
A
つぶやきとか見れるだけかー
Twi$er
Twi$erアカウントを持つAさん
悪意のあるアプリ
許可する
• スパムのDMを送りつけたり勝手にフォローを全部外したり、変態ツイートを繰り返したり出来る
注意点
A
Aさんから許可もらってるから つぶやきますわ
Twi$er
おっぱい!おっぱい!
Twi$erアカウントを持つAさん
悪意のあるアプリ
なにかあったら・・・ 外部アプリケーションとの連携を解除!
使わないアプリケーションは 削除しておくことをオススメします
アクセスを拒否して!
A
Twi$er
おっぱい!おっぱい!
Twi$erアカウントを持つAさん
Se+ng→Apps(設定→アプリ)に一覧があります
そのサービスの連携を切ったとしても。。。
→100%安心出来るわけではない ※サービスがTwitterから取得出来る情報を別途保存していた場合は、その情報はそのサービスからしか削除出来ません。 (例えばついばと!では利用した人のTwitterのアカウントIDだけを保存しています。他の情報は保存していません。)
Oauthのここは安心} 個人情報は取得できません } →アドレスやパスワードの流出がない
} →Oauthに切り替わる前のBasic認証ではパスワードも受渡していました。ひえー
} つまり完全な乗っ取り(登録者が操作不能な状態)はないので、何かあればすぐ連携を切ってしまいましょう。
} 使っていないアプリは連携を切っておくことをオススメします。
おわり 何かあればこちらまで→ @tatsuaki_w