註冊及佈建裝置

佈建是指透過 enterprise 使用 policies 管理裝置的程序。在裝置中,裝置會安裝 Android Device Policy,用於接收和強制執行 policies。如果佈建成功,API 會建立 devices 物件,並將裝置繫結至企業。

Android Management API 會使用註冊權杖觸發布建程序。您使用的註冊權杖和佈建方法會建立裝置的擁有權 (個人或公司擁有) 和管理模式 (工作資料夾或全代管裝置)。

個人擁有的裝置

Android 5.1 以上版本

員工擁有的裝置可透過工作資料夾進行設定。工作資料夾可提供獨立空間,用於工作應用程式和資料,與個人應用程式和資料區隔開來。大多數應用程式、資料和其他管理 policies 僅適用於工作資料夾,員工的個人應用程式和資料則不會公開。

如要在個人擁有的裝置上設定工作資料夾,請建立註冊權杖 (確保 allowPersonalUsage 設為 PERSONAL_USAGE_ALLOWED),並使用下列其中一種佈建方法:

用於工作和個人用途的公司裝置

Android 8 以上版本

使用工作資料夾設定公司擁有的裝置,即可將裝置用於工作和個人用途。在設有工作資料夾的公司裝置中:

  • 大多數應用程式、資料和其他管理 policies 僅適用於工作資料夾。
  • 員工的個人檔案不會對外公開。然而,企業可以強制執行特定的裝置通用政策個人使用政策
  • 企業可以使用 blockScope,對整部裝置或僅工作資料夾強制執行法規遵循行動。
  • devices.delete裝置指令會套用至整部裝置。

如要使用工作資料夾設定公司擁有的裝置,請建立註冊權杖 (確保 allowPersonalUsage 設為 PERSONAL_USAGE_ALLOWED),並使用下列其中一種佈建方法:

僅限工作用途的公司裝置

Android 5.1 以上版本

完整裝置管理適用於專門用於工作用途的公司裝置。企業可以管理裝置上的所有應用程式,並強制執行所有 Android Management API 政策與指令。

您也可以將裝置鎖定 (透過政策) 鎖定單一應用程式或少數應用程式,用於有專屬用途或用途。這種全代管裝置稱為「專用裝置」

如要在公司擁有的裝置上設定完整管理服務,請建立註冊權杖 (確保 allowPersonalUsage 設為 PERSONAL_USAGE_DISALLOWED),並使用下列其中一種佈建方法:

政策可能會影響裝置佈建期間的 UI 產生作業。 這類政策如下:

如果您想在裝置佈建期間一併顯示密碼步驟和工作應用程式和裝置註冊資訊卡,建議您更新政策,將裝置保持在隔離狀態 (如果註冊時沒有提供相關政策),那麼在填入與設定需求相關的項目之前,請先為裝置設定指定最終選取的政策,否則系統會延遲啟動 UI。裝置佈建完成後,您可以視需要變更政策


建立註冊權杖

Android 管理總覽。
圖 1.建立註冊並套用「policy1」至裝置的權杖。1800 秒 (30 分鐘) 過後,權杖就會過期。

您必須為要註冊的每部裝置取得註冊權杖 (您可以在多部裝置中使用同一個權杖)。如要要求註冊權杖,請呼叫 enterprises.enrollmentTokens.create。根據預設,註冊權杖會在一小時後過期,但您可以指定自訂到期時間 (duration),最長可達 10,000 年。

成功的要求會傳回 enrollmentToken 物件,其中包含 enrollmentTokenIdqrcode,供 IT 管理員和使用者用於佈建裝置。

指定政策

建議您一併在要求中指定 policyName,以便在註冊裝置時套用政策。如果您未指定 policyName,請參閱「註冊沒有政策的裝置」。

指定個人用途

allowPersonalUsage 會決定是否能在佈建期間將工作資料夾新增至裝置。設為 PERSONAL_USAGE_ALLOWED 可讓使用者建立工作資料夾 (個人擁有的裝置必要設定,公司擁有的裝置則可選用)。


關於 QR code

對於維護許多不同政策的企業,QR code 可做為高效的裝置佈建方法。enterprises.enrollmentTokens.create 傳回的 QR code 是由包含註冊權杖的鍵/值組合酬載組成,其中含有註冊權杖,以及 Android Device Policy 佈建裝置所需的所有資訊。

