WindowsマシンにWinAuthをインストールすることで、多要素認証の仮想MFAデバイス(時間ベースのワンタイムパスワード生成器)として利用できるようにする話。社員に配布しているのはWindowsマシンだけなのだけど、BYODの雰囲気がある私有スマホは業務での多要素認証に使わせたくない、という組織を想定しています。
なぜWinAuthを使うのか
AWS等ではセキュリティ強化のためにMFA(多要素認証)が利用可能で、認証の第二要素として仮想MFAデバイスが利用できます。これは特定の端末上に構成された、TOTP(時間ベースのワンタイムパスワード)ソフトウェアです。一般には各自のスマートフォン上の多要素認証アプリケーション(例えばGoogle AuthenticatorやMicrosoft Authenticator)が使われるでしょう。
それを避け、Windows端末を多要素認証用のデバイスとして利用したいという企業(組織)ニーズとして、ここでは以下を想定しました。
- **会社貸与のWindowsマシンだけで多要素認証を行わせたい。**例えば企業として従業員にスマートフォンは貸与していないが、BYODの仕組みはないので、私有スマートフォンでの認証を避けたい。
- **電子機器持込み禁止のエリアで、据置きのWindowsマシンで多要素認証を行わせたい。**例えば本番環境への運用作業場所は専用のオペレーションルームなどに限定しており、ここへの電子機器持込みは認めていない。
またWindowsで広く使われるパスワードマネージャー、例えばLast Passwordや1passwordなどもワンタイムパスワード(TOTP)の機能を持ち仮想MFAデバイスとして使えます。これについては、組織として、**端末間でデータが同期されるかコピーできるものは多要素認証と認めない**ことを想定しています。
いろいろと縛りがめんどくさい想定ですが、私の知っている実在環境でも該当するものがあります。こうしたケースを想定した時、以下が要件になります。
- Windows上で動作する
- データが端末内で完結し端末外に出ない(端末に紐づく)
WinAuthはこれを満たすものとして選択しました。他にも候補があるかもしれませんが、要件を満たすものがあったことで十分とし、調査比較はしていません。
WinAuthのインストール
-
GitHubのWinAuthのページの
Download Latest Stable Version」からLatest VersionのZIPファイルをダウンロード
- ZIPファイルを展開する
WiAuthにAWS MFA仮想デバイス登録
- 展開されたフォルダ内の
WinAuth.exe
を実行 -
[Add]
>[Authenticator]
を選択
- 「Add Authenticator」画面の1.の入力欄に、AWSの仮想MFAデバイス登録画面で表示されるコードを貼り付け
-
Verify Authenticator
をクリック - AWSの仮想MFAデバイス登録画面に、「Add Authenticator」画面の4.に表示されるコード2回分を貼り付けて登録
- 「Add Authenticator」画面の
OK
をクリックして登録 - 「Protection」画面で以下を実施