iPhone アプリっていうか
Android だろうが Windows だろうが Mac だろうが
クライアントソフト全般に言えることなんだけど、
ともかく何か新しいアプリケーションソフトから
自分の Twitter アカウントを利用するとき
念のためにやっといた方がいいと思ってること。
ちょっとめんどくさいけど、
初回にやるだけで少しだけ安心なので念のために。
ただこれは「何もしないよりはマシ」という話であって
「こうしておけば安全安心大丈夫」という意味ではありません。
認証はいまどうなってるか
Twitter 関連サービスのうち
ブラウザからアクセスするタイプのものなら
BASIC 認証が廃止されて OAuth が標準となったので
今は ID とパスワードを入れる必要がなくなった。
ただ、上記のように全てが同一ブラウザ上で完結するものはいいけど
クライアントソフトの場合はこのやり方ではなくて
やはり ID とパスワードを入力して認証するようになっている。
ただこれは以前の BASIC 認証ではなく、
いったん ID とパスワードを預かって
それを利用して Twitter からアクセス用の情報をもらう
“xAuth” という認証方法ですね。
アプリケーションがパスワードを必要とするのは初回だけで、
以降は与えられた「アクセストークン」という情報を使って
ユーザーのアカウントにアクセスできるので
預かった ID とパスワードは必要なくなるという仕組み。
預けたパスワードはどうなるか
xAuth では認証のために上記のアクセストークンを使うので
ユーザーから預かった ID とパスワードは
すぐに破棄することになっている。
基本的には。
ただ、本当に破棄してるかどうか表からはわからないし
入力内容がどこかに転送されていないという保証もない。
iPhone などの場合、普通に使っている限りでは
どういう内容の通信が行われているかが見えないので。
パソコンのアプリケーションならパケット監視も可能だけど
監視し続けるのもめんどくさいし
そもそも発見できるのは送信されちゃった後。
どこの誰だかわからない人が作ったアプリケーションを使ってて
ID とパスワードがどんどん抜かれてたらどうしますか。
Twitter アカウントを乗っ取られるだけならまだいい。
複数のサービスで同じパスワードを使ってるような人はさらに危険。
サービス毎に変えた方がいいと思うけど、
実際、同じパスワードを使い回してる人けっこういますよね。
どうすればいいか
くどいようですが
アプリケーションがパスワードを必要とするのは初回だけ。
その後はユーザー名が変わろうがパスワードが変わろうが
アクセストークンには変化がない。
というわけで、こんな長々と書くほどのことでもないんだけど
得体の知れないアプリケーションを使うときは
- Twitter のサイトで、パスワードを一時的に変更する。
- アプリに ID とパスワードを入力して認証を完了する。
- Twitter のサイトで、パスワードを元に戻す。
ということをやるようにしてます。
もちろん「一時的に変更する」を飛ばして普通に認証して
その後パスワードを別のものに変えてもいいんだけど、
いちいち新しいアプリを試す度に本パスワードを変える方が面倒なので。
iPhone などからブラウザで Twitter を開いて
モバイル版の画面が出ちゃう場合は多分アカウント設定ができないので
ページの一番下の方にある「スタンダード版で見る」をクリック。
完璧ではありません
なお、これは本パスワードを抜かれないようにするための措置であって
仮パスワードを入れた瞬間にアカウントにアクセスされて
パスワードを変更されて乗っ取られてしまう可能性だって
ゼロではありませんね。
どんな状況でも完璧に安全なやり方は思いつきません。
自分の目の届かないところに一部のアクセス権を委譲するからには、
そして残念ながら世の中にわるいひとがいるからには、
どうやったって危険がまったくのゼロになることはないので。
唯一の絶対に安全な対策は、
「クライアントソフト使わない」ことじゃないかな。
表に出なけりゃ交通事故に遭わないのと同じですね。