註冊及佈建裝置

佈建程序是指設定裝置,以便透過 policiesenterprise管理。在此程序中,裝置會安裝 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_USERLESS

如要在公司擁有的裝置上設定完整管理功能,請建立註冊權杖,並確保 allowPersonalUsage 設為 PERSONAL_USAGE_DISALLOWEDPERSONAL_USAGE_DISALLOWED_USERLESS,然後使用下列其中一種佈建方法。

政策可能會影響裝置佈建期間的 UI 生成。 這類政策包括:

如要在裝置佈建期間,讓系統在安裝工作應用程式和顯示裝置註冊卡片時,一併顯示密碼步驟,建議您更新政策,將裝置維持在隔離狀態,延後啟動 UI 生成作業。如果註冊時沒有相關聯的政策,裝置就會處於隔離狀態。請等到指定裝置設定的最終選定政策,並填入與設定需求相關的項目後,再啟動 UI 生成作業。裝置完成佈建後,即可視需要變更政策


建立註冊權杖

Android Management 總覽。
圖 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 裝置原則佈建裝置所需的所有資訊。

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,請使用 QR code 產生器,例如 ZXing


佈建方法

本節說明幾種裝置佈建方法。

從「設定」新增工作資料夾

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 codeNFC 承載內容零接觸設定的佈建額外資訊。或者,您也可以直接提供 signinEnrollmentToken 給使用者。

  2. 選擇下列任一選項:

    1. 公司擁有的裝置:開啟新裝置或恢復原廠設定後,將 signinEnrollmentToken 傳遞至裝置 (透過 QR code、NFC 觸碰等),或要求使用者手動輸入權杖。裝置會開啟步驟 1 中指定的登入網址。
    2. 個人裝置:請使用者從「設定」新增工作資料夾。系統顯示提示時,使用者會掃描含有 signinEnrollmentToken 的 QR code,或手動輸入權杖。裝置會開啟步驟 1 中指定的登入網址。
    3. 個人裝置:提供使用者註冊權杖連結,其中註冊權杖為 signinEnrollmentToken。裝置會開啟步驟 1 中指定的登入網址。
  3. 檢查 Google 是否已驗證使用者。使用 GET 參數 provisioningInfo 取得裝置佈建資訊 (裝置註冊期間),並檢查欄位 authenticatedUserEmail 的值。如果這個欄位有值,表示使用者已通過 Google 驗證,您可以直接使用這個身分,不必再進行驗證。

  4. 如果 Google 尚未驗證使用者身分,登入網址應會提示使用者輸入憑證。您可以根據身分識別資訊判斷適當的政策,並使用 GET 參數 provisioningInfo 取得裝置佈建資訊 (在裝置註冊期間)。

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

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

QR code 方法

Android 7.0 以上版本

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

  1. 在全新或已恢復原廠設定的裝置上,使用者 (通常是 IT 管理員) 在螢幕上的同一位置輕觸六次。裝置就會提示使用者掃描 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 裝置政策,使用者或 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}"
   }
}

在設定期間啟動應用程式

setupaction
圖 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_FIRST_USER

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

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

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

您可以自行決定要使用哪種方法,將政策套用至新註冊的裝置,並視客戶需求而定。您可以採用下列做法:

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

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

  • 訂閱 Cloud Pub/Sub 主題,接收新註冊裝置的通知。收到 ENROLLMENT 通知後,請呼叫 enterprises.devices.patch,將裝置連結至政策。

註冊沒有政策的裝置

如果裝置在沒有有效政策的情況下註冊,就會隔離。裝置遭到隔離後,必須連結至政策,才能使用所有功能。

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

授權檢查工作流程範例

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