Appleも対応したことだし、主要サービスの2段階認証をまとめてみた

 少し前の話題になりますが、ようやく日本でもApple IDの2段階認証が使えるようになりましたね。

 私も、早速導入しました。

 2段階認証の必要性をあまり感じていない方は、そもそもこんな記事なんて読まないと思いますが(逆説的に、当記事をご覧になっている皆さんには、釈迦に説法でしょうが)、いちおう言葉の意味するところを簡単に説明してみます。

 えーと、よく言われるところでの2段階認証とは、とあるサービスの自分のアカウントに対して重要な操作を行う際に、ごく一般的に利用されていて馴染みのあるユーザーID&パスワードによる認証とは別に、その場限りの使い捨ての確認コードを利用して認証を行うことで、より高度なセキュリティの担保を試みる認証方式です。

 通常のログインの他に、もう1段階の認証が必要になるので、俗に「2段階」認証と呼ばれている訳ですね。

 使い捨ての確認コードは、予め認証しておいたデバイスでしか参照できないように設定するのが普通です。

 つまり、物理的にそのデバイス(モノ)を保有している人だけが認証できるという仕組みです(サービスによってはメールで確認コードを受け取れるので、必ずしも端末に紐付けられている訳ではありませんが)。

 2要素認証(2-factor authentication)におけるパターンのひとつであり、例えば生体認証と組み合わせて要件を満たす場合もありますが、ここではより一般的なパスワード+スマートフォン(iOS や Android など、OS の種類は問いません)を利用した確認コード(トークン)による認証ついて触れていきます。

 最近、様々なサイトやサービスでパスワードを含む個人情報が漏洩したというニュースを耳にする機会が増えたと感じている方も多いんじゃないでしょうか。

 この2段階認証を有効にしておくと、万が一あなたのIDとパスワードが流出してしまったとしても、認証端末(モノ)が自分の手元にある限りは、アカウントを簡単に乗っ取られてしまうリスクを減らせる可能性があります。

 まぁ、なんであれ完璧ということはあり得ないので、危険性がゼロになる訳ではありませんが、格段にマシになるのは間違いないので、使わない手はありません。

 設定や運用が少々面倒臭そうに思えるかも知れませんが、何かをする度に毎回入力を求められるような性質のものではなく、信頼できる端末として1度登録してしまえば、普段その端末を使う限りはあまり意識しないで済むことがほとんどですので、実際はさほど手間がかかるものではありません。

 アカウントを乗っ取られるリスクと天秤にかけたら、メリットの方が大きいでしょう。

 Appleに限らず、2段階認証に対応しているサービスは増えつつありますので、利用者が多いと思われる比較的大規模なサービスを中心に、いくつかご紹介してみたいと思います。

スポンサーリンク

読み込み中です。少々お待ち下さい

