個人でも法人でも、Twitterを利用している方は多いと思いますが、パスワードが漏れてアカウントが乗っ取られてしまうといったことを防ぐため、Twitterアカウントのセキュリティにも気を付けたいものです。
Twitterは2要素認証に対応していますので、2要素認証の設定を行うことで、乗っ取りなどの不正アクセス対策をすることができます。
まだ未設定の方はぜひ設定しておくことをおすすめします。
目次
Twitterの2要素認証について

Twitterの2要素認証は、次の3種類を利用することができます。
・テキストメッセージ (SMS)
・認証アプリ (TOTP)
・セキュリティキー (FIDO)
Twitterのヘルプセンターページに記載がある通り、3つの方法のうち、「セキュリティキー」の設定を行った場合は、他のバックアップ方法が不要ですので、セキュリティキーが使える場合は積極的に設定していきたいですね。
注記: セキュリティキーを追加して2要素認証の保護を強化した場合、他のバックアップ方法を使用して保護を強化する必要はなくなります。セキュリティキーは、唯一の認証方法として使用でき、他の認証方法はオフになります。
この記事では、「YubiKey 5 NFC」を使って「セキュリティキー」の設定を行う方法をご紹介します。
他の認証方法と比べてどうなのか?
セキュリティキーを選択する利点について少し補足します。
テキストメッセージ(SMS)も認証アプリ(TOTP)の場合も、2要素認証としてセキュリティを強化するための手段ですが、どちらもあくまで通知された(またはアプリに表示された)文字や数字を入力するため、フィッシングなどの中間者攻撃を防ぐことが難しいです。
せっかくセキュリティを高めようと2要素認証の設定を行っているのに、思ったほどセキュリティがあまり高められていない、ということになってしまいます。
セキュリティキーの場合はFIDOのプロトコルを使用しているため、フィッシングなどの中間者攻撃を防ぐことができます。
そのため、他の方法と比べて高いセキュリティ強度を得ることができます。
あと単純に、SMSやTOTPは文字を入力するのは結構面倒なんですよね...。
YubiKeyを設定した場合は、毎回通知される文字やアプリに表示される文字を入力する手間が必要なく、YubiKeyをタッチすることでログインができるようになります。
使用するデバイスについて
今回はPCとスマホの両方でTwitterを利用したいのと、スマホではNFCを使いたかったため、NFCの機能がある「YubiKey 5 NFC」を使用しました。
PCで使う時はUSBに挿して、スマホで使う時はNFCで認証を行うことができます。

セキュリティキーとしての設定は、FIDO対応のキーであればなんでも使用することができますので、YubiKey以外のFIDOデバイスをお持ちであれば同じ手順で設定を試していただけます。
■2要素認証を設定する手順
2要素認証設定はPCまたはスマホで行うことができます。
a. PCで設定する場合
Twitterのメニューから「設定とプライバシー」を選択し、「セキュリティとアカウントアクセス」の「セキュリティ」を選択します。


「2要素認証」を選択します。

「2要素認証」の中から、「セキュリティキー」にチェックを入れます。

初回の変更時にはパスワードを求められるので、入力して「確認」を選択します。

セキュリティキーの登録シーケンスが開始します。「キーを追加」を選択します。


PCにYubiKeyを接続します。
YubiKey 5 NFCはFIDO2対応のデバイスなので、PINの入力が求められます。
PINを入力してOKをクリックします。
※U2F(かんたんに言うとFIDO1)のみの対応デバイスの場合はPINが無いため入力が求められません。
2023/3/6追記
※FIDO2対応デバイスでも、購入直後やPINリセット直後など、デバイスにPINが設定されていない場合もPINの入力が求められません。デバイスの設定状態によって挙動が変わりますのでご注意ください。
なお、PIN入力が求められるのは登録時のみで、認証操作時(ログインを行う時)は、FIDO2対応デバイスとU2Fデバイスのどちらをお使いの場合でも、PINの入力は求められません。

Yubikeyにタッチします。

登録に成功すると、キーに名前を付ける入力欄が表示されます。
わかりやすい名前を任意で設定して次へ。

キーの登録ができました。
メッセージにあるように、キーの紛失などの不測の事態に備えて、他のキーを持っている場合はあらかじめ複数のキーを登録しておくと安心です。

設定が完了しました。
「バックアップコードを取得」をクリックするとバックアップコードが表示されます。
キーの紛失などの場合でもログインできるよう、念のためバックアップコードを控えておくことをお勧めします。

