デバイスの登録とプロビジョニング

プロビジョニングは、enterprisepolicies を使用して管理するデバイスをセットアップするプロセスです。このプロセスでは、デバイスに Android Device Policy がインストールされます。これは、policies を受信して適用するために使用されます。プロビジョニングが成功すると、API はdevicesオブジェクトを作成し、 デバイスを企業にバインドします。

Android Management API は、登録トークンを使用してプロビジョニング プロセスをトリガーします。使用する登録トークンとプロビジョニング方法によって、デバイスの所有権(個人所有または会社所有)と管理モード(仕事用プロファイルまたはフルマネージド デバイス)が確立されます。

割り当てシステムは、各プロジェクトで管理できるデバイスの数を 制御します。最初のデバイスをプロビジョニングする前に、初期デバイスの割り当てをリクエストする必要があります。

個人所有のデバイス

Android 5.1 以降

従業員が所有するデバイスは、仕事用プロファイル を使用してセットアップできます。仕事用プロファイルは、個人用アプリやデータとは別に、仕事用アプリやデータ用の自己完結型のスペースを提供します。ほとんどのアプリ、データ、その他の管理 policies は 仕事用プロファイルにのみ適用され、従業員の個人用アプリやデータは非公開のままになります。

個人所有のデバイスに仕事用プロファイルを設定するには、登録 トークンを作成し(allowPersonalUsagePERSONAL_USAGE_ALLOWEDに設定されていることを確認)、次のいずれかのプロビジョニング方法を使用します。

仕事用と個人用の会社所有デバイス

Android 8 以降

仕事用プロファイル を使用して会社所有デバイスを設定すると、デバイスを仕事用と個人用の両方で使用できるようになります。仕事用プロファイルが設定された会社所有デバイスの場合:

  • ほとんどのアプリ、データ、その他の管理 policies は仕事用プロファイル にのみ適用されます。
  • 従業員の個人用プロファイルは非公開のままになります。ただし、企業は 特定のデバイス全体のポリシー個人使用ポリシーを適用できます。
  • 企業は blockScope を使用して、 デバイス全体または仕事用プロファイルのみにコンプライアンス アクションを適用できます。
  • devices.deleteデバイス コマンド は、デバイス全体に適用されます。

仕事用プロファイルを使用して会社所有デバイスを設定するには、登録 トークンを作成し( allowPersonalUsagePERSONAL_USAGE_ALLOWED に設定されていることを確認)、次のいずれかの プロビジョニング方法を使用します。

仕事専用の会社所有デバイス

Android 5.1 以降

完全デバイス管理 は、仕事専用の会社所有デバイスに適しています。企業はデバイス上のすべてのアプリを管理し、Android Management API のポリシーとコマンドの全範囲を適用できます。

また、専用の目的やユースケースに対応するため、デバイスを単一のアプリまたは少数のアプリにロックダウン(ポリシー経由)することもできます。完全管理対象デバイスのこのサブセットは専用デバイス と呼ばれます。これらのデバイスの登録トークンでは、allowPersonalUsagePERSONAL_USAGE_DISALLOWED_USERLESSに設定する必要があります。

会社所有デバイスで完全管理を設定するには、登録トークンを作成し、 allowPersonalUsagePERSONAL_USAGE_DISALLOWED または PERSONAL_USAGE_DISALLOWED_USERLESSに設定されていることを確認して、 次のいずれかのプロビジョニング方法を使用します。

ポリシー は、デバイスのプロビジョニング中に UI の生成に影響する可能性があります。 このようなポリシーは次のとおりです。

デバイスのプロビジョニング中に、仕事用アプリのインストールとデバイス登録カードとともにパスワードの手順を表示する場合は、デバイスを隔離状態に保つことで UI の生成の開始を遅らせるようにポリシーを更新することをおすすめします。これは、関連付けられたポリシーなしで登録した場合に発生します。セットアップのニーズに関連する項目が入力されたデバイスセットアップの最終選択ポリシーを指定するまで、デバイスを隔離状態に保ちます。デバイスのプロビジョニングが完了したら、必要に応じてポリシーを変更できます。


登録トークンを作成する

Android Management の概要。
図 1.デバイスを登録して「policy1」 を適用するトークンを作成します。1,800 秒(30 分)後にトークンは期限切れになります。

登録するデバイスごとに登録トークンが必要です(複数のデバイスで同じトークンを使用できます)。登録トークンをリクエストするには、 enterprises.enrollmentTokens.createを呼び出します。登録トークンの有効期限はデフォルトで 1 時間ですが、最長で約 10,000 年のカスタム有効期限duration) を指定できます。