まずは、表題のAppleから

 まずは、この記事を書くきっかけとなった Apple ID の2段階認証から(Apple 自身は 2 ステップ確認と呼ぶようになりましたが、この記事内では2段階認証で表現を統一します)。

 ちなみに、Apple ID に限らず、ほとんどの2段階認証は勝手に有効になる訳ではなく、ユーザーが明示的に利用開始の手続きを行う必要がありますので、ご留意ください。

 Apple が提供する2段階認証は、My Apple IDで有効化します。

 設定方法について詳しくは、本家のFAQ等を参照してください。

 iOS 9 および OS X El Capitan 以降は、並行して 2 ファクタ認証が導入されたようです。

 以前から提供されている 2 ステップ確認も、別途継続して使えるのがややこしいのですが、iOS の設定アプリから有効化できたりと、新しい 2 ファクタ認証の方が導入が簡単なようですので、今後は 2 ファクタ認証を利用することになるでしょう。

 新しい 2 ファクタ認証について別記事に書きましたので、詳しくはそちらをご覧ください。

 それにしても、なんでこんな分かり難いことするんや......

 Apple ID の2段階認証を有効にすると、新しく手に入れた iOS デバイスではじめて iCloud アカウントを設定したり、楽曲やアプリを購入する為に iTunes & App Store に Apple ID を初回登録する時、または上のリンクの My Apple ID にログインしたりといったような、アカウントに対して重要な操作を行う際に、通常のログインとは別に本人確認コードの入力を求められるようになります。

 例えば、2段階認証を有効にした後で My Apple ID にログインする場合は、以下のようなイメージになります。

  1. ログイン直後に、確認コードの宛先デバイスを選択する画面が表示されます
  2. 登録した電話番号と確認済みのデバイスが一覧され、そのいずれかで確認コードを受け取ることが可能です。
    SMS は届くのが遅れてヤキモキさせられることがままありますので、常に他に有効なデバイス(iPhone や iPad)が存在するように、譲渡や機種変更の際には気をつけましょう。

  3. 選択した端末に、こんな感じで 4 桁の確認コードが送信されます。
  4. 受け取った確認コードを入力してはじめて、ログインの先へ進めるようになります。

 このように、2段階認証を設定しておくと、仮に ID とパスワードが流出したとしても、重要な操作には認証端末でしか受け取れない確認コードが必要となりますので、アカウントの乗っ取りを水際で防げる可能性が高くなります。

追記:(2014/09/05)
 Apple の2段階認証は、アカウントに紐付くデータを限定的にしか守ってくれないかもしれません。
→(2014/09/17)この件は修正されたので、デフォルトでは閉じておきますね。当時の情報を参照したい場合は、以下をクリックしてください。

▼以前の追記を表示▼

 いまや、Apple の2段階認証は、アカウントに紐付くデータを包括的に守ってくれるようになったようです。iCloud コンパネでログインする際にも、ちゃんと確認コードの入力を求められるようになりました。

 追記で書くには長くなり過ぎたので、詳しくは別記事にしました。よろしければ、そちらをどうぞ。

Google 認証システム

 お次は、Google 認証システムを利用した2段階認証です。

 こちらは、Google アカウントの認証だけでなく、様々なサービスで利用されています。

 Apple の2段階認証とは少し異なり(どちらかというと、独自で特殊なのは Apple の方ですけどね)、こちらは自分が持っている iPhone や Android スマートフォンのようなモバイルデバイスに「Google Authenticator」というアプリをインストールして利用します。

 このアプリは、基本的に1台のデバイスでしか有効にできません。例えば、スマホを乗り換えた場合は、新しいスマホでアプリを有効にした後は、それまで使っていた方のスマホのアプリで作られたトークン(確認コードの数字)は無効となり受け付けられなくなります。

 つまり、唯一アプリが有効になっているデバイスを持つ自分だけが認証を行えるという寸法です。

 ここでは本家の Google を例にとって、利用イメージを簡単に紹介します。

  1. Google アカウントで2段階認証を有効にすると、とある端末で初めて Google にログインしたり、何らかのアプリで初めてアカウント連携を行ったりする場合に、通常のログインの後に以下のような確認コードの入力を求められるようになります。
  2. 2016/07/15 画像差し替え:
     最近になって、Web ブラウザからのアクセスに関しては、Evernote と同様に Google も信頼済みの端末として記憶しておけるのは 30 日間に制限しているようです。

     ちょっとだけ煩雑になってしまいましたが、よりクローズドなアプリでは期間による制限は設けていないようですし、セキュリティと利便性のバランスを考えると、まぁ、妥当な制限かなと思います。

  3. Google 認証システムアプリこと「Google Authenticator」を起ち上げると、それぞれのサービスに応じた 6 桁の数字が表示されますので、それを入力します。確認コードを入力しない限り、ログイン画面の先には進めません。
     ちなみに、この確認コードは30秒毎に自動的に更新されます。

 Google の2段階認証は、Google アカウントで有効化します。
 設定方法について詳しくは、本家のヘルプ等を参照してください。

