Jamf Connect で オフラインMFAを使う
発表からだいぶ時間が経ってしまいましたが。。。Jamf Connect 2.24.0 で実装されたJamf Connect で オフラインMFAの設定をご紹介します。
これまで、Jamf Connect の導入をする際、「クラウドIDPへの認証を必須にしたいが、オフラインで作業できない状態は困る。」という声に対しては、ローカルフォールバックの機能を有効にしてローカルログインをする提案をしていました。
ただその場合、意識的にオフラインにすることでローカル認証のみでログインできてしまう弱点がありました。
今回ご紹介するオフラインMFAの機能を追加することで、オフラインの状態でも認証にもうひとつ要素を加えることができます。
Jamf Connect のオフラインMFAは簡単に言うと認証アプリ(Authenticator)のOTP(ワンタイムパスワード)を使用した認証の仕組みです。
1. 利用の前提
Jamf Connect ドキュメント によると、オフラインMFA機能を使用するには下記の条件を満たす必要があります。
あとは当然ですが、Jamf Connect 2.24.0以上のバージョンが必須です。
2. 設定開始
今回は下記の構成で設定を実施します。
認証アプリ:Microsoft Authenticator
端末のOS:macOS 12.6.7
アイデンティティプロバイダ (IdP):Azure Entra ID (元 Azure AD)
実施する内容はざっくり以下の2つです。
Jamf Connect Loginへ、オフラインMFAを有効化する構成プロファイルを作成して適用する
Jamf Connect MenuBarにて、OTP(ワンタイムパスワード)設定をする
それでは、詳細に入りましょう!
2-1. Jamf Connect Loginへ、オフラインMFAを有効化する構成プロファイルを作成して適用する
今回は、Jamf Connect 運用中の環境へ追加でオフラインMFAを設定するイメージで実施します。
その場合は、下記内容のplistを作成してアップロードすると簡単です。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>OfflineMFA</key>
<true/>
</dict>
</plist>
環境設定ドメイン : com.jamf.connect.login
プロパティリスト : 作成した.plistをアップロード
・key: OfflineMFA
・設定内容:true
Jamf Connect Configurationを使用する場合は、[Login]タブのAutnenticationセクションにある「Offline MFA」にチェックするだけでOKです。
2-2. Jamf Connect MenuBarにて、OTP(ワンタイムパスワード)設定をする
構成プロファイルの適用ができましたら、次はJamf Connect MenuBarにて、OTP(ワンタイムパスワード)設定します。画面右上にあるJamf Connect MenuBarをクリックして[OTP設定…]のメニューをクリックしてください。
[OTP設定…] のメニューが表示されていない場合は、一度[Jamf Connectを終了]で終了させて起動すると表示されるはずです。
[OTP設定…]から「オフラインの多要素認証」画面が表示されるので、案内に沿って認証アプリを登録します。
こちらの画像は、Microsoft Authenticator の場合の画像です。
QRコードのスキャンで下記のような形で認証方法が追加されます。
表示されているワンタイムパスワードの値を「オフラインの多要素認証」画面の
③の箇所へに入力して[送信]ボタンを押下すると、バックアップコードが発行されます。
バックアップコードは、認証アプリが使用できなくなった場合に使用します。
(認証用端末が手元にない場合でも、このコードを使用してログインできます)
[続行]ボタンで設定完了です。
3. オフラインMFAの動作確認
3−1 . ワンタイムパスワードが使用できる場合
端末を再起動すると(設定している場合は)FileVaultの解除画面が表示され、FileVaultの解除後オフラインにすると、ネットワークに接続されていない旨のエラーがでます。(下左の画像)
画面下部の[ローカルログイン]ボタンでローカルログイン画面(上右の画像)を表示させてローカルログインをすると、続いて「IDを検証」画面が開きます。
Microsoft Authenticatorに表示されたワンタイムパスワードを入力して[続行]ボタンをクリックするとログインができます。
3−2. ワンタイムパスワードが使用できない場合(認証端末を忘れた。もしくは端末で認証できない状態になった場合)
「IDを検証」画面の表示までは、通常パターンと同じです。
「IDを検証」画面右下の「サインインのヘルプ」をクリックすると、下記の画面が表示され、2−2. で言及したバックアップコードを入力して[続行]ボタンをクリックするとログインができます。
! バックアップアップコード使用時の注意 !
バックアップコードを使用してログインすると、オフラインMFAが利用できなくなります。
(=オフラインMFAのないローカルフォールバックと同じ状態になります)
再度、オフラインMFAを利用するには、「2-2. Jamf Connect MenuBarにて、OTP(ワンタイムパスワード)設定をする」の手順を実施していただく必要があります。
忘れやすいので、要注意です。
ワンタイムパスワードが有効になっているかは、拡張属性で調べることができます。下記リンク先のXMLファイルをJamf Proの 設定>コンピュータ管理>拡張属性 画面からアップロードしてください。
Jamf Connnect - Offline MFA.xml
もしくは、こちらのスクリプトを使用してください。
#!/bin/bash
currentUser=$(ls -l /dev/console | awk '/ / { print $3 }')
# ログインユーザのOffline MFAキーチェーンを確認。 YESなら有効/Noは無効(単純なローカルフォールバック状態)
echo "<result>`sudo /Applications/Jamf\ Connect.app/Contents/MacOS/jamfconnect_tool offline-mfa -e $currentUser`</result>"
Offline MFAのOTP(ワンタイムパスワード)設定が有効になっているとこちらの表示になります。
また、Offline MFAのOTP(ワンタイムパスワード)設定が無効になってると以下の表示になります。
おわりに
端末利用者の協力が必要ですが、比較的簡単な設定で端末へのログイン認証のセキュリティを強化できるため、おすすめです。
導入の際はテスト端末等でお試しの上、実施してください。
Jamf Connect 2.24.0以上の利用が必須であるため、長い間Jamf Connect をアップデートをされていない方はJamf Connect のアップデートをお忘れなく!
特に、導入時に展開とアップデートの設定を「手動」や「メンテナンス」に設定している場合は、バージョンの要件が満たされているか確認が必要です。
以上、 今回はエンジニアの中峯が担当いたしました。
最後まで読んでいただき、ありがとうございました。