MobstarWorldのOAuth利用スパムについて

最近、エンジニアとして調子悪いので、他人のブログエントリから復帰のタイミングを探っていきます。
今日はまちゅさんのこのエントリに注目!!

OAuthを悪用したTwitter DMスパムが登場 - まちゅダイアリー(2009-08-01)

■ まず、言っておきたいこと

  • この件は、OAuthのセキュリティ脆弱性の件とは異なる
  • twitterのUIが問題だと思っているので、これでOAuth使ってるとこ全体が悪者扱いされたら会社辞める

■ 整理

  • 「自分のフォロワーにDM送信」する機能がtwitterAPIで実装されている
  • twitterはユーザーに対して、「MobsterWorld」に自分のアカウントに対して「access and update(←これがScope)」させてもいいか聞いてる
  • ユーザーがallowしちゃうと、「access and update」の機能の一つであるDM送信の機能を「MobsterWorld」が使える

これ、OAuthの処理自体は問題ないです。
というか、「MobsterWorld」がDM送らないでサイトのサイドバーとかに自分のタイムライン表示だけさせてたらだれも文句言わなかったかも。

* メッセージの「would like to connect to your account」と「Allow ×× access?」だけでは、つぶやき権限を与えるという意味には読み取りづらい。
* その間に、小さな字で「access and update」と書かれているけど、DMを送ることができるとまでは書いていない。
* 「拒否する」は日本語なのに、「ALLOW」は英語のまま。

http://www.machu.jp/diary/20090801.html#p01

UIが問題ですね。ALLOWも訳せよと。

twitter OAuthのScopeの扱い

OAuthのConsumer登録画面はこんな感じ。

Scopeと呼ばれるとこは2つだけ。

  • Read & Write
  • Read-only

DM送信は「Read & Write」の中の1機能ってことなんですね。

■ twiterのConsent Page

こんな感じ。

「Read & Write」に対する文言は「access and update」。
右にも少しなんか書いてありますが。
これじゃちょっと説明不足なんじゃないですかってお話でしょう。

Yahoo!のOAuth

OpenID/OAuth側のUX Best Practiceってのがあります。
これ、ぜひOAuthを使う開発者には見てもらいたい!
OP側のドキュメントはこちらです。

どうやら、これは米Yahoo!の人がかかわっているっぽいです。
まちゅさんはOpenIDの画面を紹介されていましたが、今回は米Yahoo!のOAuthの画面を紹介します。

詳細は Yahoo!IncのOAuthがUI改善を実施 - r-weblife を見ておいていただくとありがたいです。


  • 何が行われるかの説明
  • OAuthのSP名とConsumer名
  • Consumerに渡す情報(What am I sharing?をクリックすると出てきます)
http://d.hatena.ne.jp/ritou/20090617/1245252051

画面がごちゃごちゃにはなるわけですが、大事なところは抑えとかないといけませんね。

ちなみにYahoo! JAPANの場合、ログイン画面と分離したままですが、こんな感じです。


OAuthの知名度が低い現状では、対応サイト(SP側)の承認画面にて周知を徹底すべき。

http://www.machu.jp/diary/20090801.html#p01

これなんですが、、、一般ユーザーにOAuthを認知させるのは難しすぎると思います。
OpenIDもしかり。
僕、銀行のATMのしくみ詳しくしらなくてもお金おろしたり預けますもん。

なのでOP/SP側は常に、「最終的に何が起こるか、今何が起こっているか、どうすれば元に戻せるか」などをちゃんと説明する必要がありますね。

■ それ以外

冒頭に警告アイコンが表示されていたり、「Warning」と書かれていたりと、利用者が一瞬手を止めるようなデザインになっている。

http://www.machu.jp/diary/20090801.html#p01

前に少し調べたことがあって、この警告はOpenIDのRP Discoveryと関連している文言みたいです。