Provisionamento para gerenciamento de dispositivos

Os administradores de TI podem implantar dispositivos para usuários corporativos usando serviços em nuvem, código QR ou provisionamento de Near Field Communication (NFC). Para começar, baixe o APK NfcProvisioning e o APK Android-DeviceOwner . Para obter uma lista completa de requisitos, consulte Implementando o gerenciamento de dispositivos .

Atualizações do Android 12

  • ACTION_PROVISION_MANAGED_DEVICE está obsoleto.

  • ACTION_PROVISION_MANAGED_PROFILE é suportado apenas para provisionamento de perfil de trabalho primeiro DPC, no qual os usuários finais podem provisionar um perfil de trabalho após fazer download do DPC.

  • Os desenvolvedores de DPC que desejam oferecer suporte ao código QR ou outros métodos de provisionamento devem implementar manipuladores para as ações de intenção DevicePolicyManager#ACTION_GET_PROVISIONING_MODE e DevicePolicyManager#ACTION_ADMIN_POLICY_COMPLIANCE . Se o DPC não implementar estes manipuladores, o provisionamento falhará.

  • O manipulador DPC ACTION_GET_PROVISIONING_MODE inclui um novo extra EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES . O DPC deve definir o extra EXTRA_PROVISIONING_MODE para sua intenção resultante com um valor que pertença a essa lista. Se o DPC retornar um valor que não esteja nessa lista, o provisionamento falhará.

  • Para aumentar ainda mais a estabilidade, a capacidade de manutenção e a simplicidade dos fluxos que ocorrem durante o assistente de configuração, a configuração do DPC não pode ser iniciada após o término do assistente de configuração. DPCs que usam a categoria android.intent.category.PROVISIONING_FINALIZATION com a ação de intenção ADMIN_POLICY_COMPLIANCE para solicitar explicitamente a configuração antes do final do assistente de configuração podem remover essa categoria, pois agora isso é feito por padrão.

Provisionamento gerenciado

O provisionamento gerenciado é um fluxo de UI de estrutura que garante que os usuários sejam adequadamente informados sobre as implicações da definição de um proprietário de dispositivo ou perfil gerenciado. Os dispositivos que permitem a criptografia padrão oferecem um fluxo de provisionamento de gerenciamento de dispositivos consideravelmente mais simples e rápido.

Durante o provisionamento gerenciado, o componente de provisionamento gerenciado executa as seguintes atividades:

  • Criptografa o dispositivo.
  • Cria o perfil gerenciado.
  • Desativa aplicativos não necessários.
  • Define o aplicativo de gerenciamento de mobilidade empresarial (EMM) como perfil ou proprietário do dispositivo.

Por sua vez, o aplicativo de gerenciamento de mobilidade empresarial (EMM) realiza as seguintes atividades:

  • Adiciona contas de usuário.
  • Aplica a conformidade do dispositivo.
  • Ativa quaisquer aplicativos adicionais do sistema.

Durante o provisionamento gerenciado, a estrutura copia o aplicativo EMM no perfil gerenciado. Após a conclusão do provisionamento, o manipulador de intenções ADMIN_POLICY_COMPLIANCE do aplicativo EMM é chamado no usuário do perfil de trabalho (para provisionamento de perfil de trabalho) ou no usuário do proprietário do dispositivo (para provisionamento do proprietário do dispositivo). O EMM então adiciona contas e aplica políticas, após o que chama setProfileEnabled() para tornar os ícones do iniciador visíveis.

Provisionamento do proprietário do perfil

O provisionamento do proprietário do perfil permite que o usuário tenha um perfil de trabalho (perfil gerenciado) e um perfil pessoal em um dispositivo. Para ativar o provisionamento do proprietário do perfil, você deve enviar uma intenção com os extras apropriados. Por exemplo, instale o aplicativo TestDPC ( baixe no Google Play ou crie no GitHub ) no dispositivo, inicie o aplicativo no inicializador e siga as instruções do aplicativo. O provisionamento estará concluído quando ícones com emblemas aparecerem na gaveta do inicializador.

O aplicativo EMM DPC aciona a criação do perfil gerenciado enviando uma intenção com a ação DevicePolicyManager.ACTION_PROVISION_MANAGED_PROFILE . O comando a seguir é um exemplo de intent que aciona a criação do perfil gerenciado e define DeviceAdminSample como o proprietário do perfil:

adb shell am start \
  -a android.app.action.PROVISION_MANAGED_PROFILE \
  -c android.intent.category.DEFAULT \
  -e wifiSsid $(printf '%q' \"WifiSSID\") \
  -e deviceAdminPackage "com.google.android.deviceadminsample" \
  -e android.app.extra.deviceAdminPackageName $(printf '%q'.DeviceAdminSample\$DeviceAdminSampleReceiver) \
  -e android.app.extra.DEFAULT_MANAGED_PROFILE_NAME "My Organisation"

Provisionamento do proprietário do dispositivo com NFC

Você pode usar NFC ou serviços de nuvem para configurar o provisionamento do proprietário do dispositivo (DO) durante o processo de configuração pronto para uso de um dispositivo.

Ao usar NFC, você provisiona dispositivos no modo DO usando o NFC bump durante a etapa inicial de configuração do dispositivo. Este método requer mais inicialização, mas é discreto e lida com a configuração do Wi-Fi, a instalação do DPC e a configuração do DPC como proprietário do dispositivo.

Um pacote NFC típico inclui o seguinte:

EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LOCATION
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM
EXTRA_PROVISIONING_WIFI_SSID
EXTRA_PROVISIONING_WIFI_SECURITY_TYPE

Os dispositivos devem ter NFC configurado para aceitar o tipo MIME de provisionamento gerenciado da experiência de configuração. Para configurar, certifique-se de /packages/apps/Nfc/res/values/provisioning.xml contenha as seguintes linhas:

<bool name="enable\_nfc\_provisioning">true</bool>
<item>application/com.android.managedprovisioning</item>

Provisionamento usando serviços em nuvem

Você pode provisionar dispositivos com um proprietário de dispositivo ou proprietário de perfil (perfil de trabalho) usando serviços de nuvem. O dispositivo coleta e usa credenciais (ou tokens) para realizar uma pesquisa em um serviço de nuvem, que pode então ser usado para iniciar o processo de provisionamento.

Benefícios do gerenciamento de mobilidade empresarial

Um aplicativo de gerenciamento de mobilidade empresarial (EMM) pode ajudar realizando as seguintes tarefas:

  • Provisionando perfil gerenciado.
  • Aplicação de políticas de segurança.
    • Defina a complexidade da senha.
    • Bloqueios: desative capturas de tela, compartilhamento de perfil gerenciado, etc.
  • Configurando a conectividade corporativa.
    • Use WifiEnterpriseConfig para configurar o Wi-Fi corporativo.
    • Configure a VPN no dispositivo.
    • Use DPM.setApplicationRestrictions() para configurar VPN corporativa.
  • Habilitando o Single Sign-On (SSO) do aplicativo corporativo.
    • Instale os aplicativos corporativos desejados.
    • Use DPM.installKeyPair() para instalar silenciosamente certificados de cliente corporativo.
    • Use DPM.setApplicationRestrictions() para configurar nomes de host e alias de certificado de aplicativos corporativos.

O provisionamento gerenciado é apenas uma parte do fluxo de trabalho completo do EMM, com o objetivo final de tornar os dados corporativos acessíveis aos aplicativos no perfil gerenciado ou no dispositivo gerenciado. Para obter orientação sobre testes, consulte Configurando testes de dispositivos .