2016/07/27 追記:
 Google に限って言えば、「スマートフォン プロンプト」という仕組みを使えば、毎回いちいち 6 桁の数字を入力する必要なく、スマホに表示された「はい/いいえ」ボタンを押すことで認証が行えます。

 別記事としてまとめましたので、よろしければそちらもご覧ください。

 また、上で書いたように、Google 認証システムは様々なサービスで利用されています。

 これらについては、Google アカウントと連動してまとめて設定できる訳ではなく、それぞれのサービスのセキュリティ設定画面で個別に有効化する必要があります。

 見出しを「Google 認証システム」としてしまったので、少々分かり難くなってしまったかも知れませんが、Google Authenticator(以下、GA)自体は単なるトークンアプリですので、「必ずこれを使わなくてはいけない」という性質のものではありません。

 確認コード(トークン)生成の実装は、他にもいくつか存在しますし、対象もモバイルデバイスに限らないのですが、GA は公式に対応しているサービスが多くて一元管理がし易いこと、それからネット上の情報が多くて困った時に調べ易いことなどから、分かり易さを優先して見出しとして採用しました。

 確認コードの受け取りには、SMS(携帯電話向けのショートメッセージサービス)はどのサービスでもまず利用できますし、他のアプリ(Windows Phone 向けの Authenticatorなど)が公式にサポートされている場合もありますので、環境的にそれらの方が都合が良い場合は、もちろんそちらを使って構わないと思います。

2016/07/26 追記:
 SMS に関しては、こんな話があったりもしますが。

 いますぐどうこうということは無いと思いますが、将来的に SMS は認証に使われなくなるかも知れないですね。

Microsoft

 確認コードの取得には、SMS や Windows Phone の Authenticator 等も利用できます。
 各端末で最初に認証する時に、その端末を信頼するように設定しておけば、以降はほとんど2段階認証を意識しないで済むので、運用上の手間はほとんどかかりません。

Dropbox

 確認コードの取得には、SMS や Windows Phone の Authenticator 等も利用できます。
 こちらも、各端末や連携アプリで1回リンクしてしまえば、普段はほとんど意識しないで済むように設定できるので、運用の手間はほとんどかかりません。

facebook

 確認コードの取得には、SMS や Facebook アプリも利用できます。
 これも各端末や連携アプリで1回認証してしまえば、以降はほとんど意識しないで済むように設定できるので、普段はほとんど手間がかからないです。

Evernote

 確認コードの取得には、SMS 等も利用できます。
 ブラウザ版の Evernote は、そもそも1ヶ月毎にログインし直さなくてはならないので、その度に確認コードの入力も必要となり、他のサービスと比べて若干面倒臭いです。
 とはいえ、専用のアプリはその限りではありませんし、大した手間でもありませんので、重要な情報を Evernote にたくさん溜め込んでいる方は、特に設定しておいた方が安心できるのではないでしょうか。

tumblr.

 確認コードの取得には、SMS も利用できます。
 tumblr. の2段階認証には、「この端末を信頼する」に相当する機能が見当たらず、Web ブラウザ上でもモバイルアプリでもログインする度に確認コードを入力する必要があるようなのですが、わざわざ意図的にログアウトしない限りは、ブラウザでもアプリでも基本的にはログインしっぱなし状態なので、手間に感じる場面はそれほど多くないかと思います。

信頼する端末についての注意点:
 念の為に注釈しておきますが、確認コードをいちいち入力しなくても済むように「信頼する端末」に設定しても良いのは(上であげた Google の2段階認証のサンプル画面で言えば、「このパソコンでは今後、コードの入力ウィンドウを表示しない」にチェックして良いのは)、『実際に自分が物理的に保有している端末』だけです。

 会社や学校、ネットカフェなどの共有の端末を「信頼する端末」に設定してしまうと、2段階認証の意味が無くなりますので気をつけましょう。

 もし共有の端末を「信頼」してしまった覚えがある場合は、別端末(自宅のパソコンやスマホ)からでも、各サービスのアカウント設定画面で「信頼の取り消し」を行えることがほとんどですので、慌てずにヘルプ等を参照しましょう。

