はじめに
どーもみなさんこんにちは。ねもてぃです。 ついにJamf ProでiOS向けConditional Access(条件付きアクセス)がリリースされましたね。 macOS版は既に実装されておりましたが、iOS版は過去にプレビュー版が公開されていただけでなかなか実装がされませんでした。 内容を確認をしてみたところ、macOS版のConditional Accessと仕組みが異なるようだったのでとりあえずブログにまとめておきます。
何ができるようになったのか
Jamf Proに登録されたiOS/iPadOSデバイスがコンプライアンスポリシーに準拠しているかをAzure ADに渡せるようになったことで、条件付きアクセスを利用することができるようになりました。 Jamf公式の仕組み図があるのでそちらで確認してみましょう。
仕組みの理解
※:Jamf 公式ドキュメントより
- デバイスをJamf Proに登録する
- Self ServiceからデバイスをAzure ADに登録する
- Jamf ProからAzure ADに情報が送られる
- Azure ADはJamf Proから送られてきた情報を元に条件付きアクセスを発動させる
- 会社のリソースにアクセスできるようになる
- 準拠していなかった場合、アクセスをブロックする
ざっくりいうと、
- Jamf Proで収集したインベントリ情報を元に、セキュリティポリシーが適用されているSmart Device Groupをつくる
- そのSmart Device Groupに所属しているか否かをAzure ADに渡す
- 所属しているという情報を”準拠している”とみなすことで、会社のリソースへのアクセス許可/ブロックを判断ができるようになる
と言った感じです。
必要なもの
ライセンスとか
- Jamf Proのライセンス
- Azure ADが使えるライセンス
- Microsoft Endpoint Manager(Intune)が使えるライセンス→Microsoft Enterprise Mobility + Security (具体的には Microsoft AAD Premium および Microsoft Intune)らしい
デバイス要件とか
- iOS 11 以降、またはSafariがデフォルトのブラウザとして設定されているiPadOS13以降
- Jamf Proへの登録、およびSelfServiceとMicrosoft Authenticatorのインストール※:User Enrollment(旧BYODオプション)でJamf Proに登録されたデバイスでは使えないとのことですが、あまり使ってる人を見たことないので気にしなくていいです。※:Jamf Proに登録していればSelf Serviceはインストールしていると思うので、Microsoft AuthenticatorをJamf Proからインストールさせておきましょう。
- (結果的に)Microsoft Edgeのインストール※:条件付きアクセスに準拠した状態で会社のリソースにWebアクセスするためにはMicrosoft Edgeからアクセスしないといけないらしいです。
準備
それでは実際に設定をしていきます。 おおまかに必要な設定としては、
- Jamf ProとMicrosoft Endpoint Managerを接続する
- デバイスにMicorosoft Authenticatorを配布し、Azure ADに登録する
- 条件付きアクセスを設定する
と、なります。 設定に関する公式ドキュメントはこちら。
Microsoft Endpoint Manager 統合で、Jamf Pro が管理するモバイルデバイスのコンプライアンスを実行
Jamf ProとMicrosoft Endpoint Managerを接続する
コンプライアンスポリシーに利用するSmart Device Groupの作成
ここで作成するSmart Device Groupの条件はなんでもOKなのですが例として、
- iOSバージョンが13以降
- Jailbreak(root化)されていない
- パスコードの設定が有効化されている
以上を条件としたグループを作成します。
- Jamf Proにアクセスし、”デバイス” > “Smart Device Group” > “+ 新規”をクリックします。
- 「iOSコンプライアンスポリシー準拠グループ」など任意の表示名を入力し、”Criteria”をクリックします。この時、「メンバーシップの変更に関するEメール通知を送信」にチェックをいれておくとデバイスが設定した条件から外れてしまったタイミングで管理者にメール通知を送ることができます。(要:SMTPサーバ設定)
- “追加”をクリックします。
- 今回の条件である「iOS Version」と「Jailbreak Detected」と「Passcode Status」を選択し、順番にひとつづつ追加していきます。右上の”アドバンスCriteria(クライテリア)を表示”を押すことで、ここに表示されていない条件も追加が可能です。
- まずは「iOS Version」を”選択”し、条件を設定します。iOS 13以上と設定したいので、「オペレータ」をプルダウンメニューより”greater than”に変更し、数値に”13″と入力。”+ 追加”をクリックします。
- すると先ほどの条件選択画面が表示されるので次は「Jailbreak Detected」を”選択”し、詳細画面に戻ります。「数値」の項目は手入力でも良いのですが、Jamf Proのインベントリ情報を元に候補を表示してくれる機能があります。”・・・”をクリックしてみます。
- 選択候補が表示されました。Jailbreak Detected = Jailbreakが検出されている なので”No”を”Choose”します。
- さらに同様に”+ 追加”より「Passcode Status」を追加し、”Present”と設定、右下から”保存”をクリックして保存します。
余談ですが、”自動管理”タブを設定すると、このグループに所属しているデバイスの壁紙を強制的に変更することができます。(要:監視モード) 例えば、今回作成した条件と逆のグループを作成し、コンプライアンスポリシーに違反しているデバイスの壁紙を警告表示にする、といった使い方が可能です。
- また、保存したSmart Device Groupの画面より”表示”を選択することでそのグループに所属しているデバイスの一覧が確認できます。
以上でコンプライアンスポリシーに利用するSmart Device Groupの作成は完了となります。
Jamf ProとMicrosoft Endpoint Managerを接続する
続いてJamf ProをMicrosoft Endpoint Managerと接続していきます。
- Jamf Pro管理画面より、右上歯車マーク > “デバイスコンプライアンス” をクリックします。
- 右下の”編集”をクリックし、編集モードにします。右側にあるスイッチをONに変更し、各パラメーターを設定していきます。設定が完了したら”接続”をクリックします。
- 提供国別クラウド:global
- コンプライアンスグループ:先ほど作成したSmart Device Group
- 登録グループ:デバイスコンプライアンスを利用するSmart Computer Groupを選択します。一つしか選択できないところが悩みどころで、「All Managed iPhones」を選択してしまうとiPadには適用されないので私は別途「Self Service&Microsoft Authenticatorインストール済み」というSmart Device Groupを作成しました。設定したCriteriaのスクショも置いておきます。
- Microsoftのサインイン画面が表示されるので権限を保有したアカウントでサインインをし、要求された権限を承諾していきます。2回サインインと権限付与の画面が出てくると思います。
- Microsoft Entpoiont Managerに誘導する画面が表示されるので、”Open Microsoft Endpoint Manager”をクリックします。
- 別ウィンドウでMicrosoft Endpoint Managerのコネクタとトークン > パートナーコンプライアンス管理 の画面が表示されます。Jamf Proを追加するために、”+ コンプライアンスパートナーの追加”をクリックします。
- プルダウンメニューより、コンプライアンスパートナーを「Jamf Device Compliance」、プラットフォームを「iOS」と設定し、”次へ”をクリックします。
- コンプライアンスチェックを適用させるAzure ADグループを選択し、”次へ”をクリックします。
- 確認画面が表示されるので、”作成”をクリックします。
- iOSのところに「Jamf Device Compliance」が追加されたのを確認し、先ほどのJamf Pro画面に戻り”Comform”をクリックします。
- iOSのデバイスコンプライアンスのステータスが「接続を確立中」と表示されるので、しばらく待った後更新し、「接続済み」となったのを確認します。
- Microsoft Endpoint Manager側のステータスも「アクティブ」になりましたら接続設定は完了です!
デバイスにMicorosoft Authenticatorを配布し、Azure ADに登録する
デバイスコンプライアンスを有効にすると、先ほど「登録グループ」として指定したSmart Device Groupに所属しているデバイスのSelf Service上に「Microsoftに登録する」というボタンが表示されるようになります。そちらをクリックするとMicrosoft Authenticatorが起動し、Azure ADアカウントでサインインすることで、Azure ADにデバイスが登録されます。
Micorosoft Authenticatorのインストールは必須条件となるため、Jamf Proから事前に配布しておくと作業がスムーズになります。インストールされていなかった場合はApp Storeからインストールするようにリダイレクトされます。
デバイスの登録
それではデバイス側の手順を記載していきます。
- デバイスからSelf Serviceを開き、「Microsoft に登録する」の右側にある”登録”をクリックします。
- Microsoft Authenticatorが立ち上がり、サインイン画面が表示されるのでサインインを行います。
- デバイスの登録画面が表示されるので”登録”をクリックし、登録します。
- Self Serviceにリダイレクトされ、「お客様は、現在、Microsoft に登録されています。」と表示がされていれば登録は完了です。
- Azure AD上でデバイスを確認すると準拠したデバイスとして登録されているのが確認できます。 ※:Microsoft Endpoint Managerではなく、Azure AD上にデバイスが表示されるのでご注意下さい。
- Jamf Proで設定した「iOSコンプライアンスポリシー準拠グループ」からデバイスが外れてしまった場合は、準拠していないデバイスとしてマークされます。
以上で、デバイスをAzure ADに登録する作業は完了となります。Jamf Proから登録していますが、「MDM」の項目はMicrosoft Intuneと表記されているのがちょっと気になりますね。
条件付きアクセスを設定する
条件付きアクセスの設定に関してはこちらのドキュメントをご参照ください。
条件付きアクセス:Require compliant devices (準拠しているデバイスが必須)
今回はテストなのでざっくりと「デバイスは準拠しているとしてマーク済みである必要があります」にチェックをいれ、準拠してない場合Office 365にアクセスできないような設定をしました。
動作確認
準拠していない場合
それではいざ、コンプライアンスポリシーに準拠していないデバイスから会社のリソースにアクセスをしてみます!そもそも条件付きアクセスを設定するとMicrosoft Edgeからのアクセスしか受け付けなくなるようなのでMicorosoft Edgeからアクセスします。
- はいドン!「まだここにはアクセスできません」
- とりあえず”デバイスの管理ポータル”に移動してみます。
- 「このデバイスは会社のリソースにアクセスできません」らしい。
- 「お使いのデバイスは、組織で設定されている要件を満たしていません。」らしい。
- “この問題を解決する方法”は?
組織の要件を満たしていないのでIT管理者に連絡しろとのこと・・・ これはJamf Proと連携させたからどうという話ではないのですが、ユーザーが自己解決できるヒントがないのは少し微妙だなぁと思いました・・・ とはいえ、基本的にはJamf Proから構成プロファイルで強制するような項目が大半だと思うので、そのポリシーから外れているデバイスはユーザーが意図的になにかしてしまった可能性が高く、そこまで躍起にならなくても良いかもですね。
準拠している場合
- それでは最後に気を取り直してデバイスを準拠させた状態でアクセスしてみます。
無事、Office365にアクセスができました!
【参考】「該当なし」となってしまう場合
- 何度か試している中でAzure AD上の「準拠している」ステータスが「該当なし」となってしまうことがありました。その場合は一度Azure AD上からデバイスを削除し、再登録を行うか、Jamf Pro上で設定したSmart Device Groupから該当デバイスを出し入れすることでステータスが正常に表示されるようになったことを確認しています。
- Smart Device Groupから一時的に該当デバイスを外す場合のCriteria例はこんな感じです。条件から外せれば特に”Display Name”じゃなくてもいいと思います。
おわりに
ということで、Jamf Proに登録しているiOS/iPadOSデバイスからMicrosoftの条件付きアクセスが利用できるようになりました。近年Jamf ProはMicrosoftとの連携部分を強化しており、AppleデバイスはJamf Proで管理し、その他はIntuneで管理するという世界観が構築されつつあります。こちらの機能アップデートでさらにその世界観に近付いたのではないでしょうか。あとはもう少しデバイスを利用するユーザーに優しいフローになってくれると嬉しいですね。 おわり。