QR code 套裝組合示例

這個套件包含 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 code,也可以自訂該 QR code。如需可納入 QR code 組合的完整屬性清單,請參閱「建立 QR code」一文。

如要將 qrcode 字串轉換為可掃描的 QR code,請使用 ZXing 等 QR code 產生器。


佈建方法

本節將說明裝置佈建的不同方法。

透過「設定」新增工作資料夾

Android 5.1 以上版本

使用者如要在裝置上設定工作資料夾,使用者可執行下列操作:

  1. 依序前往「設定」>「Google」>「設定與還原」
  2. 輕觸「設定工作資料夾」

這些步驟會啟動設定精靈,在裝置上下載 Android Device Policy。接著,系統會提示使用者掃描 QR code 或手動輸入註冊權杖,完成工作資料夾設定。

下載 Android Device Policy

Android 5.1 以上版本

如要在自己的裝置上設定工作資料夾,使用者可以從 Google Play 商店下載 Android 裝置政策。應用程式安裝完畢後,系統會提示使用者輸入 QR code 或手動輸入註冊權杖,完成工作資料夾設定。

Android 5.1 以上版本

使用從 enrollmentTokens.create 或企業 signinEnrollmentToken 傳回的註冊權杖 (請參閱下方的登入網址),產生採用以下格式的網址:

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

您可以將這個網址提供給 IT 管理員,方便他們為使用者提供網址。當使用者在裝置上開啟連結時,系統會引導他們完成工作資料夾設定。

登入網址

使用這個方法時,系統會提供網址,提示使用者輸入憑證。您可以根據使用者的憑證計算適當的政策,再繼續佈建裝置。例如:

  1. enterprises.signInDetails[] 中指定登入網址。 如要允許使用者建立工作資料夾 (個人裝置必要設定,公司擁有的裝置非必要),請將 allowPersonalUsage 設為 PERSONAL_USAGE_ALLOWED

    將產生的 signinEnrollmentToken 新增為 QR 代碼NFC 酬載零接觸設定中的佈建額外資料。或者,您也可以直接為使用者提供 signinEnrollmentToken

  2. 選擇下列任一選項:

    1. 公司擁有的裝置:在開啟新裝置或恢復原廠設定的裝置後,將 signinEnrollmentToken 傳送至裝置 (透過 QR code、NFC Bump 等),或要求使用者手動輸入權杖。裝置隨即會開啟步驟 1 指定的登入網址。
    2. 個人擁有的裝置:請使用者透過「設定」新增工作資料夾。在系統提示時,掃描含有 signinEnrollmentToken 的 QR code,或手動輸入權杖。裝置隨即會開啟步驟 1 指定的登入網址。
    3. 個人擁有的裝置:為使用者提供註冊權杖連結,其中註冊權杖為 signinEnrollmentToken。裝置隨即會開啟步驟 1 指定的登入網址。
  3. 您的登入網址應提示使用者輸入憑證。您可以根據 ID 的身分決定適當的政策。

  4. 呼叫 enrollmentTokens.create,根據使用者的憑證指定適當的 policyId

  5. 使用網址重新導向,以 https://enterprise.google.com/android/enroll?et=<token> 格式傳回步驟 4 產生的註冊權杖。

QR code 方法

Android 7.0 以上版本

如要佈建公司擁有的裝置,您可以產生 QR code 並顯示在 EMM 控制台中:

  1. 使用者在全新或恢復原廠設定的裝置上,會在同一處輕觸螢幕六次。這會觸發裝置,提示使用者掃描 QR code。
  2. 使用者會掃描您在管理主控台 (或類似應用程式) 中顯示的 QR code,以註冊及佈建裝置。

NFC 方法

Android 6.0 以上版本

這個方法需要您建立 NFC 程式設計師應用程式,其中包含註冊權杖、初始政策、Wi-Fi 設定、設定,以及客戶佈建全代管或專用裝置所需的所有其他佈建詳細資料。當您或您的客戶在 Android 裝置上安裝 NFC 程式設計應用程式時,該裝置就會成為程式設計裝置。

