SaaS

Okta Desktop MFA for macOSを検証してみた!

こんにちは!たつみんです。

先日、Okta Deskop MFA for Windowsについてブログ記事を公開しましたが本日はmacOS版の記事です。for Windowsと共通する部分もありますが若干異なる部分もありますのでその点にも触れながらご紹介いたします。

なお、記事執筆時の2023.11.01時点ではOkta Desktop MFA for macOSはLimited Early Access(限定早期アクセス)として提供されています。

3行まとめ

  • macOS端末のログイン時にMFAを行うことができるよ
  • オンラインMFAもオフラインMFAのどちらにも対応できるよ
  • for Windowsと違ってスリープ解除時には対応していないよ

はじめに

Okta Desktop MFA for macOSはMac端末のログイン時にMFAを行うことができます。 for Windowsと違いスリープ解除時にMFAを行うことはできません。

Okta Desktop MFA for macOSはOkta Device Accessという新しいライセンスで提供されます。ご利用を検討する場合はOkta取り扱い代理店へお問合せください。

設定後の挙動について

まずはOkta Desktop MFA for macOSを導入するとどのような挙動となるかからご紹介いたします。

オンライン時のMFA

パスワード入力後に手元のスマートフォン設定済みのOkta Verifyアプリに届くPush通知に応答することでMFAを実現しています。

オフライン時のMFA

パスワード入力後に手元のスマートフォンに設定済みのオフライン用OTPを確認し入力することでMFAを実現しています。

検証時の環境について

今回の検証では以下の環境で実施しました。

  • Okta Identity Engine環境を利用している
  • 検証ユーザーのOktaアカウントはモバイル版Okta VeifyでPush通知を設定済み
  • 検証macOS端末がJamf Proで管理されている
  • 検証macOS端末のOSは13.6.1

設定方法

参照ドキュメント(記事執筆時は英語版のみの提供)

Oktaでアプリケーションの作成

このアプリケーションの作成作業はfor Windowsと共通となります。すでに設定済みの場合に新たに作成する必要はありません。

  1. Okta管理画面>Applications>ApplicationsからBrows App Catalogをクリックします。
  2. Desktop MFAを検索しAdd integrationをクリックします。
    1. Desktop MFA機能が利用できるOktaテナント以外ではAdd Integrationをクリックした時にThis feature isn’t enabledと表示され追加することができません。
  3. General Settingsでは特に変更する箇所がないため、Nextをクリックします。
  4. Sign OnではApplication username formatを指定しますが、ここでは初期値であるOkta usernameのまま進め、Doneをクリックします。
  5. Assignmentsタブから検証ユーザーをアサインします。
  6. Generalタブに表示されているClient IDおよびClient secretをコピーしておきます。これらの値は次の工程であるJamf Pro側設定で利用します。

Authentication Policyについて

作成したアプリケーションDesktop MFAには専用のAuthentication Policyが作成されます。このポリシーではオンライン時のMFAについてどのような挙動とするかを設定できます。必要に応じてルールを調整しましょう。

今回はAny 1 Factorとしました。というのも最初はAny 2 Factorとしていましたが、実際の挙動ではパスワードが必ず必要となります。パスワードはこのAuthentication PolicyのFactorとしてはカウントされないため、Any 2 Factorとしてしまうとパスワード入力後さらに2 Factorが必要となってしまいます。これはOkta Verify Push通知とFace ID(もしくはTouch ID)などの所持情報と生体情報という組み合わせを同時に利用できない場合にはログイン不可となってしまうためAny 2 Factorは適さないと判断しました。

Jamf ProでのOkta Verify配布

以下では検証目的を達成するための最低限の設定内容のみに触れます。

  1. Okta管理画面のSettings>DownloadsからOkta Verify for macOSのDownload LatestをクリックしOktaVerify.pkgファイルをダウンロードします。
  2. Jamf Pro管理画面から設定>コンピュータ管理>パッケージをクリックします。
  3. 新規をクリックし、表示名を設定後にファイルを選択から手順1.でダウンロードしたOktaVerify.pkgファイルをアップロードします。
  4. コンピュータ>ポリシーから新規をクリックします。
  5. Generalで表示名を設定し、トリガーにログインにチェックを入れます。
  6. 左メニューからパッケージをクリックし、Configureをクリックします。
  7. 手順3.でアップロードしたOktaVerify.pkgを選択します。
  8. Packagesで配布ポイントを指定し、OktaVerify.pkgのアクションとしてInstallを指定します。
  9. 最後にScopeタブで適用する端末を指定し、保存をクリックします。

構成プロファイルの配布

Desktop MFA for macOSの挙動を制御するための設定を構成プロファイルとして定義し配布します。

設定可能な項目は以下のドキュメントにあるAdd Desktop MFA policies by plist部分を参照しましょう。

  1. Jamf Pro管理画面のコンピュータ>構成プロファイルから新規をクリックします。
  2. Generalで表示名を設定します。
  3. 左メニューからアプリケーションとカスタム設定内のアップロードをクリックし、追加をクリックします。
  4. 環境設定ドメインでcom.okta.deviceaccess.servicedaemonを入力します。
  5. プロパティリストには以下のサンプルを参考に設定します。
<?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>DMFAClientID</key>
<string>add-your-client-ID-here</string>
<key>DMFAClientSecret</key>
<string>add-your-client-secret-here</string>
<key>DMFAOrgURL</key>
<string>add-your-org-URL-here</string>
<key>LoginPeriodWithOfflineFactor</key>
<real>24</real>
<key>LoginPeriodWithoutEnrolledFactor</key>
<real>48</real>
<key>AdminEmail</key>
<string>admin@yourorg.com</string>
<key>AdminPhone</key>
<string>111-222-3333</string>
<key>MFARequiredList</key>
    <array>
    <string>*</string>
    </array>
</dict>
</plist>

この時に以下の3つは必須項目です。それぞれの環境に応じて置き換える必要があります。

  • add-your-client-ID-here
    • Oktaでアプリケーションの作成の手順6.で取得したClient IDの値
  • add-your-client-secret-here
    • Oktaでアプリケーションの作成の手順6.で取得したClient secretの値
  • add-your-org-URL-here
    • 利用しているOktaテナントのURL例:https://example.okta.com/

今回実際に設定したものが以下となります。

  1. 最後にScopeタブで適用する端末を指定し、保存をクリックします。

動作確認

macOS端末を一度再起動をすることでOkta Verifyアプリがインストールされます。もう1度再起動すると以下の動画のようにパスワード入力後にセットアップを促すウィンドウが表示されます。案内に従ってセットアップを実施します。この時、for Windowsと違いオフラインMFAとしてYubikeyの設定は行えません。

以下のようにOkta VerifyにはDevice access codeとして登録され、デバイス名や紐づいているローカルアカウント名が表示されていることが確認できます。

端末を再起動し、オンライン状態とオフライン状態で動作確認をします。冒頭で紹介した設定後の挙動の動画のように動作すればOKです。

最後に

Desktop MFA for macOSについて検証をしてみました。for Windowsと同様にログイン時にMFAを効かせることができることが確認できました。スリープ解除時にはMFAが求められない点が少々気になりますが同じライセンスでWindows端末もmacOS端末も対応できる点はメリットに感じる人がいらっしゃるのではないでしょうか。

次回はOkta Desktop Password Sync for macOSについての検証結果を記事にする予定です。それではまた次の記事でお会いしましょう!

たつみん

事業会社の情シスからクラウドネイティブにJoin!
好きなものはF1海外観戦とベルギービール!
集中力の質は深く長く遅い典型的なシングルタスクタイプです。