Skip to content Skip to navigation Skip to footer

2要素認証(2FA)とは?

お問い合わせ

二要素認証の定義

二要素認証(2FA)は、ある人物が本人である可能性を高めるためのセキュリティプロセスです。このプロセスは、ユーザーがアプリケーションやシステムにアクセスする前に、ユーザー名とパスワードだけでなく、2つの異なる認証要素を提供するよう要求します。

二要素認証は、高度化するサイバー攻撃が多発するサイバーセキュリティ環境の中で、組織がデータとユーザーを保護するために不可欠なセキュリティツールです。企業は規模にかかわらず、攻撃者の巧妙化する攻撃を阻止し、悪意のあるアクターを自社のネットワークやシステムから排除するために、防御を継続的に進化させる必要があります。

二要素認証とは、組織がアプリケーションやWebサイトにアクセスするためにパスワードだけに頼らず、もう一段階のセキュリティを加え、2段階の認証プロセスで脅威を防御することを意味します。 


これにより、サイバー犯罪がユーザーのIDを盗んだり、ユーザーのデバイスやアカウントにアクセスすることがより困難になります。また、ユーザーのパスワードが盗まれた場合でも、攻撃者をシステムから排除することが可能になります。このプロセスは、攻撃者が標的ユーザーのパスワードを盗み、そのユーザーになりすますフィッシング攻撃など、一般的なサイバー脅威を防ぐために広く使用されています。

認証要素とは

本人のIDを確認する認証要素には、いくつかの種類があります。次の種類が最もよくある認証要素です。

  1. 知識要素:ユーザーが知っている情報、例えばパスワード、個人識別番号(PIN)、パスコー ドなど
  2. 所持要素:ユーザーが所持する情報、例えば、運転免許証、身分証明書、モバイルデバイス、スマートフォン上の認証アプリなど
  3. 生体要素:個人属性やユーザーの特徴を示す情報であり、一般的には何らかの生体認証情報を指す。指紋リーダー、顔認識または音声認識、そしてキーストロークダイナミクスやスピーチパターントラッカーなど
  4. 場所要素:一般的に、ユーザーが自分の ID の認証を試みる場所を指す。組織は、システムへの従業員のログイン方法とログイン場所に応じ、特定の場所の特定のデバイスに対する認証を制限できる 
  5. 時間要素:ユーザーがサービスにログインするために認証を要求できる時間帯を、1日のうち特定の時間帯のみに限定する。この時間帯以外のアクセスはすべてブロックまたは制限される

二要素認証の仕組み

二要素認証は、ユーザーがアプリケーション、サービス、またはシステムにアクセスしようと試みると起動し、アクセス権が付与されると終了します。認証プロセスは以下の通りです。

  • ステップ1:ユーザーがサービス、システムアプリケーション、またはWebサイトにアクセスする。その後、ログイン時に認証情報の入力を求められる
  • ステップ2: ユーザーが認証情報を入力する。通常、ユーザーはユーザー名とパスワードの入力を求められる。入力された認証情報が正しい一次認証情報であれば、アプリケーションやウェブサイトは認証を行う
  • ステップ3: アプリケーションまたはWebサイトがパスワードによるログイン認証情報を使用しない場合、ユーザーのセキュリティキーを生成する。このキーは認証ツールで処理され、サーバーはこの一時的なリクエストを検証する
  • ステップ4:ユーザーは二次認証要素の送信を求められる。これは通常、そのユーザーだけが持つ所有要素である。例えば、アプリケーションやウェブサイトは、ユーザーのモバイルデバイスに送信される一意のコードなど
  • ステップ5:ユーザーはアプリケーションまたはウェブサイトにコードを入力し、コードが承認されると、ユーザーは認証され、システムへのアクセスが許可される

二要素認証(2FA)を有効にする方法