Yahoo ワンタイムパスワード

 名称は異なりますが、Yahoo のワンタイムパスワードも、上であげている他の2段階認証と同じような仕組みです。

 詳しくは、サービスのヘルプをご覧ください。

 確認コードの取得には、メール等も利用できます(個人的に、メール認証はおすすめしませんが)。

 こちらも、各端末で1回認証してしまえば普段はほとんど意識しないで済むので、運用上の手間はほとんどかからないと思います。

追記:
 Apple と異なり、Yahoo の方は Google その他とアルゴリズムが同じっぽかったので(Time-based One-Time Password Algorithm)、Google Authenticator に登録できそうだなぁと思って、改めてちょっと調べてみたら、やっぱり出来るようです。

 ひと手間必要になりますが、登録の手順については、下記の記事等が参考になると思います。

その他のサービス

 最近は2段階認証に対応しているサービスも増えていますので、ここで全てを網羅する訳にはいきませんが、中でも比較的利用者が多いと思われるサービスを中心に追記しておきます。

 まずは、Twitter から。

 Twitter の2段階認証は少々独特で、ログイン認証にはモバイルの Twitter アプリを使用します(SMS も利用可能です)。

 ジツは、本家のヘルプに長期間に渡って「現在、ログイン認証を一時的に停止しています。ご迷惑をおかけし大変申し訳ありません」と記載されたままだったりして、公式的にはあんまり使って欲しくないのかなーと思い、念の為に掲載を見合わせていたのですが、実際はずっと前から特に問題無く使えているので、いい加減しびれを切らしました。

 とりあえず、追記しておきますので、ご利用は自己判断でお願いします(ヘルプの件は、単なる修正漏れなんでしょうか?)。

2015/03/26 追記
 3 月 25 日に、Twitter から「ログイン認証を引き続き利用するには、電話番号を追加してください」というメールが届きまして、久し振りに確認してみたところ、ヘルプから「現在、ログイン認証を一時的に停止しています」という文言が削除されていました。

 ようやく、正式な機能に格上げされたということでしょうか。

 ただ、この電話番号の認証ですが、2015 年 3 月時点だと何故か登録に失敗することが多く、以前からログイン認証を有効にしていた方は、先ずログイン認証を一旦無効にしてから、携帯電話番号を登録した後に、改めて認証を有効にし直した方が良いかも知れません。

 また、認証にモバイルアプリを利用する場合は、実際にその電話番号で通話のできるスマホのモバイルアプリから登録した方が良いかも知れません(電話番号の認証が Web で上手くいかない場合でも、モバイルアプリからだと上手くいくことがあるので)。

 Twitter でログイン認証を有効にすると、例えば Web ブラウザでログインしようした時に、「~へログイン認証のリクエストを送信しました」という画面が表示されて、認証の待機状態になります。

 この段階で、モバイルアプリに対してリクエストが通知されていますので、アプリを起ち上げてそのリクエストをチェックしてあげると(文字通り「チェック」ボタンをタップします)、認証処理が続行されてブラウザの画面が自動的に切り替わります。

 通常は通知から一足飛びに移動できますが、「モバイルアプリのログインリクエスト確認画面」の表示の仕方は、上掲のヘルプやこちらの「プッシュ通知が届かない」等を参照して下さい。

 また、Twitter のログイン認証には、「この端末を信頼する」に相当する機能が見当たらず、Web ブラウザ上でもモバイルアプリでもログインする度に認証し直してあげる必要があるようなのですが、一旦ログインしてしまえば、わざわざ意図的にログアウトしない限りは、ブラウザでもアプリでも基本的にはログインしっぱなし状態なので、それほど手間に感じることはないでしょう。

 続きましては、オンラインストレージのboxでも、2段階認証を利用できます。

 

 確認コードの受け取りには、SMS を使用します。
 つまり、利用可能な携帯電話番号が必要です。

 どうも、本家サイトに2段階認証の日本語ヘルプが見当たらないので、有効にする手順を以下に簡単に書いておきます。

  1. モバイルアプリでは設定できないと思うので、まずは Web ブラウザで box の Web サイトにログインしてください(モバイル用のサイトが表示されてしまった場合は、画面下部の「サイト全体を表示」を選んで、PC 用のサイトを表示します)。
  2. 右上のアカウント ID(メールアドレス)をクリックして「アカウント設定(Account Settings)」を選択します(サイトが英語で表示されている場合は、アカウント設定から「General」→「Language」で日本語を選択してください)。
  3. 次に、画面上部の「セキュリティ」タブを選択して、「ログイン認証」チェックをオンにします。
  4. 以降は、画面の指示に従ってください。

 それから、書くのを忘れてましたが、LinkedIn でも2段階認証が使えます(2014/12/07追記)。

 こちらも、現時点(2014/12)で確認コードの取得に利用できるのは SMS だけです。
 つまり、利用可能な携帯電話番号が必要になります。

 こちらもモバイルアプリからは有効にできないと思うので、PC サイトから設定してください。詳しくは、上掲のヘルプ等をどうぞ。

