Jamf Connect 2.0.0 with Azure ADを検証してみた（動作確認編）

# はじめに
本記事は [Jamf Connect 2.0.0 with Azure ADを検証してみた（設定編）](https://qiita.com/ao_Tetsu/items/272a7eaa38af2a546050)の後編となる動作確認編です。Jamf Connectの設定については[設定編](https://qiita.com/ao_Tetsu/items/272a7eaa38af2a546050)をご覧ください。

# セットアップ開始
DEPに登録されたMacの電源を入れ、通常のセットアップと同じように言語やキーボードの設定、ネットワークの設定に進みます。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/ccc7f49a-16d5-58b3-8d4a-f111769083c8.jpeg" width=70%>
ネットワーク接続ができるとリモートマネージメントの画面に遷移し、MDMサーバ（Jamf Pro)と通信して構成プロファイルやパッケージがインストールされます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/83ce1615-fdf8-5c7f-9c1a-96422740bc55.jpeg" width=70%>
時間帯を選択します。位置情報を有効にすると何かと便利ですね。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/54f5cff2-8cb2-2542-853f-f43af346e677.jpeg" width=70%>
設定が進みしばらくするとJamf Connectが起動し、Idpのログイン画面が表示されます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/9a9a57ed-f150-6d00-0eeb-6e645cf4ef8b.jpeg" width=70%>
アカウント、パスワードを入力して、もちろんIdpのMFAも利用可能です。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/1c939340-abc8-18f5-d4b0-2548a787fdf4.jpeg" width=70%>
Idpのアカウントと同アカウントでローカルアカウントを作成するため、Idpアカウントと同じパスワードを入力します。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/28370862-b0a1-f285-3250-aae62b180cc9.jpeg" width=70%>
Jamf Connectのアカウント作成はここまでで完了し、しばらくするとMacのデスクトップが表示されます。

<B>
このアカウント作成の流れでもわかるように、Jamf ConnectはIdpのアカウント情報を元に、macOSにログインできるローカルアカウントを作成します。<font color="red"><u>macOSのローカルアカウントをIdpアカウントにバインドするツールではない</u></font>ので間違えないようにしましょう。
以降の説明はこの前提を頭に入れて読み進めてください。
</B>

# Jamf Connectアプリ
セットアップが完了すると Jamf Connectアプリがインストールされます。
![スクリーンショット 2020-10-12 1.11.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/9f33a406-8059-c19d-f526-35539045ba30.png)
起動するとメニューバーに常駐します。このアプリが起動していないとIdpアカウントとMacのローカルアカウントの同期ができません。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/b31a5f1d-f2ec-977d-c017-5ac054a555b6.png" width=50%>


# 再起動
再起動したときの動作です。
設定アシスタントのときと同じようにJamf Connect（Idp）のログイン画面が表示されます。
![LWScreenShot 2020-10-12 at 1.17.42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/053ba65f-3d4e-b63b-ac99-32dc872b68f5.png)
MFAの認証も利用可能です。Idpの認証を突破すると、「検証パスワード」入力画面でローカルアカウントのパスワード（Idpアカウントと同じ）を入力する必要があります。
![LWScreenShot 2020-10-12 at 1.49.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/cd9fc958-ec15-4c5f-44f1-d1fbd06e9abf.png)
同じパスワードを２度入力する必要があるのは少し手間ですね。。。。

### ネットワークに接続してない場合は？
Idpの認証ができるのはネットワークに接続しているときだけです。
ネットワークが利用できないときは「ローカルログイン」のボタンを押すとローカルアカウントでログインできます。
![LWScreenShot 2020-10-12 at 1.18.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/627cba1f-8cf3-b390-84c0-ee239fc10723.png)
![LWScreenShot 2020-10-12 at 1.18.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/1db9d4f0-32ba-ef84-ae57-d2b49358ce39.png)
>ローカルログインができるのは、設定時（Jamf Connect Configrationアプリ）で「ローカルフォールバック」を有効に設定した場合のみです。

### FileVault2 を有効にしている場合
FileVault２を有効にしている場合はもう1STEP必要になります。
FileVault2を有効にした状態で再起動すると、まずFileVault2のロック解除するパスワード入力を求められます。（通常のmacOSログイン画面と同等）
このパスワードはIdpアカウントのパスワードと同じはずです。
FileVault2のロック解除を突破できるとIdpの認証画面になります。
そしてこの認証を突破するとローカルアカウントのパスワード入力画面になります。

