多要素認証とは

多要素認証(MFA:Multi-Factor Authentication)とは、ユーザーがシステムやアカウントにログインする際に、2つ以上の異なる要素を組み合わせて本人確認を行う強力なセキュリティ手法です。従来の「ユーザーIDとパスワード」だけによる認証(単一要素認証)は、パスワードが推測されたり、フィッシング詐欺で盗み出されたりすると、いとも簡単に不正アクセスを許してしまう脆弱性があります。MFAを導入すると、パスワード(記憶情報:知っていること)に加えて、スマートフォンアプリで生成される一時的なコードや専用の物理キー(所持情報:持っていること)など、別の証拠の入力を求められます。これにより、万が一パスワードが漏洩しても、手元にあるデバイスがなければログインできないため、アカウント乗っ取りのリスクを劇的に低下させることができます。
具体例
多要素認証の仕組みは、銀行のATMで現金を引き出すプロセスに非常に似ています。ATMでお金を引き出すには、銀行の「キャッシュカード(所持情報:持っているもの)」を機械に入れ、さらに「暗証番号(記憶情報:知っていること)」を入力する必要があります。もし暗証番号を誰かに知られてしまっても、カードそのものがなければお金は引き出せませんし、逆にカードを落としても、暗証番号がわからなければ悪用されません。このように2つの異なる要素が揃って初めて取引が成立するのが多要素認証の考え方です。
AWS環境において具体的には、AWSマネジメントコンソールにログインする際、まずIDとパスワードを入力します。これが成功すると、次の画面で「MFAコード」の入力が求められます。ユーザーは手元のスマートフォンにインストールした認証アプリ(Google AuthenticatorやAuthyなど)を開き、そこに表示されている30秒ごとに変化する6桁の数字(ワンタイムパスワード)を入力することで、初めてコンソールにアクセスできるようになります。
もう少し詳しく
認証に用いられる「要素」は、大きく以下の3つのカテゴリーに分類されます。
1. 知識情報(Something you know):パスワード、PINコード、秘密の質問の答えなど、本人だけが「知っている」情報。
2. 所持情報(Something you have):スマートフォン(認証アプリやSMS受信)、ハードウェアトークン、スマートカード、セキュリティキー(YubiKeyなど)など、本人が「持っている」物理的なデバイス。
3. 生体情報(Something you are):指紋、顔認証、静脈認証、虹彩認証など、本人の「身体的特徴」そのもの。
多要素認証は、これら3つの要素のうち「2つ以上」を組み合わせることを指します(2要素認証:2FAと呼ばれることもあります)。AWSのIAM(Identity and Access Management)においては、所持情報を用いたMFAが一般的に利用されます。具体的には、仮想MFAデバイス(スマホの認証アプリ)、U2Fセキュリティキー(USBポートに挿す物理キー)、ハードウェアMFAデバイス(キーホルダー型のパスコード生成機)の3種類をサポートしています。AWSのセキュリティベストプラクティスでは、全権限を持つ「ルートユーザー」に対しては例外なく絶対にMFAを有効化することが強く推奨されています。さらに、特権を持つIAMユーザーや、すべての一般IAMユーザーに対しても、可能な限りMFAを強制することがセキュリティの向上に不可欠です。また、API操作やAWS CLIを利用する際にも、MFAを要求するようにIAMポリシーで条件(Condition)を設定することが可能です。
試験でのポイント
AWS認定クラウドプラクティショナー(CLF-C02)試験において、MFAはセキュリティ対策の基本中の基本として頻出します。
最も重要なポイントは、「ルートユーザーには必ずMFAを設定して保護しなければならない」というAWSのベストプラクティスです。これはアカウント乗っ取りを防ぐための最優先事項として問われます。
また、セキュリティを強化する手段として「パスワードを長く複雑にする」「パスワードを定期的に変更する」といった選択肢と並んで、「MFAを有効化する」という選択肢が正解になることがよくあります。
さらに、「MFAとは何か?」という概念自体を問う問題も出題されます。「ユーザー名とパスワードに加えて、所有しているデバイスで生成された認証コードを要求することで、セキュリティの層を追加する仕組み」といった説明を正しく選べるようにしておきましょう。単にパスワードを2回入力することはMFAではなく、異なる種類の要素(記憶と所持など)を組み合わせることが重要です。
関連する用語
関連用語として、MFAの必須対象である「ルートユーザー」、MFAの設定・管理を行う基盤サービスである「IAM」、強力な認証によって防ぐべき「セキュリティグループ」等の不正変更があります。