すべてのWebサイトやアプリケーションが二要素認証に対応しているわけではありませんが、有効化できる場合は、Webサイトの設定で二要素認証をオンにします。正確な手順はWebサイトによって異なりますが、手順は非常にシンプルです。例えば、LinkedInの場合、「設定」→「サインインとセキュリティ」→「2段階認証」で有効にできます。

よくある二要素認証の種類

ユーザーが本人であることをさらに確認するための二要素認証には、いくつかの種類があります。シンプルな例としては、セキュリティ質問への回答やワンタイムコードの提供などがあります。また、トークンやスマートフォンのアプリケーションを使用する人もいます。よくある二要素認証の種類には以下があります。

二要素認証用ハードウェアトークン

ハードウェアトークンは、二要素認証フォーマットの元の形の一つです。30秒ごとに一意の数値コードを生成する小型のキーフォブデバイスが一般的です。ユーザーが最初の認証リクエストを送信すると、キーフォブに進み、表示中のコードを発行することができます。ハードウェアトークンには、コンピュータに挿入すると自動的に認証コードが転送されるUSB(ユニバーサルシリアルバス)デバイスなどがあります。

その一例がYubiKeyです。これはユビキタスキーの略で、Amazon、Google、Microsoft、Salesforceなどのサービスに第二認証要素を加えることができるセキュリティキーです。このUSBデバイスは、GitHub、Gmail、WordPressなど、ワンタイムパスワード(OTP)に対応したサービスにユーザーがログインする際に使用します。ユーザーは、YubiKeyをUSBポートに差し込み、パスワードを入力し、YubiKeyフィールドをクリックし、デバイスのボタンをタッチします。44文字のOTPを生成し、ユーザーの端末に自動入力することで、保有する二要素認証情報で認証を行います。

ハードウェアトークンデバイスは、組織が配布するには一般的に高価です。さらに、ユーザーが紛失しやすく、ハッカーに解読される可能性もあるため、安全性の低い認証手段となっています。

テキストメッセージとSMSの二要素認証

ショートメッセージサービス(SMS)とテキストメッセージ二要素認証情報は、ユーザーがアプリケーションまたはサービスへログインを試行した際に生成されます。モバイルデバイスにSMSメッセージが送信され、ユーザーがアプリケーションまたはサービスに入力する一意のコードが付与されます。この二要素認証情報の種類は銀行や財務サービスで使用され、顧客がオンラインバンキングアカウントで行った購入や変更を検証しています。ただし、テキストメッセージは簡単に傍受されてしまうため、一般的にはこの選択肢は避けられています。

SMS情報に似たものに、ボイスコールの二要素認証があります。ユーザーがログイン認証情報を入力すると、モバイルデバイスに、入力する必要のある二要素認証コードを知らせるコールが届きます。これはあまり使用されていませんが、スマートフォン所持率の低い国の組織によって使用されています。

二要素認証のプッシュ通知

より一般的に使われているパスワードレスの2段階認証の形式は、プッシュ通知です。ユーザーは、ハッキングされる可能性のあるSMSや音声によるコードをモバイルデバイスではなく、認証システムに登録されたデバイス上の安全なアプリにプッシュ通知を送ることができます。この通知は、要求されたアクションをユーザーに知らせ、認証が施行されたことを警告します。そして、そのアクセスリクエストを承認するか拒否するだけです 

この認証形式は、ユーザーがアクセスしようとしているアプリやサービス、二要素認証サービスプロバイダー、ユーザー自身、そしてユーザーのデバイスの間につながりを作ります。ユーザーフレンドリーで、フィッシング、MITM(マンインミドル)攻撃、ソーシャルエンジニアリング、不正アクセスの試行などのセキュリティリスクの可能性を低減します。

この認証形式は、SMSや音声通話よりも安全ですが、リスクを伴います。例えば、プッシュ通知が表示されたときに承認ボタンを素早くタップすることで、不正にリクエストされた認証リクエストを誤って承認してしまうことがあります。

モバイルデバイス用二要素認証