つまり、FileVault2を有効にした状態で再起動すると、
**・FileVault2ロック解除パスワード
・Idpアカウントパスワード
・検証パスワード（ローカルアカウントパスワード）**
と**<font color="red">同じパスワードを３回入力しなければならない</font>**のです。
>バージョン2.0.0の時点で、この[動作は仕様](https://docs.jamf.com/ja/jamf-connect/2.0.0/administrator-guide/Jamf_Connect_%E3%81%A7%E3%81%AE_FileVault_%E3%81%AE%E6%9C%89%E5%8A%B9%E5%8C%96.html)のようです。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/f03678ca-23d4-742c-7835-b3f9a7a7fad3.png" width=85%>

>正直これはかなり手間です。今後改善されることを期待しましょう。

# アカウントロック
次にアカウントロックした場合の動作です。
アカウントロックはローカルアカウントに対するロックの動作で、このロック解除の操作はJamf Connectを介しません。
従って、通常のアカウントロック解除と同じがめん、同じ操作になります。
![スクリーンショット 2020-10-12 1.27.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/e8e58acb-30bd-cccb-1c11-7fb3c92e5b5a.png)
逆に言うと、アカウントロック解除ではIdp認証を通すことはできません。

# パスワード変更
次にパスワード変更の動作を見ていきましょう。
Jamf Connectを運用していると以下２つのアカウント、パスワードを意識する必要があります。
<B>・Idpのアカウントとパスワード
・macOSのローカルアカウントとパスワード</B>
それぞれの変更方法について見ていきましょう。

### Idpアカウントのパスワードを変更した場合
IdpアカウントのパスワードはIdpのパスワード変更画面で行います。
Azure ADの場合、パスワード変更は https://account.activedirectory.windowsazure.com/ChangePassword.aspx から行いますが、設定（Jamf Connect Configrationアプリ）の中で**Change Password URL**を設定しているとJamf Connectアプリからパスワード変更画面を呼び出すことも可能です。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/d9d01575-078b-a059-73bc-d71caced3444.png" width=70%>
1度認証してから
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/36667731-7286-4fa9-2f86-dbd2de8b0b43.png" width=70%>
パスワード変更画面へ。

Azure AD側のパスワード変更が完了すると、Jamf Connectは**Network check in Frequency**で設定した周期でアカウントの差異をチェックし、パスワードが一致しない場合は同期するように要求されます。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/7cebbd90-428f-9f7f-aeee-f2b0596b8f48.png" width=70%>
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/61f2f649-aaef-4916-ddde-cf0a6c6f1286.png" width=70%>
↑この画面はIdpアカウントのパスワードを入力
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/140000/33807ce9-89e1-42d7-6b4f-961b468d3379.png" width=70%>
↑この画面は現在のmacOSのローカルアカウントのパスワードを入力
するとmacOSのローカルパスワードはIdpアカウントのパスワードと同期されて完了します。

### macOSローカルアカウントのパスワードを変更した場合
もうひとつのパターンとしてmacOSローカルアカウントのパスワードを変更した場合の動作を見ていきましょう。
通常のmacOSローカルアカウントパスワード変更と同じ手順で
　**システム環境設定 ＞ セキュリティとプライバシー ＞ 一般**
を開き、「パスワード変更」からパスワードを変更します。

先にIdpアカウントのパスワードを変更した場合の動作に記載した通り、Jamf ConnectはIdpアカウントとmacOSアカウントのパスワードに差異があった場合、Idpアカウントのパスワードに同期する動きになります。
従って、**macOSローカルアカウントのパスワードを変更しても、Idpアカウントに反映されることはなく、逆にIdpアカウントのパスワードに同期する（元に戻す）ように求められてしまいます。**

# まとめ
ということで、検証のまとめです。

冒頭のセットアップのセクションの後半にも記載しましたが、<font color="red"><B>Jamf ConnectはmacOSのローカルアカウントをIdpアカウントにバインド（自動同期）するツールではなく</B></font>、あくまでも２つのアカウントを連携する（まさにConnectする）ツールです。**同期の方向は、現時点では双方向ではなく、Idp → macOSローカルアカウントの一方向のみ**です。この動作仕様を間違えて認識していると**「ちょっと思っていたものと違う。。。」**ということになってしまうので気をつけましょう。

まだ検証が十分でなく、もしかしたら隠れた便利な機能や課題点として書いたことに対して解決方法があるかもしれません。書いてあることや認識が間違っていることがあればどんどんご指摘ください。
バージョンが2.0.0になりまだまだ進化が続くと思うので、今後も期待していきたいです。