読者です 読者をやめる 読者になる 読者になる

TwitterのデータはOAuthで第三者から読まれるし、それを拒否することは出来ない

d:id:mala:20101206:1291624685 より

  • twitterはprotected(許可した人にのみ公開)にしていても(あなたのフォロワーが許可すれば)OAuthで第三者から読まれるし、それを拒否することは出来ない。
  • twitterのDM(特定相手にのみ届くメッセージ)であっても(送信先の相手が許可すれば)OAuthで第三者から読まれるし、それを拒否することは出来ない。
http://d.hatena.ne.jp/mala/20101206/1291624685

id:mamohorPreptwitterはprotectedにしていても(あなたのフォロワーが許可すれば)OAuthで第三者から読まれる、の意味がさっぱり分からない情弱でサーセン

http://b.hatena.ne.jp/entry/d.hatena.ne.jp/mala/20101206/1291624685#bookmark-user-mamohorPrep


どういうことなの? と思ってしまわれたかたへの解説ページです

「OAuth」とは

「OAuth」とは、「Twitter上のあなたのデータに、Twitter公式サイト(twitter.com)以外からアクセスするための仕組み」です。*1

TweenなどのクライアントでIDとパスワードを入力したり、Togetterやtwilogなどの外部サービスで「許可する」のボタンを押したりすると、「OAuthという仕組みを使って、私のデータ(TL,ツイート内容,DM,fav)を読みこみ・書きこみしてもいいよ」という許可を与えたことになります。

許可の一覧は、「設定」→「連携アプリ」で確認でき、その場で許可を取り消すこともできます。



自分が許可していなくても第三者にデータが渡るからくり

さて、「OAuthで許可すると、自分のデータが許可したアプリで読みこみされる」というのはお分かりいただけたと思いますが、
「自分が許可していないのに、自分のデータが読みこみされる」可能性にはお気づきでしょうか?

「ツイートを非公開にする」にしていても、許可した相手経由で自分のツイートが第三者に渡る

設定の「ツイートを非公開にする」にチェックを入れると、自分のツイートは、自分が許可した相手でないと読めなくなります。

逆に言えば、自分が許可した相手からは読めることになります。
さてここで、相手がOAuthでとあるアプリに許可を与えたとしましょう。するとそのアプリは相手のデータ、つまり相手のタイムラインを読みこみできるようになります。


相手のタイムラインには何が表示されていますか?

「ダイレクトメッセージ(DM)」が、送信先経由で第三者に渡る

「ダイレクトメッセージ」は、送信した相手にのみ公開されます。

逆に言えば、送信した相手からは読めることになります。
さてここで、相手がOAuthでとあるアプリに許可を与えたとしましょう。するとそのアプリは相手のデータ、つまり相手のダイレクトメッセージの受信箱を読みこみできるようになります。


相手のダイレクトメッセージの受信箱には何が表示されていますか?

なにそれこわい

本当に第三者に読まれたくない情報はTwitter(に限らないけれど)では入力するべからず。

*1:OAuthの仕組み自体はTwitter固有のものではなく、それ以外のWebサービスでも採用されています。その場合は「Twitter」の部分がそのサイトの名前になります