スマートフォンでは、二要素認証にさまざまな可能性があり、企業は自分たちに最適な方法で利用することができます。指紋を認識できるデバイスもあります。内蔵カメラを使って顔認証や虹彩認証、マイクを使って音声認証を行うことができます。グローバルポジショニングシステム(GPS)を搭載しているスマートフォンは追加情報として場所を検証することができます。音声やSMSを帯域外認証 のチャネルとして使用することもできます。

信頼できる電話番号を使用して、テキストメッセージまたは自動電話で検証コードを受け取ることができます。Apple iOS、Google Android、Windows 10には、二要素認証に対応したアプリケーションが用意されており、携帯電話そのものを、所有情報を満たす物理的なデバイスとして使用することができます。

2018年にシスコが23.5億ドルで買収したミシガン州アナーバーに本拠を置くDuo Securityは、二要素認証プラットフォームベンダーであり、その製品は顧客の信頼できるデバイスを二要素認証に使用できます。Duoのプラットフォームは、まずユーザーが信頼されていることを確認してから、そのユーザーを認証するためにモバイルデバイスも信頼できるかどうかを検証します。

認証アプリケーションは、テキスト、音声通話、またはEメールで認証コードを取得する必要があります。例えば、Google Authenticatorに対応したウェブサイトやウェブベースのサービスにアクセスする際、ユーザーはユーザー名とパスワードを入力しますが、これは知識情報です。その後、6桁の番号を入力するよう促されます。数秒待ってテキストメッセージを受け取るのではなく、認証者が代わりに番号を生成するのです。この数字は30秒ごとに変わり、ログインごとに異なります。正しい番号を入力することで、ユーザーは認証プロセスを完了し、正しいデバイスを所有していることを証明することができます(所有情報)。

多要素認証対二要素認証(MFA対2FA)

二要素認証は、多要素認証(MFA)の幅広いコンセプトのサブセットです。MFAでは、ユーザーがサービスにアクセスする前に、複数の認証情報を検証することを求めます。これは、アイデンティティおよびアクセス管理(IAM)ソリューションのコアとなるもので、ユーザーが本人であることを確実にすることで、データ侵害やサイバー攻撃の可能性を低減します。

二要素認証と多要素認証の主な違いは、二要素認証では認証情報に追加が必要なフォームが1つのみであるということです。一方で多要素認証は、ユーザーが本人であることを確認するために、アプリケーションが必要とする数の認証要素を使用することができます。

これは、攻撃者が従業員の身分証明書やパスワードなどの認証要素を解読できてしまうからです。その結果、企業はさらに認証要素を追加して、ハッカーの作業をより困難にしなければなりません。例えば、安全性の高い環境では、物理的情報と知識的情報の組み合わせに加えて、生体認証情報を含む、より高度なMFAプロセスが求められることが多いです。また、地理的な位置、使用されているデバイス、サービスにアクセスしている時間、継続的な行動の確認などの要素も考慮されることが多いです。

どのような認証プロセスにおいても、エンドユーザが使いやすいと感じるシステムと、企業がデータやシステムを保護するために必要なセキュリティレベルとの間で、幸せな関係を築くことが重要です。従業員は、遅くて信頼性の低い認証ソリューションに阻まれることを望んでおらず、必然的に仕事の妨げとなる煩雑なプロセスを回避しようとします 

二要素認証はセキュアか?

ユーザーがアプリケーションやウェブサイトへのアクセスを許可される前に、複数の認証要素を必要とすることは、ユーザー名とパスワードの組み合わせだけに頼るよりも本質的に安全です。したがって、二要素認証は、ユーザーにシングルパスワード保護機能の入力を求めるだけの場合よりも安全性は高いです。同じロジックで、多要素認証は二要素認証よりも安全であると考えることができます。多要素認証は、組織がユーザーに多くの認証要素の提示を求めることができるからです。