リクエストが成功すると、enrollmentToken オブジェクトが返されます。これには、IT 管理者とエンドユーザーがデバイスをプロビジョニングするために使用できる enrollmentTokenIdqrcode が含まれます。

ポリシーを指定する

デバイスの登録と同時にポリシーを適用する場合は、リクエストで policyName を指定することもできます。policyName を指定しない場合は、 ポリシーなしでデバイスを登録するをご覧ください。

個人使用を指定する

allowPersonalUsage は、プロビジョニング中に仕事用プロファイルをデバイスに追加できるかどうかを決定します。ユーザーが仕事用プロファイルを作成できるようにするには、PERSONAL_USAGE_ALLOWED に設定します(個人所有のデバイスでは必須、会社所有のデバイスでは省略可)。


QR コードについて

QR コードは、さまざまなポリシーを維持する企業にとって、効率的なデバイスのプロビジョニング方法として機能します。enterprises.enrollmentTokens.create から返される QR コードは、登録トークンと、Android Device Policy がデバイスをプロビジョニングするために必要なすべての情報を含むキーと値のペアのペイロードで構成されています。

QR コードバンドルの例

このバンドルには、Android Device Policy のダウンロード場所と登録トークンが含まれています。

{
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.google.android.apps.work.clouddpc/.receivers.CloudDeviceAdminReceiver",
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "I5YvS0O5hXY46mb01BlRjq4oJJGs2kuUcHvVkAPEXlg",
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "https://play.google.com/managed/downloadManagingApp?identifier=setup",
    "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE":{
        "com.google.android.apps.work.clouddpc.EXTRA_ENROLLMENT_TOKEN": "{enrollment-token}"
    }
}

enterprises.enrollmentTokens.create から返された QR コードをそのまま使用することも、カスタマイズすることもできます。QR コードバンドルに含めることができるプロパティの完全なリストについては、QR コードを作成するをご覧ください。

qrcode 文字列をスキャン可能な QR コードに変換するには、ZXing などの QR コード生成ツールを使用します。


プロビジョニング方法

このセクションでは、デバイスをプロビジョニングするさまざまな方法について説明します。

[設定] から仕事用プロファイルを追加する

Android 5.1 以降

デバイスに仕事用プロファイルを設定するには、次の操作を行います。

  1. [設定] > [Google] > [セットアップと復元] に移動します。
  2. [仕事用プロファイルを設定] をタップします。

この手順では、デバイスに Android Device Policy をダウンロードするセットアップ ウィザードが開始されます。次に、ユーザーはQR コードをスキャンするか、 登録トークンを手動で入力して、仕事用プロファイルの設定を完了するよう求められます。

Android Device Policy をダウンロードする

Android 5.1 以降

デバイスに仕事用プロファイルを設定するには、Google Play ストアから Android Device Policy をダウンロードします。アプリがインストールされると、 ユーザーはQR コードをスキャンするか、登録トークンを手動で入力して、仕事用プロファイルの設定を完了するよう求められます。

Android 5.1 以降

enrollmentTokens.create から返された登録トークンまたは 企業の signinEnrollmentToken を使用して、次の形式で URL を生成します。

https://enterprise.google.com/android/enroll?et=<enrollmentToken>

この URL を IT 管理者に提供すると、IT 管理者はエンドユーザーに提供できます。 エンドユーザーがデバイスからリンクを開くと、仕事用プロファイルの設定手順が表示されます。

ログイン URL

この方法では、ユーザーはプロビジョニングを完了するために必要な追加情報を入力するページにリダイレクトされます。ユーザーが入力した情報に基づいて、デバイスのプロビジョニングに進む前に、ユーザーに適したポリシーを計算できます。次に例を示します。

  1. ログイン URL を enterprises.signInDetails[] に指定します。ユーザーが仕事用プロファイルを作成できるようにするには、allowPersonalUsagePERSONAL_USAGE_ALLOWED に設定します(個人所有のデバイスでは必須、会社所有のデバイスでは省略可)。

    結果の signinEnrollmentToken をプロビジョニング エクストラとして QR コードNFC ペイロード、または ゼロタッチ 設定に追加します。または、signinEnrollmentToken をユーザーに直接提供することもできます。

  2. 次のいずれかを選択します。

    1. 会社所有デバイス: 新しいデバイスまたは出荷時設定にリセットしたデバイスの電源を入れたら、signinEnrollmentToken をデバイスに渡すか(QR コード、NFC など)、トークンを手動で入力するようユーザーに依頼します。デバイスに、ステップ 1 で指定したログイン URL が表示されます。
    2. 個人所有のデバイス: ユーザーに [設定]から仕事用プロファイルを追加するよう依頼します。プロンプトが表示されたら、ユーザーは signinEnrollmentToken を含む QR コードをスキャンするか、トークンを手動で入力します。デバイスに、ステップ 1 で指定したログイン URL が表示されます。
    3. 個人所有のデバイス: 登録トークンリンク をユーザーに提供します。登録トークンは signinEnrollmentTokenです。デバイスに、ステップ 1 で指定したログイン URL が表示されます。
  3. Google がユーザーをすでに認証しているかどうかを確認します。GET パラメータ provisioningInfo を使用してデバイス のプロビジョニング情報(デバイスの登録時)を取得し、フィールド authenticatedUserEmail の値を確認します。このフィールドに値がある場合、ユーザーはすでに Google によって正常に認証されているため、追加の認証なしでこの ID を使用できます。

  4. Google がユーザーをまだ認証していない場合は、ログイン URL で認証情報の入力を求める必要があります。ID に基づいて適切なポリシーを決定し、GET パラメータ provisioningInfoを使用してデバイスのプロビジョニング 情報(デバイス登録時)を取得できます。

  5. enrollmentTokens.create を呼び出し、ユーザーの認証情報に基づいて適切な policyId を指定します。

  6. URL リダイレクトを使用して、ステップ 5 で生成された登録トークンを 形式 https://enterprise.google.com/android/enroll?et=<token> で返します。

