기기 등록 및 프로비저닝

프로비저닝은 enterprise에서 policies를 사용하여 관리할 기기를 설정하는 프로세스입니다. 프로세스가 진행되는 동안 기기는 policies를 수신하고 시행하는 데 사용되는 Android Device Policy를 설치합니다. 프로비저닝이 성공하면 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로 설정되어 있는지 확인) 다음 프로비저닝 방법 중 하나를 사용합니다.

정책은 기기 프로비저닝 중 UI 생성에 영향을 줄 수 있습니다. 이러한 정책은 다음과 같습니다.

기기 프로비저닝 중에 직장 앱 및 기기 등록 카드 설치와 함께 비밀번호 단계를 표시하려면 정책을 업데이트하여 관련 정책 없이 등록된 경우 기기를 격리 상태로 유지하여 설정 요구사항 관련 항목으로 채워진 기기 설정에 대해 최종 선택된 정책을 지정할 때까지 UI 생성 시작을 지연하는 것이 좋습니다. 기기 프로비저닝이 완료되면 필요에 따라 정책을 변경할 수 있습니다.


등록 토큰 만들기

Android 관리 개요
그림 1. 'policy1'을 등록하고 기기에 적용하는 토큰을 만듭니다. 1,800초 (30분)가 지나면 토큰이 만료됩니다.

등록할 기기마다 등록 토큰이 필요합니다 (여러 기기에 같은 토큰을 사용할 수 있음). 등록 토큰을 요청하려면 enterprises.enrollmentTokens.create를 호출합니다. 등록 토큰은 기본적으로 1시간 후에 만료되지만 커스텀 만료 시간 (duration)을 최대 약 10,000년까지 지정할 수 있습니다.

요청이 성공하면 IT 관리자와 최종 사용자가 기기를 프로비저닝하는 데 사용할 수 있는 enrollmentTokenIdqrcode가 포함된 enrollmentToken 객체가 반환됩니다.

정책 지정

또한 요청에서 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 관리자에게 제공할 수 있습니다. 최종 사용자가 기기에서 링크를 열면 직장 프로필 설정 단계가 안내됩니다.

로그인 URL

이 메서드를 사용하면 사용자 인증 정보를 요청하는 URL이 사용자에게 제공됩니다. 사용자 인증 정보를 바탕으로 기기 프로비저닝을 진행하기 전에 사용자에게 적합한 정책을 계산할 수 있습니다. 예를 들면 다음과 같습니다.

  1. enterprises.signInDetails[]에서 로그인 URL을 지정합니다. 사용자가 직장 프로필을 만들도록 허용하려면 allowPersonalUsagePERSONAL_USAGE_ALLOWED로 설정합니다 (개인 소유 기기에는 필요, 회사 소유 기기의 경우 선택사항).

    결과 signinEnrollmentTokenQR 코드, NFC 페이로드 또는 제로터치 구성에 프로비저닝으로 추가합니다. 또는 signinEnrollmentToken를 사용자에게 직접 제공할 수도 있습니다.

  2. 옵션을 선택합니다.

    1. 회사 소유 기기: 새 기기 또는 초기화된 기기를 켠 후 QR 코드, NFC 범프 등을 통해 signinEnrollmentToken를 기기에 전달하거나 사용자에게 토큰을 직접 입력해야 한다고 요청합니다. 기기에서 1단계에 지정된 로그인 URL을 엽니다.
    2. 개인 소유 기기: 사용자에게 '설정'에서 직장 프로필을 추가하도록 요청합니다. 메시지가 표시되면 사용자는 signinEnrollmentToken가 포함된 QR 코드를 스캔하거나 토큰을 수동으로 입력합니다. 기기에서 1단계에 지정된 로그인 URL을 엽니다.
    3. 개인 소유 기기: 사용자에게 등록 토큰 링크를 제공합니다. 여기서 등록 토큰은 signinEnrollmentToken입니다. 기기가 1단계에 지정된 로그인 URL을 엽니다.
  3. 로그인 URL은 사용자에게 사용자 인증 정보를 입력하라는 메시지를 표시해야 합니다. ID에 따라 적절한 정책을 결정하고 GET 매개변수 provisioningInfo를 사용하여 기기 등록 중 기기 프로비저닝 정보를 가져올 수 있습니다.

  4. enrollmentTokens.create를 호출하여 사용자의 사용자 인증 정보에 따라 적절한 policyId를 지정합니다.

  5. URL 리디렉션을 사용하여 4단계에서 생성된 등록 토큰을 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 식별자 방법

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 콘솔을 통해 제로터치 기기의 프로비저닝 세부정보가 포함된 구성을 만들 수 있습니다 (제로터치 고객 API 참고). 최초 부팅 시 제로터치 기기는 구성이 할당되었는지 확인합니다. 이 경우 기기는 Android Device Policy를 다운로드하고 할당된 구성에 지정된 프로비저닝 추가 항목을 사용하여 기기 설정을 완료합니다.

고객이 제로터치 등록 포털을 사용하는 경우, 고객은 만드는 각 구성의 EMM DPC로 Android 기기 정책을 선택해야 합니다. 구성을 만들고 기기에 할당하는 방법을 비롯하여 포털 사용 방법에 관한 자세한 안내는 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를 호출하여 기기를 정책에 연결합니다.

정책 없이 기기 등록하기

유효한 정책 없이 등록된 기기는 격리됩니다. 격리된 기기는 기기가 정책에 연결될 때까지 모든 기기 기능에서 차단됩니다.

5분이 지나도 기기가 정책에 연결되지 않으면 기기 등록이 실패하고 기기가 초기화됩니다. 격리 기기 상태를 사용하면 솔루션의 일부로 라이선스 확인 또는 기타 등록 유효성 검사 프로세스를 구현할 수 있습니다.

라이선스 확인 워크플로의 예

  1. 기기가 기본 정책 또는 특정 정책 없이 등록되었습니다.
  2. 기업에 남아 있는 라이선스 수를 확인합니다.
  3. 사용 가능한 라이선스가 있으면 devices.patch를 사용하여 기기에 정책을 연결한 다음 라이선스 수를 줄입니다. 사용 가능한 라이선스가 없다면 devices.patch를 사용하여 기기를 사용 중지합니다. 또는 API가 등록 후 5분 이내에 정책에 연결되지 않은 기기를 초기화합니다.