Configuração gerenciada da Web

Como desenvolvedor, talvez você queira permitir que os administradores do ChromeOS Enterprise configurem seu app de forma dinâmica. A API Managed Configuration oferece uma maneira eficiente de permitir que eles gerenciem o comportamento do app quando ele é instalado. É possível definir uma interface para permitir que os administradores transmitam a configuração ao app e mudem o comportamento dele de forma dinâmica, incluindo, entre outros:

  • Definir um tamanho de janela específico ao abrir.
  • Pré-preencher endereços de servidores ou configurações de autenticação.
  • Ativar ou desativar recursos do app.

Como configurar a API Web Managed Configuration

A configuração gerenciada exige etapas a serem realizadas por desenvolvedores e administradores empresariais. Os desenvolvedores precisam implementar a API e publicar a interface. Os administradores corporativos precisam configurar a instância no Admin Console. Para ilustrar essas etapas, vamos usar como exemplo a configuração de diferentes opções de login. Um administrador do Enterprise pode querer permitir que alguns usuários ou unidades organizacionais façam login com determinadas credenciais e desativar outras.

Definir e compartilhar sua interface configurável

Assim como em qualquer outro tipo de serviço externo, é uma boa prática começar definindo uma interface que possa ser compartilhada externamente com qualquer cliente que queira configurar seu app. A configuração gerenciada envia um dicionário JSON para o app. Por isso, recomendamos que você documente cada parâmetro com uma descrição, um tipo, um padrão e opções válidas. Confira um exemplo de como isso pode aparecer em um parâmetro para desativar as opções de login:

                                                                                   
ParâmetroTipoPadrãoOpçõesDescrição

DisableLoginOptions

String[]

[]

"email", "google"

Uma lista de opções de login a serem desativadas.

Documentar a interface dessa forma ajuda a comunicar o serviço com equipes e clientes externos e pode ajudar você a mantê-lo a longo prazo. Com o código acima, um administrador empresarial pode usar o seguinte JSON para desativar o login do "email":

{
  “DisableLoginOptions: ["email"]
};

Definir configuração gerenciada

​​O Google Admin Console oferece uma interface para que os administradores empresariais configurem uma configuração gerenciada. No momento da redação deste artigo, a opção aparece à direita do aplicativo selecionado, abaixo do nome **Configuração gerenciada**. Ao inserir um valor e salvar a configuração, ela fica disponível automaticamente para o aplicativo gerenciado usar.

A interface do Google Admin Console para inserir campos de configuração gerenciados

A interface do Google Admin Console para inserir campos de configuração gerenciados

Para desativar um login, por exemplo, o administrador corporativo pode configurar o app com { "‘DisableLoginOptions’" : ["email"]} para todos os usuários na unidade organizacional raiz. Isso vai disponibilizar automaticamente a configuração para o app gerenciado depois de salvar as mudanças.

Recuperar a configuração do seu app

Com a interface definida e a configuração enviada ao app, agora é necessário recuperá-la dentro do app. Para isso, chame a API Managed Configuration:

navigator.managed.getManagedConfiguration(['DisableLoginOptions']).then(function (result) {
  // result = { "‘DisableLoginOptions’" : ["email"]}
  // hide email login option
});

getManagedConfiguration é uma função baseada em promessas que recebe uma chave como uma matriz de strings e retorna o resultado como um objeto JSON. Esse é o valor inserido pelo administrador corporativo na etapa anterior.

Observação: se você já usou a matriz de transformação para TextureView no seu código, a prévia pode não aparecer corretamente em um dispositivo naturalmente horizontal, como os Chromebooks. É provável que sua matriz de transformação assuma incorretamente que a orientação do sensor é de 90 ou 270 graus. Consulte este commit no GitHub para uma solução alternativa, mas recomendamos migrar seu app para usar o método descrito aqui.

O resultado pode ser usado para mudar o comportamento do app,permitindo que os administradores o configurem de forma dinâmica e o ajustem às necessidades de todas as unidades organizacionais.