Há várias maneiras de provisionar dispositivos. Seus clientes empresa determinam quais métodos de provisionamento você quer usar.
Noções básicas de provisionamento de dispositivos
Os cenários de implantação do provisionamento de dispositivos que os clientes querem (como BYOD ou da empresa) determinam os modos de operação que você usar (como o modo de proprietário do dispositivo ou o modo de proprietário do perfil). Da mesma forma, os modos operacional e das versões do Android aos quais você precisa de suporte que você vai implementar.
Cenários de implantação
Em um cenário de implantação pertencente à empresa, a empresa é proprietária controla totalmente os dispositivos usados pelos funcionários. Geralmente, as organizações implantam dispositivos da empresa quando eles precisam monitorar e gerenciar dispositivo.
As empresas que oferecem suporte a um cenário de implantação de BYOD permitem que seus os funcionários levem dispositivos pessoais para o trabalho e os usem para acessar informações e aplicativos privilegiados da empresa.
Modos de operação
As implantações da empresa são compatíveis com o modo Proprietário do dispositivo de operação. No Android, o app de gerenciamento é chamado de política do dispositivo DPC. O DPC aplica políticas em um dispositivo com tecnologia Android e quando atua como proprietário do dispositivo, ele gerencia todo o dispositivo. Como proprietário do dispositivo, o DPC pode realizar ações no dispositivo, como configurar conectividade, defina as configurações globais e faça uma redefinição de fábrica.
As implantações BYOD são compatíveis com o modo proprietário do perfil do operação Pelo DPC, a empresa disponibiliza dispositivos pessoais para uso no trabalho adicionando um perfil de trabalho à conta de usuário principal no dispositivo. O trabalho perfil está associado ao usuário principal, mas como um perfil separado. Conforme proprietário do perfil, o DPC gerencia apenas o perfil de trabalho no dispositivo e tem tem controle limitado fora do perfil de trabalho.
Métodos de provisionamento do proprietário do dispositivo
Provisione o modo de operação "Proprietário do dispositivo" durante a configuração inicial de um novo dispositivo ou após uma redefinição para a configuração original. Não é possível provisionar o modo "Proprietário do dispositivo" em um dispositivo a qualquer momento.
Dependendo do caso de uso, há dois tipos principais de métodos de provisionamento ao provisionar o modo proprietário do dispositivo.
- Em um fluxo orientado a dispositivos, os administradores de TI podem usar a NFC para provisionar grandes volumes e a quantidade de dispositivos. Este fluxo pode ser usado para a conta do Google Play gerenciado ou o Google Workspace diferentes.
- Em um fluxo orientado pelo usuário, as opções dependem se a organização
usa o Google Workspace.
- Em um cenário do Google Workspace, o usuário adiciona a Conta do Google durante a configuração inicial do dispositivo, e o DPC deve orientar o usuário pelo para configurar o proprietário do dispositivo. Um fluxo orientado pelo usuário pode ajudar os usuários finais a definir novos dispositivos e também é uma alternativa quando os dispositivos não são compatíveis com NFC.
- Quando uma organização não usar o Google Workspace, use o contas do Google Play gerenciado.
Observação:caso você limite a distribuição do seu app a países específicos na Google Play, essas restrições são ignoradas durante o provisionamento do proprietário do dispositivo. O DPC será baixado mesmo que o dispositivo não esteja em um país de destino.
Métodos de provisionamento do proprietário do perfil
O método recomendado para provisionar o modo de operação do proprietário do perfil depende se a organização usa o Google Workspace.
- No caso do Google Workspace, o método recomendado é uma fluxo orientado pelo usuário em que o usuário adiciona a Conta do Google dele, e o DPC orienta o usuário ao longo das etapas de configuração do proprietário do perfil.
- Quando uma organização não usa o Google Workspace, o método recomendado é método de contas do Google Play gerenciado.
O método tradicional, em que o usuário é instruído a instalar manualmente o DPC, também é compatível. O usuário precisa fazer o download do DPC pelo Google Play e instalá-lo, e, em seguida, o DPC orienta o usuário durante o restante do processo para configurar o proprietário do perfil.
Principais diferenças de provisionamento entre versões do Android
Cenário de implantação | Modo de operação | Método de provisionamento | 5.0, 5.1 | 6.0 | 7.0 | 8.0 | 11 | 12+ |
---|---|---|---|---|---|---|---|---|
Pertence à empresa | Proprietário do dispositivo | Código QR | ✓ | ✓ | ✓ | ✓ | ||
Contas do Google Play gerenciado | ✓ | ✓ | ✓ | ✓ | ✓ | |||
Conta do Google | ✓ | ✓ | ✓ | ✓ | ✓ | |||
NFC | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
Sem toque | ✓ | ✓ | ✓ | |||||
Pertence à empresa | Proprietário do perfil | Código QR | ✓ | ✓ | ||||
Contas do Google Play gerenciado | ✓ | ✓ | ||||||
Conta do Google | ✓ | ✓ | ||||||
NFC | ✓ | |||||||
Sem toque | ✓ | ✓ | ||||||
BYOD | Proprietário do perfil | Contas do Google Play gerenciado | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Conta do Google | 5,11 | ✓ | ✓ | ✓ | ✓ | ✓ | ||
Instalação manual de DPC | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
Sem toque | ✓ | ✓ | ✓ |
Considerações gerais de implementação
Aqui estão algumas coisas a considerar escrever seu DPC, independentemente do modo de operação implementado.
Compatibilidade do Google Play Services
O Guia de APKs do Google Play Services instrui os desenvolvedores a verificar a versão do Google Play Services antes para realizar transações de API. Como a tentativa de atualizar o Google Play Services causar interrupções graves no processo de configuração do dispositivo, o DPC não deve tentar atualizar o Google Play Services antes da conclusão do provisionamento do dispositivo.
Os principais pontos sobre a compatibilidade do DPC com o Google Play Services são:
- O DPC deve ser executado usando os serviços do Google Play que acompanham um em um dispositivo específico.
- O DPC não pode depender de novos recursos em versões futuras do Google Play serviços disponíveis no momento do provisionamento do dispositivo.
Quando o provisionamento do dispositivo for concluído, o DPC poderá solicitar que o usuário atualize Google Play Services para que o DPC possa usar os recursos mais recentes. No entanto, se um recurso não estiver disponível por algum motivo, o DPC deverá recorrer adequadamente a versão que acompanha o dispositivo.
Recuperar detalhes do dispositivo
Devido a atrasos na propagação, pode levar até dois minutos antes de uma chamada para device.get de um dispositivo recém-registrado retornará os detalhes do dispositivo.
Caso seu fluxo de trabalho exija os detalhes para que o usuário final possa usar o dispositivo ou perfil de trabalho, sugerimos usar uma tela de progresso em seu DPC e aguardar a chamada seja bem-sucedida.
Considerações de implementação para o modo de proprietário do perfil
Aqui estão algumas coisas a considerar escrever seu DPC para implementar o proprietário do perfil modo de operação.
Remover ou desativar o DPC pessoal
Ao provisionar o modo de operação do proprietário do perfil, o DPC começa a ser executado no perfil pessoal e inicia o processo de criação de um perfil de trabalho. Depois que o perfil de trabalho é criado, o DPC também é executado perfil. O DPC no perfil de trabalho conclui o processo de provisionamento. Em Nesse momento, o DPC no perfil pessoal deve desativar a si mesmo ou o dispositivo o usuário deve removê-lo.
O usuário remove o DPC pessoal
- O DPC pessoal detecta
ACTION_MANAGED_PROFILE_PROVISIONED
Para dispositivos Android 5.1, o DPC pessoal deve ouvirACTION_MANAGED_PROFILE_ADDED
). - O DPC pessoal inicia uma solicitação de desinstalação.
ACTION_UNINSTALL_PACKAGE
Isso solicita que o usuário desinstale o DPC pessoal. Para que o melhor usuário experiência do usuário, o processo de desinstalação deve acontecer durante o fluxo de provisionamento.
O DPC pessoal é desativado automaticamente
- O DPC pessoal detecta
ACTION_MANAGED_PROFILE_PROVISIONED
Para dispositivos Android 5.1, o DPC pessoal deve ouvirACTION_MANAGED_PROFILE_ADDED
). - Se aplicável, o DPC pessoal deve liberar privilégios de administrador do dispositivo antes de desativar a si mesma.
- O DPC pessoal inicia uma
setApplicationEnabledSetting
solicitação de desativação com oCOMPONENT_ENABLED_STATE_DISABLED
. - O usuário pode reativar o DPC pessoal pelo Google Play.
Considerações de implementação para o modo proprietário do dispositivo
Confira o que você precisa considerar ao criar seu DPC para implementar o modo de operação do proprietário do dispositivo.
O dispositivo precisa ser novo ou redefinido para a configuração original
Provisione o modo de operação "Proprietário do dispositivo" durante a configuração inicial de um novo dispositivo ou após uma redefinição para a configuração original. Não é possível usar o modo "Proprietário do dispositivo" provisionada em um dispositivo a qualquer momento.
O modo "Proprietário do dispositivo" dá ao DPC controle total sobre um dispositivo. Se o provisionamento modo "Proprietário do dispositivo" após a configuração inicial ter sido permitida:
- Um malware pode criar um proprietário e assumir o controle do dispositivo.
- Pode haver problemas de privacidade se já houver dados ou apps do usuário ativados o dispositivo.
Configurar o modo "Proprietário do dispositivo" apenas em dispositivos da empresa
Provisione o modo "Proprietário do dispositivo" apenas nos dispositivos que você identifica como de propriedade da empresa do seu cliente. É possível verificar isso detectando um identificador exclusivo de dispositivo (como um número de série) ou usando um identificador exclusivo conjunto de contas autorizadas para inscrição de dispositivos por meio do EMM política.
Se não for possível verificar a propriedade de um dispositivo da empresa, será necessário criar um para que o modo "Proprietário do dispositivo" não seja provisionado por engano. Por exemplo: você pode solicitar que o usuário do dispositivo confirme ou realize alguma ação afirmativa antes de provisionar o modo "Proprietário do dispositivo".
Ativar apps do sistema
Quando o DPC provisiona um perfil de trabalho, todos os apps do sistema sem ícones na tela de início são consideradas essenciais para o dispositivo e podem ser executadas automaticamente no perfil de trabalho. Os apps do sistema que têm ícones na tela de início são considerados opcional, e você pode decidir se quer ativá-las.
Ativar apps do sistema pelo Google Play
Os usuários podem ativar os aplicativos do sistema usando o Google Play para receber atualizações de aplicativos como as atualizações do app conforme elas são disponibilizadas.
Ativar apps do sistema usando APIs de framework do Android
Se você quiser que os usuários vejam os aplicativos do sistema assim que começarem a usar o dispositivo,
ativar aplicativos do sistema como parte do processo de provisionamento do dispositivo. O DPC permite
aplicativos do sistema por nome de pacote ou por intent usando
DevicePolicyManager.enableSystemApp()
Há algumas maneiras de identificar os apps do sistema que você quer ativar e apresentar no console de EMM para administradores de TI.
Criar catálogos de apps do sistema
Nesse método, cada dispositivo determina quais apps estão nele e envia esses dados de volta para o console de EMM. O console de EMM exibe esse recurso ao criar a política do dispositivo, que permite ao administrador de TI gerenciar apps por app.
Se o perfil de trabalho ainda não estiver provisionado no dispositivo, extraia uma lista dos todos os aplicativos com ícones na tela de início em um dispositivo usando
queryIntentActivities()
:private List<ResolveInfo> getAppsWithLauncher() { Intent i = new Intent(Intent.ACTION_MAIN); i.addCategory(Intent.CATEGORY_LAUNCHER); return getPackageManager().queryIntentActivities(i, 0); }
Se o perfil de trabalho já estiver provisionado no dispositivo, extraia uma lista dos todos os apps no perfil de trabalho usando
PackageManager.GET_DISABLED_COMPONENTS
ePackageManager.GET_UNINSTALLED_PACKAGES
Para encontrar os apps do sistema na lista de apps, marque a caixa de seleção
FLAG_SYSTEM
, que indica se um app está instalado na imagem do sistema do dispositivo.
Vantagens:
- Oferece aos administradores de TI uma imagem completa dos apps em todos os dispositivos.
- Fornece controle granular sobre quais apps são ativados.
Desvantagens:
- Como cada dispositivo tem um catálogo de apps diferente, é difícil aplicar um modelo da configuração de uma única política a vários tipos de dispositivos.
- Pode ser desafiador apresentar o volume de apps específicos de OEM em um importante para os administradores de TI.
Categorizar apps do sistema por funcionalidade
Quando um administrador de TI quer ativar um app do sistema para um grupo de dispositivos, selecionam um app genérico com base na funcionalidade; por exemplo, "Sistema Navegador". O DPC permite então todos os apps do sistema para essa intent.
Vantagens:
- Ativação simples e baseada em funcionalidade para administradores de TI.
- Garante a funcionalidade consistente em vários dispositivos (pelo menos para casos de uso comuns).
Desvantagens:
- Limita os apps do sistema àqueles com suporte em todos os tipos de dispositivos.
- Os administradores de TI podem querer disponibilizar uma versão OEM de um app (como um Samsung®), mas não em outro (como um navegador LG®).
- Os administradores de TI podem não querer enviar vários apps, mas não podem impedir quando há vários gerenciadores de intents.
Oferecer suporte apenas a apps do sistema aprovados
Você trabalha com o OEM para identificar pacotes OEM específicos e oferecer suporte apenas a eles. de pacotes no console de EMM. Isso também permite catalogar os de software para o app do OEM, que você não saberia de outra forma porque O app do OEM não está hospedado no Google Play.
Vantagens:
- Simplifique muito o fluxo de trabalho de integração e elimina os casos extremos problemáticos nas duas primeiras opções.
- É possível catalogar as configurações gerenciadas do app do OEM e apresentá-las no console de EMM para administradores de TI.
- Permite relacionamentos próximos com OEMs para oferecer suporte a dispositivos principais.
Desvantagens:
- É menos escalonável e, consequentemente, reduz a escolha do consumidor.
Cenários de teste para seu DPC
O DPC de teste é uma ferramenta de código aberto fornecido pelo Google para testar recursos empresariais no seu app de DPC. O DPC de teste está disponível em github ou Google Play: Você pode usar o DPC de teste para:
- Simular recursos no Android
- Definir e aplicar políticas
- Definir restrições de apps e intents
- Configurar perfis de trabalho
- Configurar dispositivos Android totalmente gerenciados
Embora o DPC de teste seja voltado principalmente como um veículo para testar sua empresa solução para Android, você também pode usá-lo como fonte de um exemplo de código para Android atributos de machine learning.
Personalizar o provisionamento
Durante o provisionamento do dispositivo, a interface do usuário do sistema mostra uma cor padrão a barra de status e um logotipo padrão no topo da tela. Definir cores personalizadas e logotipos para fornecer uma transição visual consistente entre seu DPC e o do sistema operacional do GKE ou permitir que os administradores façam isso usando o console de EMM. Por exemplo: um administrador pode fazer upload do logotipo de uma empresa ou personalizar a aparência das telas que mostram notificações.
Seu DPC aplica as opções de cor e logotipo usando o
DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR
e
DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI
extras.
Para definir uma cor personalizada, use
EXTRA_PROVISIONING_MAIN_COLOR
para definir um número inteiro que indica a cor predominante a ser exibida durante o dispositivo
na nuvem. Colocar o extra (constante) em uma intent com
ACTION_PROVISION_MANAGED_PROFILE
ou
ACTION_PROVISION_MANAGED_DEVICE
Para ver como os números inteiros são representados, consulte
Cor.
Para conferir um exemplo, consulte
MAIN_COLOR
no app TestDPC.
Para definir um logotipo personalizado, use
EXTRA_PROVISIONING_LOGO_URI
para definir uma imagem que é exibida na parte superior da tela durante
na nuvem. Colocar o extra (constante) em uma intent com
ACTION_PROVISION_MANAGED_PROFILE
ou
ACTION_PROVISION_MANAGED_DEVICE
Verifique se a imagem tem uma densidade de pixels razoável para o dispositivo.
Para conferir um exemplo, consulte
LOGO_URI
no app TestDPC.
Método do QR code
O método de provisionamento por QR code define o modo "Proprietário do dispositivo" ler um QR code com o assistente de configuração. O QR code contém um payload de pares de chave-valor com todas as informações necessárias para o provisionamento do DPC um dispositivo.
O console de EMM precisa oferecer aos administradores de TI uma forma de criar QR codes para os dispositivos que serão provisionados. O administrador de TI envia os QR codes para os usuários finais, que provisionam seus dispositivos digitalizando QR codes.
Casos de uso de provisionamento de QR code
Alguns dispositivos, como tablets, não são compatíveis com NFC. O provisionamento de QR code é uma uma forma conveniente de provisionar uma frota distribuída de dispositivos que não têm suporte NFC Os administradores de TI podem enviar QR codes aos usuários para permitir que na nuvem.
O provisionamento de QR code não exige uma identidade do Google, como um domínio do Google ou Conta do Google. Organizações que usam o Android, mas não usam o Google Workspace, não têm uma identidade do Google.
Assim como o NFC, o provisionamento de QR code permite implantações de uso único e quiosques, em que uma A identidade do Google (ou qualquer identidade) não é necessária ou desejável. Por exemplo, dispositivo de quiosque em uma loja não pertence a ninguém e não deve ter um usuário final identidade.
Criar um QR code
Um QR code válido para o provisionamento de QR code é um objeto JavaScript® codificado em UTF-8 String Notation (JSON). Você pode incluir estas propriedades em um QR code válido:
Sempre obrigatório
Obrigatório se um DPC ainda não estiver instalado no dispositivo
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM
Recomendado se o dispositivo ainda não estiver conectado ao Wi-Fi
Opcional
EXTRA_PROVISIONING_LOCALE
EXTRA_PROVISIONING_TIME_ZONE
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER
EXTRA_PROVISIONING_LOCAL_TIME
EXTRA_PROVISIONING_WIFI_HIDDEN
EXTRA_PROVISIONING_WIFI_SECURITY_TYPE
EXTRA_PROVISIONING_WIFI_PROXY_HOST
EXTRA_PROVISIONING_WIFI_PROXY_PORT
EXTRA_PROVISIONING_WIFI_PROXY_BYPASS
EXTRA_PROVISIONING_WIFI_PAC_URL
EXTRA_PROVISIONING_SKIP_ENCRYPTION
Este exemplo cria um QR code válido:
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":
"com.emm.android/com.emm.android.DeviceAdminReceiver",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":
"gJD2YwtOiWJHkSMkkIfLRlj-quNqG1fb6v100QmzM9w=",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION":
"https://path.to/dpc.apk",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION": false,
"android.app.extra.PROVISIONING_WIFI_SSID": "GuestNetwork",
"android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE": {
"dpc_company_name": "Acme Inc.",
"emm_server_url": "https://server.emm.biz:8787",
"another_custom_dpc_key": "dpc_custom_value"
}
}
Processo de provisionamento de QR code
- O assistente de configuração solicita que o usuário toque na tela de boas-vindas seis vezes. O toques precisam ser feitos no mesmo lugar da tela.
- O assistente de configuração solicita que o usuário se conecte à Internet para que a configuração pode fazer o download de um leitor de QR code.
- O Google Play Services faz o download de um módulo que contém um reconhecimento de QR code do Compute Engine.
- O usuário lê o QR code fornecido pelo administrador de TI.
- O assistente de configuração faz o download do app de DPC e inicia o proprietário do dispositivo
o processo de provisionamento com
ACTION_PROVISION_MANAGED_DEVICE
Método de contas do Google Play gerenciado
Um DPC pode usar o método de provisionamento de contas do Google Play gerenciado para configurar modo proprietário do dispositivo ou proprietário do perfil. Este método de provisionamento está segmentado em organizações que não usam o Google Workspace.
O método de provisionamento de contas do Google Play gerenciado usa o Biblioteca de Suporte de DPC. Essa biblioteca de cliente garante o bom funcionamento do Google Play gerenciado Contas. Ele também mantém a compatibilidade com futuras atualizações do Processo de provisionamento de contas do Google Play.
Pré-requisitos para provisionar dispositivos
- O ID da empresa é criado e registrado com uma identidade do EMM e o certificado está definido, conforme descrito nas Crie e registre uma empresa.
- Seu console de EMM sabe a identidade corporativa do usuário.
- O usuário pode fazer login no app DPC usando as credenciais aceitas pelo EMM como as credenciais de e-mail corporativa.
Configurar o modo do proprietário do perfil
É possível provisionar o modo de operação "Proprietário do perfil" em um dispositivo usado em um cenário de BYOD como um dispositivo pessoal.
- O usuário faz o download manual do DPC no Google Play e o inicia.
- O DPC provisiona o perfil de trabalho usando
ACTION_PROVISION_MANAGED_PROFILE
- Conclua as etapas finais de configuração.
Configurar o modo Proprietário do dispositivo
Você deve provisionar o modo de operação "Proprietário do dispositivo" durante a configuração inicial de um um novo dispositivo ou após uma redefinição para a configuração original. Não é possível provisionar o modo "Proprietário do dispositivo" em um dispositivo a qualquer momento.
Durante a configuração do dispositivo, o usuário insere um token especial específico do DPC ao ser
solicitado a adicionar uma conta. Um token está no formato afw#DPC_IDENTIFIER
. Para
um EMM chamado ACME, o afw#acme
instalaria o DPC padrão do EMM ACME.
Cada EMM precisa solicitar um identificador de DPC específico do Google antes de usar
no processo de provisionamento.
- O usuário ativa um dispositivo novo ou redefinido para a configuração original e o assistente de configuração é lançado.
- Quando solicitado a adicionar uma conta, o usuário insere um token especial no
formato
afw#DPC_IDENTIFIER
que identifica o DPC do EMM. - Usando o identificador DPC no token, o assistente de configuração adiciona uma Conta do Google ao dispositivo. Esta conta temporária é usada apenas para fazer downloads o DPC para o EMM no Google Play e é removido etapas finais de configuração.
- O DPC provisiona o dispositivo usando
ACTION_PROVISION_MANAGED_DEVICE
- Conclua as etapas finais de configuração.
Etapas finais de configuração para todos os modos de operação
Siga estas etapas somente após as etapas iniciais de configuração o modo proprietário do perfil ou o modo proprietário do dispositivo estiverem concluídos.
O DPC garante que o dispositivo seja compatível com contas do Google Play gerenciado. inicializando a Biblioteca de Suporte de DPC:
AndroidForWorkAccountSupport androidForWorkAccountSupport = new AndroidForWorkAccountSupport(context, admin); androidForWorkAccountSupport.ensureWorkingEnvironment(callback);
Se você estiver configurando o modo "Proprietário do dispositivo" em um dispositivo, esta etapa removerá a Conta do Google temporária que foi adicionada para fazer o download do DPC.
O usuário faz login no DPC usando as credenciais do EMM. São que costumam ser credenciais de e-mail corporativo.
O DPC solicita credenciais da conta do Google Play gerenciado para o usuário corporativo autenticado no console de EMM.
Se o console de EMM não tiver um
userId
do Google Play para o usuário, cria um novo usuário chamandoUsers.insert()
. Se você estiver provisionando o modo proprietário do dispositivo, especifique uma conta de dispositivo (por implantações de dispositivos dedicados) ou uma conta de usuário (para implantações da empresa).Defina a política do dispositivo chamando
Devices.update
Defina a política antes de adicionar a conta do Google Play gerenciado ao dispositivo. Caso contrário, a política não será aplicada por um curto período de após a adição da conta ao dispositivo.O console de EMM solicita as credenciais da conta para o
userId
ao chamarUsers.generateAuthenticationToken()
. Esse token de autenticação é de curta duração e não pode ser reutilizado. O DPC deve usar o token para adicionar a conta de maneira programática (ele não tem utilidade até o final); usuário).A API Google Play EMM retorna o token de autenticação para o console de EMM.
O console de EMM encaminha o token de autenticação ao DPC.
O DPC adiciona a conta do Google Play gerenciado ao dispositivo usando
androidForWorkAccountSupport.addAndroidForWorkAccount(token, accountAddedCallback);
Método da Conta do Google
Um DPC pode usar o método de provisionamento da Conta do Google para configurar o proprietário do dispositivo ou modo proprietário do perfil. Com o método de provisionamento da Conta do Google, O DPC orienta o usuário nas etapas de provisionamento depois que ele adiciona Conta do Google durante a configuração inicial do dispositivo.
Quando um usuário digita as credenciais da Conta do Google:
- O servidor de autenticação do Google autentica a conta de usuário.
- Em seguida, o servidor de autenticação se comunica com o servidor da empresa para verificar se o domínio da conta estiver registrado como um domínio do Google Workspace ou domínio gerenciado pelo EMM.
- Nesse caso, o sistema faz automaticamente o download do DPC associado ao domínio pelo Google Play e o instala.
Configurar o modo do proprietário do perfil
Você pode provisionar o modo de operação do proprietário do perfil durante a configuração inicial de um dispositivo ou quando o usuário está adicionando uma conta usando Configurações > Adicionar conta.
- A autenticação de conta é iniciada por um usuário a partir do assistente de configuração ou em Configurações > Adicionar conta.
- O GMSCore inicia o provisionamento do perfil de trabalho usando o
ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE
. - O download do DPC é automático para o dispositivo e é iniciado usando o
ACTION_GET_PROVISIONING_MODE
para verificar se o provisionamento do perfil de trabalho é compatível com o DPC.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
: informações adicionais do perfil de trabalho, como endereço de e-mail. O DPC também receberá o is_setup_ implantar aqui como parte deste pacote. Esse pacote será incluído nos gerenciadoresACTION_GET_PROVISIONING_MODE
eACTION_ADMIN_POLICY_COMPLIANCE
.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
: nome da conta autenticada que será migrada para o novo perfil de trabalho.
- A plataforma realiza o provisionamento do perfil de trabalho.
- Quando o perfil de trabalho é provisionado, o DPC recebe a transmissão
ACTION_PROFILE_PROVISIONING_COMPLETE
OACTION_ADMIN_POLICY_COMPLIANCE
do DPC é iniciado no perfil de trabalho. Após a criação do perfil de trabalho, o DPC também é executado dentro do perfil de trabalho. O DPC envia políticas essa Conta do Google gerenciada garante que o dispositivo não fique comprometido e verifica se as políticas foram aplicadas (como exigir um senha). - O DPC no perfil pessoal é desativado ou removido pelo usuário.
Configurar o modo Proprietário do dispositivo ou COPE
Você deve provisionar o modo de operação "Proprietário do dispositivo" durante a configuração inicial de um um novo dispositivo ou após uma redefinição para a configuração original. Não é possível adicionar o modo "Proprietário do dispositivo" a um dispositivo a qualquer momento.
- A autenticação da conta é iniciada por um usuário no assistente de configuração.
- O GMSCore inicia o provisionamento do proprietário do dispositivo usando o
ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE
. 3.O download do DPC é feito automaticamente no dispositivo e é iniciado usando o gerenciadorGET_PROVISIONING_MODE
para escolher o modo de provisionamento desejado.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
: informações extras do perfil de trabalho, como localidade, Wi-Fi e endereço de e-mail. O DPC também receberá o is_setup_ implantar aqui como parte deste pacote. Este pacote será incluído emACTION_GET_PROVISIONING_MODE
eACTION_ADMIN_POLICY_COMPLIANCE
.
- A plataforma provisiona o dispositivo para o modo de provisionamento desejado.
- Quando o dispositivo é provisionado, o DPC recebe essas transmissões e o gerenciador
ACTION_ADMIN_POLICY_COMPLIANCE
do DPC é iniciado: - O DPC usa o valor de
Global.DEVICE_PROVISIONED
. para verificar se o dispositivo é novo ou redefinido para a configuração original (desprovisionado):- 0 — Não aprovisionado.
- 1 — provisionado.
- O DPC conclui o processo de provisionamento enviando as políticas para ele dispositivo gerenciado, garantindo que o dispositivo não esteja em um estado comprometido e verificar se as políticas foram aplicadas (como exigir uma senha).
Considerações sobre a implementação do método de Conta do Google
O DPC deve detectar o fluxo de autenticação da Conta do Google procurando extras específicos da intenção de inicialização que foi usada (consulte
LaunchIntentUtil
):- Conta do tipo
android.accounts.Account
— indica que o conta foi adicionada a partir do assistente de configuração ou de Configurações > Adicionar conta, exigindo que o DPC iniciado gerencie o dispositivo ou perfil. is_setup_wizard
do tipo booleano : se verdadeiro, o DPC foi lançado em assistente de configuração antes da conclusão do processo; caso contrário, Configurações > Adicione uma conta ou outro fluxo.
Uma verificação para saber se o DPC foi lançado como parte do método da Conta do Google. é:
boolean isSynchronousAuthLaunch(Intent launchIntent) { return launchIntent.hasExtra("is_setup_wizard"); }
- Conta do tipo
O DPC não pode chamar
finish()
. antes de terminar a configuração. Ela também deve retornar um código de resultado positivo (comoRESULT_OK
), já que o DPC é iniciado comstartActivityForResult()
e aguarda um resultado.O DPC deve aguardar um código de resultado do processo de provisionamento antes chamar
finish()
se o fluxo de configuração do DPC chegar ao ponto de enviar umACTION_PROVISION_*
. Use ostartActivityForResult()
eonActivityResult()
ao iniciar intentsACTION_PROVISION_*
. ConsulteLaunchActivity
eSetupSyncAuthManagement
para ver exemplos).Devido à natureza potencialmente assíncrona do processo de configuração, o DPC não pode depender de um código de resultado de
RESULT_OK
para indicar que o provisionamento bem-sucedido. A única maneira garantida é contar comDeviceAdminReceiver
e retornos de chamada sobre o sucesso do provisionamento.RESULT_CANCELED
indica que o usuário em uma parte síncrona do fluxo de configuração, e o DPC deve reagir para isso.Neste exemplo, o DPC inicia o provisionamento e aguarda o código de resultado de uma atividade:
Intent intent = new Intent(ACTION_PROVISION_MANAGED_PROFILE); startActivityForResult(intent, REQUEST_MANAGED_PROFILE); ... @Override public void onActivityResult(int req, int res, Intent i) { if (req == REQUEST_MANAGED_PROFILE) { if (res == Activity.RESULT_OK) { setResult(Activity.RESULT_OK); finish(); } else { Toast.makeText(this, “Provisioning failed”, Toast.LENGTH_SHORT).show(); } } }
O DPC não deve tentar configurar o modo de operação do proprietário do dispositivo se o dispositivo já está provisionado (consulte
ProvisioningStateUtil.isDeviceProvisioned()
). Neste exemplo, o DPC verifica se o dispositivo está provisionado:public static boolean isDeviceProvisioned(Context context) { ContentResolver cr = context.getContentResolver(); return Settings.Global.getInt(cr, DEVICE_PROVISIONED, 0) != 0; }
Opcional. O DPC pode usar
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
extra ao iniciar o provisionamento para transmitir informações de estado de volta paraDeviceAdminReceiver
(que, no caso do proprietário do perfil, é executada dentro do perfil de trabalho). TestDPC usa esse extra insiram um conjunto diferente de atividades no fluxo da Conta do Google após quando o provisionamento for concluído. Para mais detalhes, consulteDeviceAdminReceiver
public class DeviceAdminReceiver extends android.app.admin.DeviceAdminReceiver { @Override public void onProfileProvisioningComplete(Context context, Intent intent) { // Retrieve the admin extras bundle, which we can use to determine the original context for // Test DPC's launch. PersistableBundle extras = intent.getParcelableExtra( EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE); ...
Para configurar um perfil de trabalho, o DPC precisa migrar a conta adicionada para o um novo perfil de trabalho. Para fazer isso, o DPC deve passar a conta fornecida no intenção de inicialização para
ACTION_PROVISION_MANAGED_PROFILE
O DPC deve fornecer ao usuário uma call-to-action clara (como uma Concluir) para sair do app ao final da configuração, de modo que o usuário não pense eles chegaram a um beco sem saída no fluxo.
O DPC deve usar o tema do assistente de configuração ou a biblioteca de layout para que o usuário tem uma experiência tranquila e integrada.
Método NFC
Um DPC pode usar o método de provisionamento de NFC para configurar o modo "Proprietário do dispositivo". Na método de provisionamento de NFC ou tag NFC, você cria um app de programador NFC que contém as políticas iniciais e as configurações, definições e detalhes de provisionamento exigidos pelo cliente para configurar o proprietário do dispositivo modo de operação. Quando você ou seu cliente instalarem o app de programador de NFC um dispositivo com tecnologia Android, ele se torna o dispositivo programador.
Para provisionar um dispositivo, o administrador de TI usa um novo dispositivo e o encosta no dispositivo do programador ou na tag NFC. As transferências de nível de configuração ao dispositivo para que ele se conecte à Internet e faça o download do com as políticas e configurações apropriadas. O dispositivo é gerenciado pelo DPC.
Depois que um dispositivo é provisionado, por um curto período, o Google Play exibe os dados de conteúdo de consumidor em vez de apps e coleções aprovados que devem exibição. Esse atraso pode durar de alguns minutos a uma hora.
Criar o app e o dispositivo de programador de NFC
Para dispositivos com o Android 10 ou anterior, é possível usar o Android Beam para conclua um provisionamento de NFC:
- Faça o download do app de exemplo do programador de NFC. É possível usar o exemplo no estado em que se encontra, sem adições, ou modificá-lo para os valores padrão.
- Instale o app de programação no dispositivo escolhido.
- Inicie o app de programação NFC e selecione Load Defaults.
para
com.example.android.apis
. (Esse texto pode variar dependendo do padrão que você definir.
Provisionar um dispositivo de cliente
- Encoste o dispositivo programador ou a tag NFC em um novo dispositivo ou um que tenha sido redefinir para a configuração original.
- Verifique se o dispositivo continua na tela inicial de Boas-vindas
exibido quando ele é iniciado. O texto é especificado em
Ready to send:{...}
. no app de programação. - Aguarde enquanto o DPC:
- Criptografa o dispositivo.
- Se for um dispositivo de acesso múltiplo por divisão de código (CDMA): ativa o celular enquanto uma interface de telefonia é exibida (não é necessária nenhuma interação).
- Configura a conexão Wi-Fi.
- Faz o download do arquivo APK para com.example.android.apis.
- Instala com.example.android.apis.
- Define o administrador do dispositivo de amostra em com.example.android.apis como o proprietário do dispositivo.
- Mostra um aviso de sucesso quando o proprietário do dispositivo for ativado.
- Depois de retornar à página inicial (o assistente de configuração é ignorado automaticamente),
Verifique se com.example.android.apis está definido como o proprietário do dispositivo:
- Em Configurações > Segurança > Os administradores do dispositivo precisam verificar se o Não é possível remover o administrador.
- Em Configurações > Usuários > Usuários e perfis > Você (proprietário), verifique se O proprietário é a única conta disponível (um dispositivo só pode ter uma conta ativa proprietário do dispositivo por vez).
Outros recursos
NFC avançada descreve tópicos como trabalho com várias tecnologias de etiqueta, gravação para NFC tags e envio em primeiro plano.
Método de instalação manual de DPC
Para configurar o modo "Proprietário do perfil" usando o método de provisionamento manual de instalação de DPC, o usuário faz o download do DPC pelo Google Play e o instala. Depois, o DPC orienta o usuário durante o restante do processo de configuração do proprietário do perfil para a Conta do Google gerenciada.
O DPC pode adicionar a Conta do Google gerenciada antes ou depois da criação o perfil de trabalho. Por exemplo, o DPC pode criar um perfil de trabalho com base credenciais de EMM do usuário em vez de solicitar a Conta do Google gerenciada primeiro.
Configurar o modo do proprietário do perfil
Adicione a Conta do Google gerenciada primeiro
- O usuário faz o download do seu DPC pelo Google Play e o instala.
- O DPC adiciona a Conta do Google gerenciada antes de criar o perfil de trabalho
usando
AccountManager.addAccount()
. - O DPC começa a ser executado no perfil pessoal e inicia o processo para
criar um perfil de trabalho usando:
ACTION_PROVISION_MANAGED_PROFILE
: provisiona o perfil de trabalho.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— Informações extras do perfil de trabalho, como localidade, Wi-Fi e e-mail endereço IP.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
— Nome da conta autenticada que será migrada para o novo trabalho perfil.
- O DPC no perfil de trabalho conclui o processo de provisionamento. Depois que o trabalho é criado, o DPC também é executado dentro do perfil de trabalho. O DPC o perfil de trabalho conclui o processo de provisionamento enviando políticas para essa Conta do Google gerenciada, garantindo que o dispositivo não esteja comprometido estado e verificar se as políticas foram aplicadas (como exigir um senha).
- Quando o perfil de trabalho é provisionado, o DPC recebe a transmissão
ACTION_PROFILE_PROVISIONING_COMPLETE
- O DPC no perfil pessoal é desativado automaticamente ou pelo usuário o remove.
Criar o perfil de trabalho primeiro
- O usuário faz o download do seu DPC pelo Google Play e o instala.
- O DPC começa a ser executado no perfil pessoal e inicia o processo para
criar um perfil de trabalho usando:
ACTION_PROVISION_MANAGED_PROFILE
: provisiona o perfil de trabalho.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
: informações adicionais para o perfil de trabalho, como localidade, Wi-Fi e e-mail endereço IP.
- O DPC adiciona a Conta do Google gerenciada usando
AccountManager.addAccount()
- O DPC recebe a transmissão
ACTION_PROFILE_PROVISIONING_COMPLETE
e lêEXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
- O DPC no perfil de trabalho conclui o processo de provisionamento. Depois que o perfil de trabalho é criado, o DPC também é executado perfil. O DPC no perfil de trabalho conclui o processo de provisionamento enviando políticas para essa Conta do Google gerenciada, garantindo que o dispositivo não está comprometido e verificando se as políticas foram aplicadas (ex.: exigir uma senha).
- O DPC habilita o perfil de trabalho usando
DevicePolicyManager.setProfileEnabled()
- O DPC no perfil pessoal é desativado automaticamente ou pelo usuário o remove.
-
O método de Conta do Google no Android 5.1 é compatível apenas com o modo de operação do proprietário do perfil, e o usuário pode configurá-lo apenas em Configurações > Adicionar conta. ↩