如要進一步瞭解如何支援 NFC 方法,請參閱 Play EMM API 開發人員說明文件。網站也會透過 NFC 觸碰傳輸到裝置的預設參數程式碼範例。如要安裝 Android Device Policy,請將裝置管理員套件的下載位置設為:

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

裝置政策控制器 (DPC) ID 方法

如果無法使用 QR code 或 NFC 新增 Android Device Policy,使用者或 IT 管理員可以按照下列步驟佈建公司擁有的裝置:

  1. 在新裝置或已恢復原廠設定的裝置上,按照設定精靈的說明操作。
  2. 輸入 Wi-Fi 登入詳細資料,將裝置連上網際網路。
  3. 系統提示您登入時,請輸入 afw#setup,用於下載 Android Device Policy。
  4. 掃描 QR code 或手動輸入註冊權杖以佈建裝置。

零接觸註冊機制

Android 8.0 以上版本 (Pixel 7.1 以上版本)

授權的零接觸經銷商購買的裝置可使用零接觸註冊機制,這種簡化的方法可預先設定裝置,以便在初次啟動時自動佈建裝置。

機構可透過零接觸註冊機制入口網站或使用 EMM 控制台,建立包含零接觸裝置佈建詳細資料的設定 (請參閱「零接觸客戶 API」)。首次啟動時,零接觸裝置會檢查是否已獲派設定。如果可以,裝置會下載 Android Device Policy,然後使用指派設定中指定的佈建額外項目完成裝置設定程序。

如果客戶使用零接觸註冊機制入口網站,必須為他們建立的每個設定選取「Android Device Policy」做為 EMM DPC。如要進一步瞭解如何使用入口網站,包括如何建立及指派設定至裝置,請前往 Android Enterprise 說明中心

如果希望客戶直接從 EMM 控制台設定及指派設定,則必須與零接觸客戶 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}"
   }
}

在設定期間啟動應用程式

設定
圖 2.在設定期間使用 setupActions 啟動應用程式。

policies 中,您可以指定 Android Device Policy 在裝置或工作資料夾設定期間啟動的應用程式。舉例來說,您可以啟動 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_ACTION (設為 true)。這項額外功能可讓您根據應用程式是從 setupActions 啟動,或由使用者自訂應用程式。

應用程式傳回 RESULT_OK 後,Android Device Policy 會完成佈建裝置或工作資料夾所需的剩餘步驟。

在設定過程中取消註冊

SetupAction 形式啟動的應用程式,可以取消回傳 RESULT_CANCELED 的註冊作業。

取消註冊作業會重設公司擁有的裝置,或刪除個人擁有裝置上的工作資料夾。

注意:取消註冊會觸發動作,且使用者無須確認對話方塊。應用程式負責在傳回結果前,向使用者顯示適當的錯誤對話方塊。

將政策套用至新註冊的裝置

您可採用何種方法將政策套用至新註冊的裝置,完全由您和客戶的要求決定。以下是您可以使用的各種方法:

  • (建議做法) 建立註冊權杖時,您可以指定初始連結至裝置的政策名稱 (policyName)。使用權杖註冊裝置時,政策會自動套用到裝置。

  • 將政策設為企業的預設政策。 如果註冊權杖中未指定政策名稱,且有名為 enterprises/<enterprise_id>/policies/default 的政策,則每部新裝置會在註冊時自動連結至預設政策。

  • 訂閱 Cloud Pub/Sub 主題,即可接收新註冊裝置的通知。為回應 ENROLLMENT 通知,請呼叫 enterprises.devices.patch 以連結裝置與政策。

註冊沒有政策的裝置

如果註冊裝置時沒有有效的政策,系統會將裝置放入隔離區。隔離的裝置在連結至政策之前,一律禁止使用所有裝置功能。

如果裝置在五分鐘內仍未與政策連結,則裝置註冊作業會失敗,且裝置會恢復原廠設定。隔離裝置狀態可讓您在解決方案中實作授權檢查或其他註冊驗證程序。

授權檢查工作流程範例

  1. 裝置在註冊時並未預設政策或特定政策。
  2. 查看企業剩餘的授權數量。
  3. 如有可用的授權,請使用 devices.patch 將政策附加至裝置,然後減少授權數量。如果沒有可用授權,請使用 devices.patch 停用裝置。或者,在註冊後的五分鐘內,任何未附加至政策的裝置都會恢復原廠設定。