最近は多要素認証が求められる事が多くなっており、業務でほぼ毎日2段階認証でアプリを利用しています。日常生活でも電話番号による認証の確認コードやクレジットカードの登録でワンタイムパスワードが必要になる等、多要素認証は必要不可欠な仕組みとなります。


多要素認証(MFA:Multi-Factor Authentication)とは

インターネットサービスやシステムにログインする際に、複数の異なる要素を組み合わせて本人確認を行う仕組み

多要素認証の3要素

多要素認証では、以下の3つの要素のうち2つ以上を組み合わせて認証を行います。

・知識情報: パスワード、PINコード、秘密の質問など、本人のみが知っている情報

・所持情報: スマートフォン、ICカード、セキュリティトークンなど、本人のみが所持しているもの

・生体情報: 指紋、顔認証、虹彩認証、声紋認証など、本人の身体的な特徴

多要素認証の仕組み
例えば、インターネットバンキングにログインする場合、通常はIDとパスワード(知識情報)を入力します。これに加えて、多要素認証が設定されている場合は、以下のような追加の認証が求められます。

・SMS認証: 登録した電話番号に送信されたワンタイムパスワード(所持情報)を入力する
・認証アプリ: スマートフォンアプリで生成された認証コード(所持情報)を入力する
・生体認証: 指紋や顔認証(生体情報)を行う

  このように、複数の要素を組み合わせることで、たとえパスワードが漏洩した場合でも、不正なログインを防ぐことができます。  


Geminiがすべて要約してくれました。素晴らしい時代ですね。

今回の主役 ”WinAuth”

・WinAuth

無料のオープンソースソフトウェア。Windowsマシンで多要素認証が可能。スマホ持ち込み禁止等でPCだけでどうにか・・・等ピンポイントな所で活用します。多要素認証としてはWindowsマシンのみで完結してしまうため、物理的に Windowsマシンが故障した際等のリスクあり。

https://winauth.github.io/winauth/download.html

AWSにWinAuthでMFA登録してみる

AWSのMFA設定するユーザーを選択

MFAデバイスの割り当てる

シークレットキーをコピー

WinAuthを開いて「Add」をクリックして「Authenticator」を選択

名前を入れてシークレットキーを貼り付け

AWS側にコードを入力してWinAuthとAWSのMFA登録完了

MAF登録後のユーザー名とパスワード入力後のサインイン画面のMFAコードが要求される

おわりに

場面は限られますが知識としてはこんなことが出来るぐらいで覚えておくと便利かもしれません。最後にですがサードパーティー製なので色々と調べてから使用することをお勧めします!