ただし、二要素認証のセキュリティレベルには欠陥があります。例えば、ハードウェアトークンを使用すると、デバイスメーカーがセキュリティを怠った場合に組織が脆弱になる可能性があります。2011年にセキュリティ企業のRSA社がSecurID認証トークンをハッキングされた結果、データ侵害の被害に遭ったときもそうでした。

他の認証情報にも欠陥があります。SMSの二要素認証は安価で従業員も取り入れやすいですが、サイバー攻撃には脆弱です。SMSを使った二要素認証は、米国標準技術研究所(NIST)が、さまざまなポータビリティ攻撃やマルウェアの問題に対して脆弱であるとし、推奨していません。

しかし、ほとんどのサイバー攻撃は遠隔地から行われるため、二要素認証は企業を守るための比較的有効なツールとなっています。通常、攻撃者が盗んだユーザー認証情報やパスワードを使ってアプリケーションやシステムにアクセスすることを防ぎます。また、特に生体認証情報については、攻撃者がユーザーの2つ目の認証項目にアクセスできる可能性は低いと考えられます。

フォーティネットの二要素認証とアイデンティティアクセス管理ソリューション

昨今、クラウドアプリケーション、ディレクトリサービス、ネットワーク機器、サーバーなど、複数のシステムで構成されるID環境を管理する企業が増えています。これらの環境は、ユーザーエクスペリエンスの低下、アプリケーション開発者の混乱、管理負荷など、管理業務に大きな影響を与える可能性があります。その結果、企業はコードの脆弱性、不適切なユーザーアクセスレベル、不適切に管理されたソフトウェアアップデートによるデータ漏洩の影響を受けやすくなる可能性があります。

フォーティネットのアイデンティティアクセス管理ソリューションは、ネットワーク上のユーザーやデバイスのアイデンティティを安全に認証・管理するために必要なサービスを提供します。この堅牢なソリューションにより、企業はユーザーのアイデンティティを管理し、ユーザーが必要なシステムやリソースにのみアクセスできるようになります。

フォーティネットのIAMソリューションは、3つのコアコンポーネントで構成されています。

  1. FortiAuthenticator:FortiAuthenticatorは、シングルサインオンサービス証明書管理、ゲストアクセス管理など、フォーティネットセキュリティファブリックの集中認証サービスを使用して、企業リソースへの不正アクセスを防ぎます。
  2. FortiToken:2つ目の認証要素を必要とすることで、ユーザーのアイデンティティを二重にチェックします。認証にはモバイルアプリケーションと物理トークンを使用します。
  3. FortiToken Cloud:組織が多要素認証ソリューションの管理を行える、直感的なダッシュボードを搭載したサービス型多要素認証です。

これらの3つのコンポーネントを組み合わせることで、増加するデバイスからシステムへのアクセスを要求する大人数の従業員を管理する際に企業が直面するIAMの課題に対応します。

よくある質問

2FAとは?

2FAは二要素認証(two-factor authentication)を意味します。これは組織のアプリケーション、システム、ウェブサイトのセキュリティを向上させるためのセキュリティプロセスです。

2要素認証とは?

二要素認証とは、ユーザーが本人であることを証明するため2つの認証要素を必要とするプロセスです。ユーザーがアプリケーションやシステムにログインする際に使用されます。これは、簡単にハッキングされたり盗まれたりするユーザー名とパスワードでログインするのに比べ、さらなるセキュリティの層を提供します。

二要素認証はハッキングされる可能性がありますか?

二要素認証はハッキングされる可能性があります。ハードウェアトークンなどの二要素認証ツールは、危険にさらされる恐れがあり、SMSメッセージが悪意のあるアクターによって傍受される可能性があります。ただし、二要素認証はパスワードのみに頼るよりもセキュアなログインプロセスです。

多要素認証とは

多要素認証とは、ユーザーが本人であることを確認するために、複数の認証要素を使用できるようにするセキュリティプロセスです。多要素認証とは複数の認証要素を使用してユーザーにアカウントへのアクセスを許可するものです。