VISASQ Dev Blog

ビザスク開発ブログ

Oktaでデバイストラスト環境を構築してみた話

Oktaでデバイストラスト環境を構築してみた話


はじめに

こんにちは、ITチームのオーライです!

【Oktaを使ったデバイストラスト環境構築】についての経験談をまとめています。
実施したこと、振り返り、これからデバイストラストを導入する方に向けて押さえるべきポイントをお話しします。


対象読者

  • Oktaをこれから導入・運用しようとしている方
  • Oktaのデバイストラストや認証ポリシーに興味のある方
  • 認証ポリシーをどのように構築するか知りたい方

前提知識

この記事では以下の知識を前提としています:

Oktaおよびデバイストラストについては、下記をご確認ください。


今回やったこと

今回はデバイストラストの環境構築から、アクセス認証ポリシーの策定、リリースまでを実施しました。
ざっくりとですが、やったことは下記のとおりです。

  • Okta Verify とデバイス管理証明書の配布
  • コンテキストの洗い出しと、認証ポリシー策定
  • 社員へOkta Verify セットアップと、MFAの設定を実施依頼
  • ヘルプデスク上でのセットアップ等のトラブルシューティング対応

参照したもの

Oktaによるデバイストラスト環境を構築するにあたって、参照したドキュメントやブログは以下の通りです。


実践

1. 情報収集・やることを洗い出し

Oktaのドキュメントやブログを参照し、情報を収集しました。

できること

  • 認証ポリシーの設定: 管理対象デバイス、非管理デバイスごとにアクセス制御を設定可能。
  • MFA連携: Okta Verifyによるデバイストラスト構築(FastPass推奨)。
  • バイス保証の適用: OSやセキュリティ状態を条件にアクセス制限を適用可能。
  • ポリシーの柔軟性: 部署、職位、契約形態などに応じた認証ルールを設定可能。
  • BYOD対応: 登録済みの個人デバイスを条件付きで許可。
  • グループベースの認証: 事前定義のグループに基づいてポリシーを適用可能。
  • 多要素認証(MFA)の強制: プッシュ通知やパスワードレス認証を簡単に適用できる。

できないこと

  • 詳細なデバイス情報の取得: MDMツールに依存。(例: JamfやIntuneとの統合が必要)
  • オフライン時の強制制限: デバイス認証はオンライン前提。
  • バイスロックやワイプ: 紛失・盗難時の対応はOkta単体では不可能。(MDMツール必要)
  • 未登録デバイスの検知: 未登録デバイスのリアルタイム通知や詳細なログ取得は非対応。
  • 特定アプリ限定の制限: アプリケーションごとのポリシー設定は一部制限あり。
  • 一部認証手法の非対応: ハードウェアトークンや特定の生体認証に対応していない場合がある。

次に、ざっくりと進め方を作図ツールに書き出し、タスク管理ツールに落とし込みました。
途中で方向性が変わったりする部分もありましたが、適宜タスクを追加・削除しながら組み替え・優先順位を決めて進めました。

Oktaデバイストラスト構成作業洗い出しMiro図


2. Okta Verifyとデバイス管理証明書の配布

バイストラスト環境を構築するために、社用端末にOkta Verifyアプリとデバイス管理証明書を配布しました。以下に、実施した手順を整理します。

  1. IntuneおよびJamfの設定準備
     利用するMDMツール(IntuneまたはJamf)で、デバイストラストに必要な証明書の配布ポリシーを作成しました。
  2. Okta Verifyを対象端末にデプロイする
     JamfおよびIntuneを使用して、Okta Verifyアプリを対象端末に自動インストールする設定を構築しました。
  3. 証明書の配布とポリシー適用
     証明書をデバイスに配布し、端末ごとに適切なポリシーが適用されるように設定しました。

3. コンテキストの洗い出しと認証ポリシー策定

バイストラスト環境の構築において、認証ポリシーは非常に重要な要素です。どのようなデバイスやユーザーが、どのような状況でアクセスするのか、その「コンテキスト」を洗い出し、認証ポリシーを策定しました。今回の検討範囲は以下の属性を基にしています。

コンテキスト

  1. 雇用形態
  2. バイスプラットフォーム
  3. バイス状態
    • Oktaに登録済みのデバイスかどうか
  4. バイス管理
    • 非管理対象デバイスか、管理対象デバイス(証明書がインストールされている端末)か
  5. バイス保証
    • バイスのOSが以下のいずれかに該当するものを対象
    • ChromeOSなど、その他のプラットフォームは対象外

