OneLogin DesktopでmacOSのデスクトップ認証をOneLoginユーザーで行う

2018.12.26

はじめに

こんにちは植木和樹@上越オフィスです。本日は社内ユーザー管理システム見直しのための検証報告です。

現在クラスメソッドではActive Directory(AD)を使って社内ユーザー管理を行っています。このユーザーをサテライトオフィスSSOやAzureADと同期することで、複数のサービスで同一のID・パスワード管理を行うことができています。ADのパスワードをポリシーで強化することで、安易なパスワード利用を防ごうという狙いです。

ADといえば普通はWindowsのデスクトップ認証のための仕組みです。クラスメソッドでも2013年頃までは社内にWindows機が多く、また全員が本社に出勤することが当たり前だったため、ちゃんとADとしての役割を持っていました。

しかし2018年現在、社内の7割はMac機になり、おそらく社内の7〜8割の人間は週に最低数日はリモートワークを行っている状況です。またWindowsファイルサーバーも今年Google Driveへの移行を推進したことから、ADの必要性が徐々に薄れている状況です。

そんななか、クラウド型ID管理サービス OneLoginにOneLogin DesktopというWindowsやMacのデスクトップ認証をOneLoginで行える機能があることを知りました。

これを使えば、リモートワークなど社内ADに繋がらない環境でも(キャッシュに頼らない)認証ができるのでは?さらに端末認証も組み合わせることでセキュリティ強化ができるのでは?ということで試してみました。

※ OneLogin Desktopは $4 ユーザー/月 のアドオンです。

環境

  • macOS Mojave 10.14.1
  • OneLogin Desktop For Mac 3.0.55

設定

  • Macにユーザーを作成する
  • OneLogin Desktop For Macを有効にする
  • MacにOneLogin Desktopをインストール

Macにユーザーを作成する

まずはMacにユーザーを作成します。管理者権限でログインし、今回は Kazuki Ueki というユーザーを作成しました。 このユーザー後ほどMacのインストーラーによる設定変更も行うので管理者権限を与えておきます。 また動作確認時にわかりやすくするため、このユーザーのパスワードとOneLoginのユーザーのパスワードは異なるものにしておくと良いでしょう。

なお検証する場合はご自身のユーザーでなく、テスト用ログインユーザーを使ってください。下手するとログインできなくなってしまうので。

OneLogin Desktop For Macを有効にする

OneLoginに管理者ユーザーでログインします。

管理者メニューから DEVICES - OneLogin Desktop をクリックします。

Macをクリックし、下図のように機能を有効にします。またDOWNLOADリンクからOneLogin Desktopのインストーラーをダウンロードしておきましょう。

ダウンロードしたインストーラーを社内の共有フォルダに置いて利用しても良いですし、図のようにEnable Downloadを有効にしておけば各ユーザーがOneLoginプロフィール画面からダウンロードすることもできます。

MacにOneLogin Desktopをインストール

インストーラー(DMGファイル)をダブルクリックするとファイルが展開されます。OneLoginをダブルクリックします。警告がでますが「開く」をクリックします。

OneLogin Desktopのインストールが開始されます。バッテリー残が10%以上あって、電源がつながっていて、インターネット接続ができていないと開始できません。 図だと電源がつながっていないため警告がでています。

電源につないだため全部チェックOKになりました。

利用規約を読んだら I AGREE をクリックします。

START をクリックします。

設定変更を行うためMacのログインパスワードを入力します。

インストールタイプを選択します。今回は1台のMacを1名のユーザーが専有するのと、後々OneLoginへのブラウザログインをバイパスしたいためOneLogin Desktop Proを選択します。

OneLoginのドメインを入力します。

このMacに紐づけたいOneLoginユーザーでログインします。

OneLoginユーザーを紐づけたいMacユーザーを選択します。 デフォルトでログイン中のユーザーが選択されてるのでそのままNEXTでOKです。

選択したユーザーのパスワードを入力します。

インストールが開始しますのでしばらく(10秒ほど)待ちます。

設定が完了しました!

動作確認

一度Macをログアウトして、今度はOneLoginのユーザーとパスワードでログインしてみましょう。

OneLoginのユーザーでログインできれば成功です!

残課題など

一度OSユーザーとOneLoginユーザーを紐付けると解除ができない?

今回は当初まっさらなMac端末に、ユーザー "Kazuki Ueki" を作成し、OneLoginの同名ユーザーと紐づけました。

しかしOneLoginのユーザーは管理者ユーザーで、このままだと試行錯誤できないため、別のOneLoginユーザー"OneLogin"を作成して紐づけし直しました。

ところが一度紐づけするとそれが端末レベルで記憶されるらしく、Macのログインは変更前の"Kazuki Ueki"でないとできない状況になりました。一度"Kazuki Ueki"ユーザーを削除して作成しなおしても同じです。

OneLoginではOneLogin Desktopのアンインストール方法も記載があるため、一度完全に削除すれば直るかもしれません。未調査、要検証。

初回のインストールと設定は誰がいつやるか?

今回OneLoginユーザーとMacユーザーの紐づけは自分自身で行いました。しかし全社に展開するにあたり全社員にこれを行ってもらうのは現実的か?という懸念があります。

新規ユーザーについては、端末配布時に事前に上記作業を行ってユーザーを紐づけておくことはできそうです。今回の手順ではログイン中の自分自身にOneLoginユーザーを紐づけましたが、別のユーザーを新規作成して紐付け、OneLoginのID・パスワードを伝えれば良さそうです。

既存ユーザーについては、わかりやすい手順と十分な移行期間を用意して、徐々に移行するしか方法がないと思っています。既存環境はまっさらにできないためです。

途中からOneLogin認証にしたらどうなる?

以前Macでローカル認証をAD認証にしたところ、別ユーザーとなり環境再構築になりました。

MacのログインをActive Directory認証にしてみたら情シスがうれしいかもしれない

OneLogin Desktopの場合は、既存ユーザーとOneLoginユーザーを「紐付ける」だけなので環境再構築は不要です。

ネットワークにつながってない状況でもログインできる?

内部でパスワードをキャッシュしているようで、ネットワークがない状況でもログインできました。

OneLogin側のパスワード変更はどれくらいのタイムラグで端末に反映される?

OneLoginでパスワード変更 → すぐにMacログアウト → 再ログイン をしたところ、すでにパスワードは新しいものを受け付けるようになっていました。そのためほぼ瞬時と言って良さそうです。

Windowsは?

未検証です。検証しないといけないです。 Windowsドメイン、ワークグループそれぞれからの切り替えを検証する必要があります。

まとめ

OneLogin Desktopを使うことで、リモートワークなど社内ADに繋がらない環境でも認証ができることが確認できました。

認証基盤をADからOneLoginに変えることで、OneLoginがもつ各種監査レポートやイベント通知機能が利用できるようになります。 また定期的なADサーバーのメンテナンスやOSアップグレード作業からも開放されるため、AD運用コストが削減できるのではないでしょうか。

ただセキュリティ視点だと、ID・パスワードの管理がADからOneLoginに変わっただけです。次はもうひとつの課題である 端末認証 によるセキュリティ強化を検証してみたいと思います。