まとめ

 実際のところパスワード認証って、もう古臭くて時代に合ってないと思うんですよね。

 パスワードリストの流出等に起因する個人情報の漏洩というのは昨日今日ぽっと起こりはじめた訳ではなく、ネットの黎明期から途絶えること続いてきた訳ですが、インフラが整備されてネット利用者が増加するに伴い、漏洩による社会的悪影響も増大し続けており、ニュース等で昔より大きく取り上げられたり、以前とは比較にならないほど衆目を集めるようになりました。

 もはや、誰にとっても他人事ではないと言って良いと思います。

 そんな状況なので、各サイトとも「他と同じパスワードを使い回すな」、「分かり易いパスワードを使うな」と口うるさく言ってくる訳ですが、そりゃ言うのは簡単だけどさー、使い回したり簡単なパスワードを使ったら被害に合っても自己責任って言うしかない現状なのかもしんないけどさー、実際に各サービス毎に一意の複雑なパスワードを設定して使い分けるとか、そんなの個人じゃ管理してらんない訳ですよ。

 いや、個人的にはこの記事で紹介した KeePass を使って各サービス毎に複雑なパスワードを設定して管理してますけどね。

 やっぱり面倒臭いし手間が阿呆らしいです。なんでユーザーがここまでの労力を強いられなければならないのか、と。

 ここで紹介している2段階認証も、手間の軽減には貢献しないどころか、むしろセキュリティレベルと引き換えに一手間増えちゃってますからね。

 なので、ぐーたらな私は、ほとんど手間要らずのiPhone 5sの指紋認証が大好きです。

 喜ばしいことに、この先数年で認証周りの状況が大きく変わるかも知れない兆候は、ちらほらと見受けられます。

 最近見かけたニュースから現実的なところを引くと、先日シマンテックが発表した認証方式とか。

 それから、ちょうど今日のニュースでも見かけたOpenID Connectとか。

 これら以外にも、新しい認証方式についての様々な模索は、ちょいちょいニュースになっています。

追記:(2014/10/25)
 パスワードの問題に関して、ようやく大きな動きが起こりそうな兆しが見えてきましたね。

 Google の方は、いちいち USB を抜き差しすることに若干の手間を感じる向きもあるかも知れませんが、デスクトップならば差しっぱなしにしておくだけで済みそうです。

 そして、認証機能がシステムに組み込まれる Microsoft の方はさらに素晴らしい。

 次期 Windows は1つの OS で あらゆるデバイスに対応するそうなので、この Microsoft の新しい認証機能も、PC とモバイルの両方で利用できるのだと思われますし。いやー、どうなるんだろう。上掲記事の通りだとすると、楽しみだなー。

