スマホ、ソーシャル、アプリをインストールすることの意味、わかってますか?
公開日 : 2012-02-12 17:40:42
スマホ、ソーシャルメディア... PCやMacを使っていなくてもアプリケーションをインストールすることってどんどん増えてきてますよね。最近Facebook APIを利用したアプリ開発のプラットフォームというか、ライブラリのコードを書いていた関係で色々調べてたんですが、これ、許可したものによっては何でもできちゃうように見えませんか?
最近、Facebookで、
このアプリインストールしたことで、友人に勝手にメッセージ送られてるみたいです。パスワードを抜かれるみたい。このアプリ使ったことある人はパスワードの変更をお勧めします。
とか書いてる人がいてちょっとした拡散騒ぎ? になってたのを見て思ったんですが、パスワード抜けないですよ。パスワード抜かなくても投稿したりメッセージ送れたりするんですよこれ(メッセージ送る方法はちょっと調べきれなかったんですが、チャット利用できるAPIあるみたいだから送れるよきっと)。ウォールへの投稿はできるよね。みんな診断系のゲーム? とかプレゼント応募してシェアとか、普通にやってるじゃん。
中でも"publish_stream"とか"offline_access"とかこのあたりを許可すると...(冒頭の画像ではoffline_accessを求めると「データへのアクセスを常に許可」の欄が出ます)
アプリケーションからコンテンツ、コメント、likeをユーザや友達のstreamに投稿できます。このpermisiionがあれば、offline_accessが無くとも、いつでも好きな時に投稿することが可能です。ただし、Facebookはユーザの関知する形で投稿が行われることを勧めています。
いつでもユーザの代わりに、ユーザから許可されたアクションを行うことができます。デフォルトでは、ユーザが実際にアプリケーションを使っている間にのみリクエストが送られることを保証するため、ほとんどのaccess tokenは短い期間で無効になってしまいます。このpermissionがあると、OAuthで返されるaccess tokenは長い期間有効になります。
アンケートポチった時とかはまだユーザー側が理解できるし何が起こったかをリアルタイムに見てるからいいんですが、要するにこれ許可すると後日、とか自分が何もやってないときに(Facebook利用していないときに)投稿とかメッセージとか要するにアプリの側に権限を渡してしまうってことなんですよね。OAuthはパスワードを必要としないけどアプリケーションがユーザーとして振る舞えるってことです(だから本当に悪質なアプリがあったとして、ユーザーがとるべき行動はパスワード変更ではなく、アプリのアンインストールです)。
Androidのアプリにしても...
ここでAndroidとiOS(iPhoneやiPad)とどちらがいいとか言うつもりはないんですが、iOSのアプリは審査があります。もちろん審査があってもすり抜けてしまうケースもあって、時々プライバシー情報を勝手に送るみたいなアプリがあって問題になったりしてるわけです。Androidのアプリとか、どれだけ気を遣ってユーザーはインストールしているんだろうか? この間もなんか恋人の行動履歴をどうこうってアプリが問題になってましたよね?
これはもう、Linux管理してるくらいの意識がいると思うんですよねスマホにアプリ入れるのって。OSSのソフトウェアを評価したりできるスキル(スキルといってもコードを読めるというレベルではなくて、これ、入れても大丈夫だよなっていう判断ができるスキル)がなければサポート付きのディストリビューション(RedHatとか)入れてアプリはRPMでインストールするだけにする、みたいな考え方しないといけないんじゃないの? と思うのですけど、どうなんでしょう?
ソーシャルメディアのアプリもスマホのアプリでも、個人情報以上のものを委ねるということを知っておいたほうが良いのでは?
アプリをインストールすることで、何を許可しているのか、ってことをもっと意識したほうがいいと思うんですよね。Facebookのプレゼントキャンペーンにしてもメーカー自身が運営してるわけじゃないケースもあります。これ、単に応募時の個人情報を与えているだけじゃなくて、"Facebook上で自分としてふるまう許可"を与えているケースもあるのでね。