ブログトップ 記事一覧 ログイン 無料ブログ開設

TWILIGHT TWINKLE STAR ☆ このページをアンテナに追加 RSSフィード

最新の記事

過去記事一覧


Xbox Live 3500マイクロソフトポイント (15〜20%OFFくらい)
Dropboxに登録 (+250MB)

 2010/08/03 (Tue)

「OAuth認証が通ると、アプリ作者からはDMも何もかも見放題」という書き方は誤解を招く

”なる4”の騒ぎの件で、「OAuthの危険性がわかっているのか?twitter関連アプリの作者は何でもできるんだぞ。たとえば、DMは見放題送り放題だ」という意見を良く見かけるのですが、誤解を招く表現なので、twitterクライアント作者の立場から捕捉しておきます。

(TwitterにおけるOAuth認証についての話です。本文の記述から判別できるとは思いますが、念のため。他サービスの場合、事情が異なってくる場合があります)

  • 少なくともデスクトップで動作するアプリは、これらのリスクは(比較的)低い

もちろんスパイウェア等は、この限りではありません。

OAuth認証の流れを図にしてみました(あくまで「おおまかな」図です。色々と、端折っています)。

f:id:FukayaAruto:20100803224045p:image

うだうだと書かれていますが、大事なのは「アクセストークン」です。これさえ覚えてもらえれば、他は全て忘れてしまってかまいません。

twitter関連アプリケーションは、(OAuth対応のものは)すべて、アクセストークンを使ってサーバにアクセスします。逆にいえば、これが無い場合、認証済みアプリの作者とはいえ、何もできません。

  • なぜ「デスクトップ型アプリは安全で、サーバ型アプリはそうでない」のか

デスクトップ型アプリは、このアクセストークンが、あなたのコンピュータに保存されます。

サーバ型アプリは、このアクセストークンが、見知らぬ誰かのコンピュータに保存されます。

なので、認証済みアクセストークンは、ほかの用途に流用される可能性もあります。上の図にある「アプリ固有のキー」は、複数のアプリケーションで使い回すこともできるからです。

「別のアプリを作ったとき(や、アプリに手を加えたとき)は、キーを変えなければならない」決まりはないのです。なので、同じアクセストークンを、他のアプリケーションに流用されてしまう可能性もあります。

(「なる4時」の作者が、いたずらで自身の発言をFav登録させたのも、この仕様を利用したものです)

しかし、デスクトップ型アプリケーションでは、アクセストークンを管理するのはあなたです。あなたが悪意あるアプリケーションを起動しない限り、見知らぬアプリケーションにアクセストークンを流用される恐れはありません。

もちろんウィルス等に狙われた場合はこの限りではありません。サーバ型アプリケーションより安全なのは確かですが、デスクトップ型のアプリとはいえ、OAuthアクセス認証の許可には(サーバ型と同様に)慎重になりましょう。

  • 油断はしないこと

リクエスト・トークンは、とても大事なものです。これが盗用された場合は、他人にtwitterへのアクセスを許すことになります。パスワードと同じように厳重に扱い、決して、他人に教えてはいけません。

できれば「アプリの設定ファイルを送って」と言われても、従わないほうが賢明です。

  • それでも、パスワード認証型よりは、はるかに安全

「OAuthだからと安心できない」という内容でしたが、それでも、従来のパスワードを入力して認証を行うアプリケーションよりは、はるかに安全です。

たとえばOAuthでは、以下のようなことはできません。

    • パスワードを変更する
    • IDを変更する(nameは変更できる)
    • アカウントを無効化(deactivate)する

ですが、パスワード認証型のアプリケーションでは、これら全てが可能です。

業務で利用するアカウント等では、このようなアプリケーションを利用しないほうが賢明でしょう。

  • もっと詳しく知りたい方

ここを見れば全て分かります。ネットに氾濫している知ったかぶりなブログ記事を見るよりは、ずっとわかりやすいでしょう(英文です)。

http://apiwiki.twitter.com/Twitter-API-Documentation

ssig33ssig33 2010/08/03 23:35 fav ですが、いたずらではなく以下のような目的です。 http://d.hatena.ne.jp/ssig33/20100803/1280817946

アップセッターアップセッター 2010/08/04 09:11 いくらデスクトップクライアントだとしても
ネットワーク越しにサーバへ送っていたら
元も子もない気がしますけど。

twitterのクライアントって事は、少なからず
80ポート越しに外へ出られるでしょうし。

悪意があろうと無かろうと、です。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証