2要素認証の画面に戻ると「セキュリティキー」の項目にチェックが入っていることが確認できます。
別のセキュリティキーを登録したい場合は、「セキュリティキーを管理」を開いて別のキーを追加することができます。
セキュリティキーの2要素認証を解除する場合はこのチェックを外せば解除されます。
その際、登録したYubiKeyの情報もクリアされるので、改めて2要素認証設定を行う場合は、再度キーを登録し直す必要があります。

設定後はログインする際にセキュリティキーが必要になります。ただ、一度ログインするとログイン状態が保持されるので、Twitterを開くたびに必要というわけではないようです。
b. スマホで設定する場合
スマホからでもセキュリティキーの登録が可能です。ただし、Twitterのアプリからは設定できないようで、ブラウザから設定するようにメッセージが表示されます。

ブラウザでTwitterを開いて設定を進めます。
設定の「セキュリティとアカウントアクセス」を開き、「セキュリティ」を選択します。

「2要素認証」を選択します。
「セキュリティキー」を選択します。


初回の設定時はパスワードを聞かれます。入力して次へ。

セキュリティキーの登録シーケンスが開始されるので、表示に従って進めます。


セキュリティキーの登録を開始します。

今回はNFC対応のキーを使っているので「NFCでセキュリティキーを使用する」を選択します。USBのType-CのデバイスやBluetooth対応のデバイスを持っている方は、対応する方法を選択してください。

セキュリティキーを要求されます。
今回はNFCを使用するため、あらかじめスマホのNFC機能をオンにしておく必要があります。

YubiKeyをスマホのNFCの位置にかざします。

登録が完了しました。YubiKeyをスマホから離します。

登録に成功すると、キーに名前を付ける入力欄が表示されます。
わかりやすい名前を任意で設定して次へ。

キーが登録できました。メッセージにあるように、キーの紛失などの不測の事態に備えて、他のキーを持っている場合はあらかじめ複数のキーを登録しておくと安心です。

設定が完了しました。
「バックアップコードを取得」をクリックするとバックアップコードが表示されます。
キーの紛失などの場合でもログインできるよう、念のためバックアップコードを控えておくことをお勧めします。

設定後はログインする際にセキュリティキーが必要になります。ただ、一度ログインするとログイン状態が保持されるので、Twitterを開くたびに必要というわけではないようです。
■ログインする手順
2要素認証の設定が完了したので、今度はログインする際の挙動について確認していきます。
a. PCの場合
まずはPCの場合を見ていきます。
ログイン画面でログインIDを入力します。

パスワードを入力します。

2要素認証が未設定の場合はここでログインが完了しますが、セキュリティキーの設定をしたので、セキュリティキーを求められるようになっています。
PCにYubiKeyを接続します。
キーをタッチするように表示が変わります。

YubiKeyの中心部が光りますのでタッチします。

認証が成功するとログインが完了します。
このように、YubiKeyがなければログインができないようになりました。
USBに挿してタッチするだけなので、操作としてはかなりシンプルですね。
b. スマホの場合
同じようにスマホでもログイン動作を見ていきましょう。
パスワード入力後に認証器の選択が表示されるようになっています。
「セキュリティキーを使用」を選択して次へ進むと、セキュリティキーの認証が開始されます。


今回はNFCを使うので「NFCでセキュリティキーを使用する」を選択します。
セキュリティキーをスマホにかざすようにメッセージが表示されます。


YubiKeyをスマホのNFCの位置にかざします。

認証に成功するとログインが成功します。

スマホでもYubiKeyがないとログインができないように制限することができました。
NFCを使うことで、USBを接続する必要がなく、かなりかんたんに2要素認証ログインすることができます。
まとめ
Twitterの2要素認証にYubiKeyを使うことで、他の2要素認証方法と比較してもセキュリティ強度が高く、よりかんたんな操作でログインを行うことができました。
なにより物理キーであるため、管理がわかりやすいという利点もあります。
パスワードは盗まれても気付くことが難しいですが、物理キーであれば失くしたらすぐに気付けるのも一つの利点と言えるでしょう。
今回使用したYubiKeyは、Twitter以外にもさまざまなサービスのセキュリティ強化に使えますので、ぜひ色々なところで活用してみてください。
YubiKeyや弊社取扱いの他の認証デバイスは以下のサイトから購入することができます。
お見積りはお問い合わせフォームからお問い合わせください。
YubiKeyShop 正規代理店
Amazon
お問い合わせ
最後までお読みいただきありがとうございました。