TwitterAPIで、アカウントへのアクセス許可時に、Twitterへの再認証を求める仕様の話。

TwitterAPIでアカウントへのアクセス許可を求める画面で、既にTwitterにログインしている場合は、通常、

oauth2

といった感じで、既存のログインアカウントに対しての許可を求める形になり、パスワードを求められる事はない。

が、先日公開した「ツイバトル」を含む「ひすったー」「ブロック済みアカウントチェッカー」など、バフが運営しているサービスでは、ユーザのアカウントに対するアクセスの許可を求める際に、既存のTwitterログインセッションが存在する場合でも、それを破棄し、Twitterアカウントの再認証を求めるオプション(force_login)を付加している。

それによって、既にTwitterにログイン済みであっても、アプリケーションの許可を求める画面で毎回以下のようにパスワードを要求する事になる。

oauth

で、「ブロック済みアカウントチェッカー」や、「ひすったー」の時には分母(アクセス数)が小さいからか、特にソレが問題として表面化する事はなかったのだけれど、ツイバトルに関しては結構アクセスが増えているからか、「認証時にパスワードを要求される」事について不信感を抱く人が目立った。

他のサービスではパスワードを求められないのにどうして「ツイバトル」はパスワードを要求するんだ

ということらしい。

そこで、FAQを作成し、そこに

  • Twitterアカウントへの再認証を求めるオプションを付加している
  • パスワードを要求しているのはTwitterであってパスワードはこちらには通知されない
  • 認証画面の証明書とURLを確認して欲しい

といった趣旨の事を書いておいて、更に追加でサイドバーのお知らせ欄でも触れておいたのだけれど・・・。

その後、

ツイバトルを使うともれなくアカウントを乗っ取られる可能性が〜

的な注意喚起をなさっている方を見つけて

ee_001

なんて絶望的な気分に陥ったのだけれど、理由を伺ってみると

パスワード入力する他のアプリでアカウントを乗っ取られてスパムになった人を実際に見たので、そう思った

との事だった。
確かにそういうフィッシングサイトがあってもおかしくはないので、危機管理は大事だと思うのだけれど・・・。
少なくともツイバトル及び、ひすったー、ブロック済みアカウントチェッカーなどに関しては、パスワードを要求しているのはTwitterであって、こちらにはパスワードは通知されない。
また、force_loginオプションが付加されてないアプリケーションであっても、Twitterからログアウトした状態で許可画面を開けば、パスワードの入力を求められるはずなので、「パスワードを求められた=アカウント乗っ取られる」みたいなのはちょっと違う気がする。
 

バフがforce_loginオプションを利用する理由は…

  • 既存のTwitterログインセッションの有無に関係なく、ユーザが任意のアカウントで認証する事ができる
  • 共用の端末を利用しているユーザが、一つ前のユーザのTwitterログインセッションが残っている事に気づかずアプリと連携してしまう悲劇を防ぐ事が出来る

主に上記の二つと、その他諸々の理由なのだけれど、何にしても、それによって不信感を抱くユーザさんが少なからずいらっしゃるようなので、どうしたものかと考えている。

2013年04月05日  タグ:

Leave a Reply