QR コードの方法

Android 7.0 以降

会社所有デバイスをプロビジョニングするには、QR コードを生成して EMM コンソールに表示します。

  1. 新しいデバイスまたは出荷時設定にリセットしたデバイスで、ユーザー(通常は IT 管理者)が画面の同じ場所を 6 回タップします。これにより、QR コードのスキャンを求めるメッセージがデバイスに表示されます。
  2. ユーザーは、管理コンソール(または同様のアプリケーション)に表示される QR コードをスキャンして、デバイスを登録してプロビジョニングします。

NFC の方法

Android 6.0 以降

この方法では、登録トークン、初期ポリシー、Wi-Fi 構成、設定、完全管理対象デバイスまたは専用デバイスをプロビジョニングするために必要なその他のプロビジョニングの詳細を含む NFC プログラマー アプリを作成する必要があります。ユーザーまたはお客様が Android デバイスに NFC プログラマー アプリをインストールすると、そのデバイスがプログラマー デバイスになります。

NFC メソッドのサポート方法について詳しくは、Play EMM API デベロッパー ドキュメントをご覧ください。このサイトには、NFC バンプでデバイスにプッシュされるデフォルトパラメータのサンプルコードも含まれています。Android Device Policy をインストールするには、デバイス管理パッケージのダウンロード場所を次のように設定します。

https://play.google.com/managed/downloadManagingApp?identifier=setup

DPC ID の方法

QR コードまたは NFC を使用して Android Device Policy を追加できない場合は、ユーザーまたは IT 管理者が次の手順に沿って会社所有デバイスをプロビジョニングできます。

  1. 新しいデバイスまたは出荷時設定にリセットしたデバイスでセットアップ ウィザードの手順に沿って操作します。
  2. Wi-Fi のログイン情報を入力して、デバイスをインターネットに接続します。
  3. ログインを求められたら、「afw#setup」と入力します。これにより、Android Device Policy がダウンロードされます。
  4. QR コードをスキャンするか、登録トークンを手動で入力して、デバイスをプロビジョニングします。

ゼロタッチ登録

Android 8.0 以降(Pixel 7.1 以降)

認定されたゼロタッチ販売パートナーから購入したデバイスは、 ゼロタッチ登録の対象となります。ゼロタッチ登録は、初回起動時に自動的にプロビジョニングされるようにデバイスを 事前設定する合理化された方法です。

組織は、ゼロタッチ デバイスのプロビジョニングの詳細を含む設定を、ゼロタッチ登録ポータルまたは EMM コンソールを使用して作成できます(ゼロタッチ Customer APIをご覧ください)。初回起動時に、ゼロタッチ デバイスは設定が割り当てられているかどうかを確認します。割り当てられている場合は、Android Device Policy がダウンロードされ、割り当てられた設定で指定されたプロビジョニング エクストラを使用してデバイスの設定が完了します。

お客様がゼロタッチ登録ポータルを使用する場合は、作成する設定ごとに EMM DPC として「Android Device Policy」を選択する必要があります。ポータルの使用方法(デバイスへの設定の作成 と割り当ての方法など)について詳しくは、Android Enterprise ヘルプセンターをご覧ください。

お客様が EMM コンソールから直接設定して割り当てることを希望する場合は、ゼロタッチ Customer APIと統合する必要があります。設定を作成するときに、 プロビジョニング エクストラを dpcExtras フィールドに指定します。次の JSON スニペットは、ログイン トークンが追加された dpcExtras に含める内容の基本的な例を示しています。