追記:(2014/12/10)

より簡単な認証方法の普及の動きが加速することになりそうだ。

 ホントに加速して欲しいですよねー。

追記:(2015/02/02)

 いいニュース。最終的には、果たしてどうなるでしょうか。

追記:(2015/03/18)

 そして、このニュース。システムレベルでの対応というのが大きい。上の追記でも見てきたような他システムとの連携で、ユーザーの負担がかなり軽減する可能性も。

 上手くすれば5年後くらいには、認証周りの状況は大分良い方向に様変わりしてるかも知れませんね。

 でも、日本のサイトやサービスは、どうせなかなか対応しないだろうなー......

 本当は古臭いパスワード認証なんて、今すぐ過去の遺物にできればそれに越したことはないんですが、少なくともまだ数年は付き合っていかなくてはならないと思われますので、ここで紹介した2段階認証などを利用しつつ、上手に個人情報を自衛しようじゃありませんか。

 みたいに締めくくると、綺麗にまとまるでしょうか。

 ちなみに、言うまでもないことですが、信頼した端末を紛失したり盜まれると、かなりマズいことのなるので気をつけましょう。機種変したり、端末を手放す時も、登録の解除をお忘れなく。

 また、サポート等を装って、電話や口頭で確認コードの提示や「はい」ボタンを押す操作を求められても、決して応じないように心掛けましょう。

追記:機種変更をする前に

 機種変更をする際に、古い方のスマホは下取りに出してしまい、自分の手元には残らないというケースは、思いの外多いのではないかと思います。

 その際の注意点として、古い端末を下取りで手放す前に、先立って 2 段階認証を設定した各サービスで「バックアップコード」を保存しておいた方が良いと思います(サービスによっては「回復用コード」などと呼ばれることもあります)。

 自分の手元に認証端末が残らない訳ですから、下手をすると 2 段階認証を設定したサービスにはログインできなくなっちゃう可能性がありますからね。

 認証端末が手元に存在しない場合でも、確認コードの代わりに、このバックアップコードを使用することで、2 段階認証を設定したアカウントにサインインすることができます。

 バックアップコードは、通常は各サービスのアカウント情報のセキュリティページで取得できます。多くの場合、2 段階認証の設定の近くにボタンが配置されていると思います。

 サービスによっては提供されていない場合があるので、そのようなサービスに関しては 2 段階認証を一時的に SMS に切り替えておくと、後の手続きが楽になると思います(最悪、一時的に無効化しておく手もありますが、オススメしません)。

 サービスによっては、予め家族などの電話番号を登録しておくことで、メインの端末が手元から無くなってしまったとしても、そちらで確認コードを受け取れる場合があります。

 また、メインで使うスマホを新しい端末にした場合、当然のことながら Google Authenticator(や、それに類するアプリ)も、そちらに移すことになると思うのですが、扱っている情報の性質上、Google のクラウドを利用する等して、アプリをインストールしただけで登録情報が自動的に引き継がれて、何も手続きをしなくても引っ越しが完了する、という訳にはいきません。

 クラウドによる自動連携のような外部ネットワークを経由しては本末転倒な訳でして(であればこそ、登録する時もディスプレイに映った QR コードをスマホのカメラで取り込む、みたいな迂遠な方法をわざわざ採っている訳ですし。尤も、これすらも厳密には安全と言えないという指摘もありますが)、新しいスマホを認証端末にしたい場合は、たとえ面倒であったとしても、もう一度、自らの手で各サービス毎に登録し直す必要があります。

 これが思ったよりも手間でして、とはいえ、その代わりにセキュリティレベルが大いにアップする訳ですから、多くて1~2年に1度のことでもありますし、なんとか頑張って登録し直しましょう。

この記事をシェア
  • このエントリーをはてなブックマークに追加
  • Share on Google+
  • この記事についてツイート
  • この記事を Facebook でシェア