認証ポリシー

コンテキストを定めたら、組み合わせを検討し認証ポリシーを構築しました。
実装したときに考慮したポイントは下記の通りです。

  • 一時的な認証許可ポリシー
    問題発生時の迅速な対応策として、一部ユーザーを例外的に認証可能とするポリシーを準備しました。
    運用効率とセキュリティのバランスを考慮し、対象者限定の適用としています。
  • 地域特化ポリシー
    米国メンバー用や業務委託者用など、利用シナリオに応じた認証ルールを作成しました。
    地域やユーザー属性に応じたカスタマイズにより、柔軟な運用を可能にしました。
  • Catch-all ルール
    想定外のアクセスを防ぐため、条件外のアクセスはすべて拒否しました。
    セキュリティの基本を徹底しつつ、明確なガイドラインを設けました。

4. 社内展開

準備が整い、全社展開をしました。ここでは、以下を重視しました。

  • 段階的な展開
    段階的に設定をお願いすることで混乱を防ぎつつ、設定を推進しました。
    • パスワードの設定依頼
    • Okta Verifyの設定依頼
    • 変更タイミングの全社周知
  • ユーザー向けドキュメントの作成
    スクリーンショットや手順を具体的に記載したドキュメントを作成しました。
  • ヘルプデスク担当者への事前共有
    よくある質問やエラー対応について事前に共有し、対応を支援できるように整えました。

全社周知スライド


振り返り

大変だったこと

  • 実装後のヘルプデスク問い合わせが増加
    Okta Verify のセットアップの手順が分かりづらく、設定に苦戦するユーザや、期限内にセットアップを完了していないユーザが一部おり、問い合わせが急増しました。FAQの整理やドキュメント作成に注力し、一つずつ問題を解決することで問い合わせの件数を導入以前の数に減らしました。

  • 一部デバイスで認証エラー
    管理証明書の配布が正常にできない端末があり、トラブルシューティングに時間を要しました。何度かMDMとの同期を実施したり、配布ルールの見直しをすることで解決しました。

  • Oktaの想定外の挙動
    Oktaの想定外の挙動に対する対応が後手になったことが反省点でした。原因としてはOktaの仕様理解が一部不足していたことと、すべての端末や登録する手順の検証が網羅できていなかったことが挙げられます。


良かったこと

  • 認証ポリシーを丁寧に設計したこと
    初めからコンテキストを明確化していたおかげで、運用開始後の変更が発生しにくく、想定通りに進めることができました。

  • 会社のセキュリティレベルの底上げに貢献できたこと
    未許可デバイスからのアクセス防止など、従来よりもアクセスコントロールが可能になりました。またSSO/MFAの利用を浸透させたことで、セキュリティ向上とアプリアクセスの利便性が向上しました。


バイストラスト導入時に押さえるべきポイント

これからOktaデバイストラストを導入する方に向けて、押さえるべきポイントをいくつか紹介します。

  1. 公開情報を最大限活用しよう
    Okta公式ドキュメントを確認するのはもちろん、ブログ記事を参考にすると、仕様や作業手順の理解が非常に効率的になります。

  2. 幅広いテストを実施しましょう
    想定外のエラーに備え、さまざまなシナリオを検証することをおすすめします。例えば...

    • コンテキストを踏まえた認証ポリシーのアクセス検証
    • 各デバイスプラットフォーム(macOSWindowsiOSAndroid)別のOkta Verify セットアップ動作確認
    • 登録済み/未登録デバイスの挙動テスト
  3. 社員へのアナウンスや手順説明を丁寧に実施しましょう
    可能な限り、社員や関係者への依頼事項は「簡潔に」「期限を決めて」「複数回」共有することで、導入をスムーズに進められます。


最後に

振り返ると、デバイストラスト環境の構築には多くの労力を要しましたが、その成果は確かなものでした。セキュリティ強化や利便性向上を実現できただけでなく、ITチームとしてのスキルも大きく向上したと感じています。

しかし、まだ改善の余地があることも事実です。次のステップでは、BYOD対応のさらなる強化やアプリ申請プロセスの整備などを目指していきます。この記事が、Oktaやデバイストラストの導入を検討している皆さんの参考になれば幸いです。


ビザスクではエンジニアの仲間を募集しています!少しでもビザスク開発組織にご興味を持たれた方は、ぜひ一度カジュアルにお話ししましょう!
developer-recruit.visasq.works