{
   "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":"com.google.android.apps.work.clouddpc/.receivers.CloudDeviceAdminReceiver",
   "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":"I5YvS0O5hXY46mb01BlRjq4oJJGs2kuUcHvVkAPEXlg",
   "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE":{
      "com.google.android.apps.work.clouddpc.EXTRA_ENROLLMENT_TOKEN":"{Sign In URL token}"
   }
}

セットアップ中にアプリを起動する

setupaction
図 2.setupActions を使用して、セットアップ中にアプリを起動します。

policies では、デバイスまたは仕事用プロファイルの設定中に Android Device Policy が起動するアプリを 1 つ指定できます。たとえば、VPN アプリを起動して、セットアップ プロセスの一環として VPN 設定を構成できます。アプリは RESULT_OKを返して完了を通知し、Android Device Policy が デバイスまたは仕事用プロファイルのプロビジョニングを完了できるようにする必要があります。セットアップ中にアプリを起動するには:

アプリの installTypeREQUIRED_FOR_SETUP であることを確認します。デバイスにアプリをインストールまたは起動できない場合、プロビジョニングは失敗します。

{
   "applications":[
      {
         "packageName":"com.my.vpnapp.",
         "installType":"REQUIRED_FOR_SETUP"
      }
   ]
}

アプリのパッケージ名を setupActions に追加します。titledescription を使用して、ユーザー向けの指示を指定します。

{
   "setupActions":[
      {
         "title":{
            "defaultMessage":"Configure VPN"
         },
         "description":{
            "defaultMessage":"Enable your VPN client to access corporate resources."
         },
         "launchApp":{
            "packageName":"com.my.vpnapp."
         }
      }
   ]
}

アプリが launchApp から起動されたことを区別するために、アプリの一部として最初に起動されるアクティビティには、ブール値のインテント エクストラ com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTIONtrue に設定)が含まれています。このエクストラを使用すると、アプリが setupActions から起動されたか、ユーザーによって起動されたかに基づいてアプリをカスタマイズできます。

アプリが RESULT_OK を返すと、Android Device Policy は、デバイスまたは仕事用プロファイルのプロビジョニングに必要な残りの手順を完了します。

セットアップ中に登録をキャンセルする

SetupAction として起動されたアプリは、登録をキャンセルして RESULT_FIRST_USER を返すことができます。

登録をキャンセルすると、会社所有デバイスがリセットされるか、個人所有デバイスの仕事用プロファイルが削除されます。

: 登録をキャンセルすると、ユーザー 確認ダイアログなしでアクションがトリガーされます。RESULT_FIRST_USER を返す前に、適切なエラー ダイアログをユーザーに表示するのはアプリの責任です。

新しく登録されたデバイスにポリシーを適用する

新しく登録されたデバイスにポリシーを適用する方法は、お客様の要件によって異なります。使用できるアプローチは次のとおりです。

  • (推奨) 登録トークンを作成するときに、デバイスに最初にリンクされるポリシーの名前(policyName)を 指定できます。トークンを使用してデバイスを登録すると、ポリシーがデバイスに自動的に適用されます。

  • ポリシーを企業のデフォルト ポリシーとして設定します。登録トークンにポリシー名が 指定されておらず、`enterprises/<enterprise_id>/policies/default` という名前のポリシーが enterprises/<enterprise_id>/policies/defaultある場合、新しいデバイスは登録時にデフォルト ポリシーに 自動的にリンクされます。

  • Cloud Pub/Sub トピックにサブスクライブして 、新しく登録されたデバイスに関する通知を受け取ります。 ENROLLMENT 通知に応じて、enterprises.devices.patch を呼び出してデバイスをポリシーにリンクします。

ポリシーなしでデバイスを登録する

有効なポリシーなしでデバイスを登録すると、デバイスは隔離 されます。隔離されたデバイスは、デバイスがポリシーにリンクされるまで、すべてのデバイス機能がブロックされます。

デバイスが 5 分以内にポリシーにリンクされない場合、デバイスの登録は失敗し、デバイスは初期状態にリセットされます。隔離されたデバイスの状態では、ソリューションの一部としてライセンス チェックやその他の登録検証プロセスを実装できます。

ライセンス チェック ワークフローの例

  1. デフォルト ポリシーまたは特定のポリシーなしでデバイスが登録されます。
  2. 企業に残っているライセンス数を確認します。
  3. 利用可能なライセンスがある場合は、devices.patch を使用してデバイスに ポリシーを接続し、ライセンス数を減らします。利用可能なライセンスがない場合は、devices.patch を使用してデバイスを無効にします。 または、API は、登録後 5 分以内にポリシーに接続されていないデバイスを初期状態にリセットします。