프로비저닝은 enterprise가 policies를 사용하여 관리할 기기를 설정하는 프로세스입니다. 이 과정에서 기기는 policies를 수신하고 적용하는 데 사용되는 Android Device Policy를 설치합니다. 프로비저닝이 성공하면 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_DISALLOWED 또는 PERSONAL_USAGE_DISALLOWED_USERLESS로 설정되어 있는지 확인한 후 다음 프로비저닝 방법 중 하나를 사용합니다.
정책은 기기 프로비저닝 중 UI 생성에 영향을 줄 수 있습니다. 이러한 정책은 다음과 같습니다.
PasswordPolicyScope: 비밀번호 요구사항을 결정합니다.PermittedInputMethods: 패키지 입력 방법을 결정합니다.PermittedAccessibilityServices: 완전 관리형 기기와 직장 프로필에 허용되는 접근성 서비스를 결정합니다.SetupActions: 설정 중에 실행되는 작업을 결정합니다.ApplicationsPolicy: 개별 앱의 정책을 결정합니다.
기기 프로비저닝 중에 비밀번호 단계가 직장 앱 설치 및 기기 등록 카드와 함께 표시되도록 하려면 연결된 정책 없이 등록된 경우 발생하는 격리 상태로 기기를 유지하여 UI 생성 시작을 지연하도록 정책을 업데이트하는 것이 좋습니다. 이렇게 하면 설정 요구사항과 관련된 항목으로 채워진 기기 설정의 최종 선택된 정책을 지정할 때까지 비밀번호 단계가 표시되지 않습니다. 기기 프로비저닝이 완료되면 필요에 따라 정책을 변경할 수 있습니다.
등록 토큰 만들기
등록하려는 기기마다 등록 토큰이 필요합니다 (여러 기기에 동일한 토큰을 사용할 수 있음). 등록 토큰을 요청하려면 enterprises.enrollmentTokens.create를 호출합니다. 등록 토큰은 기본적으로 1시간 후에 만료되지만 최대 약 10,000년까지 맞춤 만료 시간 (duration)을 지정할 수 있습니다.
요청이 성공하면 IT 관리자와 최종 사용자가 기기를 프로비저닝하는 데 사용할 수 있는 enrollmentTokenId 및 qrcode가 포함된 enrollmentToken 객체가 반환됩니다.
정책 지정
기기가 등록되는 동시에 정책을 적용하기 위해 요청에 policyName를 지정할 수도 있습니다. policyName를 지정하지 않은 경우 정책 없이 기기 등록하기를 참고하세요.
개인 사용 지정
allowPersonalUsage는 프로비저닝 중에 직장 프로필을 기기에 추가할 수 있는지 여부를 결정합니다. 사용자가 직장 프로필을 만들 수 있도록 PERSONAL_USAGE_ALLOWED로 설정합니다 (개인 소유 기기에 필요, 회사 소유 기기에는 선택사항).
QR 코드 정보
QR 코드는 다양한 정책을 유지하는 기업을 위한 효율적인 기기 프로비저닝 방법으로 작동합니다. enterprises.enrollmentTokens.create에서 반환된 QR 코드는 등록 토큰과 Android 기기 정책에서 기기를 프로비저닝하는 데 필요한 모든 정보가 포함된 키-값 쌍의 페이로드로 구성됩니다.
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 이상
기기에서 직장 프로필을 설정하려면 사용자가 다음 작업을 실행하면 됩니다.
- 설정 > Google > 설정 및 복원으로 이동합니다.
- 직장 프로필 설정을 탭합니다.
이 단계에서는 기기에 Android Device Policy를 다운로드하는 설정 마법사를 시작합니다. 그런 다음 사용자에게 QR 코드를 스캔하거나 등록 토큰을 수동으로 입력하여 직장 프로필 설정을 완료하라는 메시지가 표시됩니다.
Android Device Policy 다운로드
Android 5.1 이상
기기에 직장 프로필을 설정하려면 사용자가 Google Play 스토어에서 Android 기기 정책을 다운로드하면 됩니다. 앱이 설치되면 사용자에게 QR 코드를 스캔하거나 등록 토큰을 직접 입력하여 직장 프로필 설정을 완료하라는 메시지가 표시됩니다.
등록 토큰 링크
Android 5.1 이상
enrollmentTokens.create에서 반환된 등록 토큰 또는 기업의 signinEnrollmentToken을 사용하여 다음 형식으로 URL을 생성합니다.
https://enterprise.google.com/android/enroll?et=<enrollmentToken>
IT 관리자에게 이 URL을 제공하면 IT 관리자가 최종 사용자에게 제공할 수 있습니다. 최종 사용자가 기기에서 링크를 열면 직장 프로필 설정이 안내됩니다.
로그인 URL
이 방법을 사용하면 프로비저닝을 완료하는 데 필요한 추가 정보를 입력하는 페이지로 사용자가 안내됩니다. 사용자가 입력한 정보를 기반으로 기기 프로비저닝을 진행하기 전에 사용자에게 적합한 정책을 계산할 수 있습니다. 예를 들면 다음과 같습니다.
enterprises.signInDetails[]에서 로그인 URL을 지정합니다. 사용자가 직장 프로필을 만들 수 있도록 하려면 (개인 소유 기기에 필요, 회사 소유 기기에 선택사항)allowPersonalUsage을PERSONAL_USAGE_ALLOWED로 설정합니다.결과
signinEnrollmentToken를 QR 코드, NFC 페이로드 또는 제로터치 구성에 프로비저닝 추가로 추가합니다. 또는 사용자에게signinEnrollmentToken를 직접 제공할 수 있습니다.다음 옵션 중 하나를 선택합니다.
- 회사 소유 기기: 새 기기 또는 초기화된 기기를 사용 설정한 후 QR 코드, NFC 범프 등을 통해
signinEnrollmentToken를 기기에 전달하거나 사용자에게 토큰을 수동으로 입력하도록 요청합니다. 기기에서 1단계에 지정된 로그인 URL을 엽니다. - 개인 소유 기기: 사용자에게 '설정'에서 직장 프로필을 추가하도록 요청합니다. 메시지가 표시되면 사용자가
signinEnrollmentToken가 포함된 QR 코드를 스캔하거나 토큰을 수동으로 입력합니다. 기기에서 1단계에 지정된 로그인 URL을 엽니다. - 개인 소유 기기: 등록 토큰이
signinEnrollmentToken인 등록 토큰 링크를 사용자에게 제공합니다. 기기에서 1단계에 지정된 로그인 URL을 엽니다.
- 회사 소유 기기: 새 기기 또는 초기화된 기기를 사용 설정한 후 QR 코드, NFC 범프 등을 통해
Google에서 이미 사용자를 인증했는지 확인합니다. GET 매개변수
provisioningInfo를 사용하여 기기 프로비저닝 정보 (기기 등록 중)를 가져오고authenticatedUserEmail필드의 값을 확인합니다. 이 필드에 값이 있으면 사용자가 이미 Google에 의해 인증되었으므로 추가 인증 없이 이 ID를 사용할 수 있습니다.Google에서 아직 사용자를 인증하지 않은 경우 로그인 URL에서 사용자에게 사용자 인증 정보를 입력하라는 메시지를 표시해야 합니다. ID를 기반으로 적절한 정책을 결정하고 GET 매개변수
provisioningInfo를 사용하여 기기 프로비저닝 정보를 가져올 수 있습니다 (기기 등록 중).사용자의 인증 정보를 기반으로 적절한
policyId를 지정하여enrollmentTokens.create를 호출합니다.5단계에서 생성된 등록 토큰을 URL 리디렉션을 사용하여
https://enterprise.google.com/android/enroll?et=<token>형식으로 반환합니다.
QR 코드 방법
Android 7.0 이상
회사 소유 기기를 프로비저닝하려면 QR 코드를 생성하여 EMM 콘솔에 표시하면 됩니다.
- 새 기기 또는 초기화된 기기에서 사용자 (일반적으로 IT 관리자)가 화면의 한 곳을 여섯 번 탭합니다. 그러면 기기에서 사용자에게 QR 코드를 스캔하라는 메시지가 표시됩니다.
- 사용자가 관리 콘솔 (또는 유사한 애플리케이션)에 표시되는 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 관리자는 다음 단계에 따라 회사 소유 기기를 프로비저닝할 수 있습니다.
- 새 기기 또는 초기화된 기기에서 설정 마법사를 따릅니다.
- Wi-Fi 로그인 세부정보를 입력하여 기기를 인터넷에 연결합니다.
- 로그인하라는 메시지가 표시되면 afw#setup을 입력하여 Android Device Policy를 다운로드합니다.
- QR 코드를 스캔하거나 등록 토큰을 수동으로 입력하여 기기를 프로비저닝합니다.
제로터치 등록
Android 8.0 이상 (Pixel 7.1 이상)
공인 제로터치 리셀러에게서 구매한 기기는 제로터치 등록을 사용할 수 있습니다. 제로터치 등록은 처음 부팅할 때 기기가 자동으로 프로비저닝되도록 사전 구성하는 간소화된 방법입니다.
조직은 제로터치 등록 포털을 통해 또는 EMM 콘솔을 사용하여 제로터치 기기의 프로비저닝 세부정보가 포함된 구성을 만들 수 있습니다 (제로터치 고객 API 참고). 처음 부팅할 때 제로터치 기기는 구성이 할당되었는지 확인합니다. 이 경우 기기에서 Android Device Policy를 다운로드하고, 할당된 구성에 지정된 프로비저닝 추가 기능을 사용하여 기기 설정을 완료합니다.
고객이 제로터치 등록 포털을 사용하는 경우 생성하는 각 구성의 EMM DPC로 Android Device Policy를 선택해야 합니다. 기기에 구성을 만들고 할당하는 방법을 비롯해 포털 사용 방법에 관한 자세한 안내는 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}"
}
}
설정 중에 앱 실행
setupActions를 사용하여 앱을 실행합니다.policies에서는 기기 또는 직장 프로필 설정 중에 Android Device Policy가 실행할 앱을 하나 지정할 수 있습니다. 예를 들어 사용자가 설정 프로세스의 일부로 VPN 설정을 구성할 수 있도록 VPN 앱을 실행할 수 있습니다. 앱은 완료를 알리고 Android Device Policy가 기기 또는 직장 프로필 프로비저닝을 완료할 수 있도록 RESULT_OK를 반환해야 합니다. 설정 중에 앱을 실행하려면 다음 단계를 따르세요.
앱의 installType이 REQUIRED_FOR_SETUP인지 확인합니다. 기기에 앱을 설치하거나 실행할 수 없는 경우 프로비저닝이 실패합니다.
{
"applications":[
{
"packageName":"com.my.vpnapp.",
"installType":"REQUIRED_FOR_SETUP"
}
]
}
앱의 패키지 이름을 setupActions에 추가합니다. title 및 description을 사용하여 사용자에게 표시되는 안내를 지정합니다.
{
"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)의 이름을 지정할 수 있습니다. 토큰으로 기기를 등록하면 정책이 기기에 자동으로 적용됩니다.정책을 기업의 기본 정책으로 설정합니다. 등록 토큰에 정책 이름이 지정되지 않고 이름이
enterprises/<enterprise_id>/policies/default인 정책이 있는 경우 각 새 기기는 등록 시 기본 정책에 자동으로 연결됩니다.Cloud Pub/Sub 주제를 구독하여 새로 등록된 기기에 관한 알림을 받습니다.
ENROLLMENT알림에 응답하여enterprises.devices.patch을 호출하여 기기를 정책과 연결합니다.
정책 없이 기기 등록
유효한 정책 없이 기기가 등록되면 기기가 격리됩니다. 격리된 기기는 기기가 정책에 연결될 때까지 모든 기기 기능이 차단됩니다.
5분 이내에 기기가 정책에 연결되지 않으면 기기 등록이 실패하고 기기가 초기화됩니다. 격리 기기 상태를 사용하면 솔루션의 일부로 라이선스 확인 또는 기타 등록 유효성 검사 프로세스를 구현할 수 있습니다.
라이선스 확인 워크플로 예시
- 기기가 기본 정책이나 특정 정책 없이 등록됩니다.
- 기업에 남은 라이선스 수를 확인합니다.
- 사용 가능한 라이선스가 있는 경우
devices.patch를 사용하여 기기에 정책을 연결한 다음 라이선스 수를 줄입니다. 사용 가능한 라이선스가 없으면devices.patch을 사용하여 기기를 사용 중지합니다. 또는 API가 등록 후 5분 이내에 정책에 연결되지 않은 기기를 초기화합니다.