XenMobileではMDXというコンテナ機能がありデバイス管理(MDM)とともに会社のアプリケーションを安全に利用することが可能です。 MDXには以下の3つの機能があります。

MDX Vault
MDX Access
MDX Interapp

MDX Vaultはアプリケーションデータを安全に管理する機能、MDX Accessはアプリケーション単位にVPN接続し社内データにアクセスする機能、MDX Interappはアプリケーション間でのクリップボード利用や「他のアプリで開く」でのデータアクセスをポリシーで制御する機能です。 このブログポストではMDX Valutの解説をします。 MDX Valutではアプリケーション毎にVaultといわれるセキュアなデータ領域を持ちます。このデータ領域を以下の方法で安全に管理することができます。

  • 暗号化:ポリシーにより暗号化可能
  • ロック:管理者操作もしくは一定条件でアプリ内データをアクセス不可に
  • 消去:管理者操作もしくは一定条件でアプリ内データを消去

この機能を利用するにはまずアプリケーション単位でApp passcodeポリシーをOnにします。このポリシーを有効化することでMDXのアプリケーションにアクセスする場合には認証が要求されます。

アプリケーションの認証にはエンロールしたADのユーザ名パスワードのほかにWorx PINというデバイスとは別のパスコードを設定することができます。Worx PINを利用することでWorx HomeにADのクレデンシャルをキャッシュすることで、ソフトキーボードでの入力が困難なADパスワード入力の替わりに、Worx PIN入力で代替することができます。Worx PIN入力時に、アプリケーションの名前が表示されていることに注目してください。Worx PINの認証は、アプリケーション単位で行われるので、このアプリケーションのみの認証を行います。別のアプリケーションを起動する場合は、別途Worx PINの認証が必要になります。

Worx PINで認証する場合は、再試行可能な回数がデフォルト15回を上限に設定されていてこの回数を上回る入力失敗時にはADの再認証が要求されWorx PINを再設定しないと利用できません。この回数の上限値はPASSCODE_MAX_ATTEMPTS でXenMobileサーバー単位で設定可能です。この場合、管理コンソールのConfigure→Settings→Client Properties(MoreをクリックしてClientカテゴリ内)を選択し、でAddでCustom Keyとして以下のように新規作成します。

(ちなみに以前はAuth failure before lockというアプリ単位のポリシーでしたがPASSCODE_MAX_ATTEMPTSのコンテナごとのポリシーになりました。)

App passcodeポリシーが有効の場合、管理コンソールのConfigure→Settings→Client Propertiesで設定されているInactivity Timerの時間の間隔で再認証が要求されます。(デフォルト15分) この設定値はアプリケーション単位ではなくコンテナ全体の設定になります。アプリケーション単位ではMaximum Offline Periodというポリシーもありますが、こちらはアプリケーションがXenMobileサーバーへ接続確認なしに実行できる間隔になります。

ロック(Lock)に関してはデバイス単位で管理者が管理コンソールからリモートでロックすることができます。この場合指定したデバイスのすべてのアプリケーションがアクセス不可能になります。解除は管理者のみ可能です。 また、ロックは以下の条件によっても発生します。

ユーザーのアプリケーション利用権の失効
アプリケーションサブスクリプションの削除、アカウントの削除
ユーザーによるWorx Home のアンインストール
アプリケーション認証のPASSCODE_MAX_ATTEMPTSで設定された以上の失敗(アプリケーション単位。Worx Homeではない点注意)
ジェールブレークやルート化の検知 (ポリシーで設定されている場合)

コンテナ上のデータは管理者からデバイス単位で消去(Erase)することも可能です。ここでいう消去とはコンテナ上の各アプリケーションがインストールされたての初期状態に戻ることを指します。Worx Homeでエンロール時に設定したユーザー名は消去されません。またアプリケーションそのものをアンインストールされません。 アプリケーション単位でErase app data on lockポリシーを設定すると上記のロック発生時にアプリケーション単位でのEraseを行うことが可能です。

この場合アプリケーション認証のPASSCODE_MAX_ATTEMPTSで設定された以上の失敗時のロックでは消去されますが、Worx Homeでの失敗では消去されない点注意してください。