Criar uma vinculação empresarial

Para registrar uma nova organização pelo console de EMM, você precisa criar uma vinculação empresarial. Um O recurso Enterprises representa o vínculo entre o EMM e uma organização. Você usa uma instância dele para invocar operações em nome da organização.

A API Play EMM oferece três maneiras de criar uma instância de vinculação empresarial:

  • Inscrição no Managed Google Domain : este método pode ser usado no lugar de ambos os outros métodos. Organizações com um Managed Google Domain e uma organização que é nova no trabalho O Google usará a mesma interface de inscrição. A jornada pela interface vai variam de acordo com a situação e as necessidades deles. A organização não precisa receber um token de EMM com antecedência.

  • Inscrição nas contas do Google Play gerenciado : uma organização quer usar contas do Google Play gerenciado. É possível integrar interface de inscrição do Google para Android com seu console de gerenciamento de mobilidade empresarial (EMM) e oferece às organizações maneira rápida de criar uma instância de vinculação empresarial que os vincule seu EMM. Isso ativa as contas do Google Play gerenciado para usuários e dispositivos. Essa abordagem às vezes é chamada de iniciada pelo EMM na API na documentação do Google Cloud. Este método foi descontinuado e substituído pelo Managed Google Domain. anterior.

  • Inscrição de domínios gerenciados do Google : uma organização já tem um Managed Google Domain. Conclusão do procedimento de administradores de TI várias tarefas manuais, como confirmar a propriedade do domínio com o Google, obter um token de EMM e criar uma conta de serviço empresarial. Essa abordagem é também pode ser chamado de iniciado pelo Google na documentação da API.

É possível oferecer suporte a qualquer uma das abordagens no console de EMM usando o Enterprises. Tabela 1 mostra os campos e as operações relevantes deste recurso para vinculação de organizações para EMMs.

Tabela 1: APIs corporativas e os processos de vinculação alternativos

 Pacote de contas do Google Play gerenciadoManaged Google Domain Descrição
Campo
id Identificador exclusivo da organização, retornado das chamadas enroll e completeSignup.
kind identifica o tipo de recurso usando um valor de string fixo; NDKandroidenterprise#enterprise#.n%C3%A3o
nome Organização associada com o objeto enterprise.
primaryDomainNão definido Como os pacotes das contas do Google Play gerenciado não estão vinculados para o modelo de domínio do Google, esse campo é relevante apenas para domínios domínios.
administrador[]Não desencadearO administrador de TI que se inscreveu no Android usando o O processo de inscrição iniciado pelo EMM se torna o administrador (proprietário) do vinculação empresarial. No console do Google Play gerenciado, o administrador de TI pode convidar outros usuários da organização participem das tarefas administrativas. Consulte Google gerenciado Central de Ajuda do Google Play.
administrator[].email Não definido
Métodos
completeSignup Com um completionToken e um enterpriseToken, retorna um recurso Enterprises na corpo da resposta.
generateSignupUrl Com um callbackUrl, retorna um URL e um completionToken.
Inscrever Inscreve o autor da chamada no EMM token é enviado com a solicitação.
getServiceAccount Retorna uma conta de serviço e credenciais.
setAccount Define a conta que será usada para se autenticar na API como a empresa.
Cancelar inscrição Os EMMs podem separar a vinculação tipo de empresa que usam a opção de cancelamento da inscrição. Deve ser invocado usando os EMM precisar credenciais do MSA, não as da ESA.

Inscrição de contas do Google Play gerenciado

Esse método de inscrição foi descontinuado. Use o método de inscrição gerenciada no domínio do Google.

Inscrição de Managed Google Domain

Integre o processo de inscrição ao console de EMM da seguinte forma:

Inscrição de administrador de contas do Google Play gerenciado
Figura 1. Inscrição de Managed Google Domain fluxo de trabalho

Um administrador de TI inicia o processo de criação de uma empresa. Para fazer isso, o departamento de TI Administrador:

  1. Faz login no console de EMM.
  2. Clica ou seleciona Configurar Android (por exemplo) e é redirecionado para uma interface de usuário de inscrição hospedada pelo Google.
  3. Mostra detalhes sobre a empresa na interface de inscrição.
  4. é redirecionado para o console de EMM.

O endereço de e-mail do administrador de TI agora está vinculado a uma Conta do Google de administrador em um Managed Google Domain.

Prática recomendada: siga as diretrizes de segurança do Google diretrizes para ajudar a manter a conta de administrador do Google Cloud.

Pré-requisitos

Para administradores de TI

  • Acesso ao console de EMM e as permissões necessárias para fazer a no console (Gerenciar o Android, por exemplo, como uma opção de menu).

  • Um endereço de e-mail comercial. Precisa fazer parte de um domínio de propriedade do organização, e não em um domínio compartilhado, como Gmail.com

.

No console de EMM

Para implementar o fluxo de inscrição do Managed Google Domain, seu console de EMM precisa ser capaz de:

  • Use suas credenciais de MSA ao invocar chamadas nas APIs de EMM do Google Play. Seu MSA é usada para invocar muitas das operações em nome de um administrador de TI até que o a conta de serviço corporativa (ESA, na sigla em inglês) da sua organização está definida.

  • Processar o redirecionamento por meio de um URL seguro para um site externo fornecido pelo Google para inicie o fluxo de inscrição e conclua o processo de inscrição.

  • Ser configurável com credenciais da ESA após o registro. Devido ao gerenciamento de mobilidade empresarial (EMM, na sigla em inglês) console do Google Cloud pode ser usado para criar muitas empresas dentro de site, você precisa de uma maneira de associar cada enterpriseId ao seu próprio serviço e as credenciais da conta. Crie contas de serviço para o organização chamando Enterprises.getServiceAccount e lidar com o gerenciamento de chaves usando Serviceaccountkeys. Consulte Criar contas de serviço empresariais de forma programática. para mais detalhes.

O processo de inscrição no Android exige que você forneça um serviço seguro (https) para do console no ambiente de execução. O URL desse serviço seguro pode ser um URL local e pode incluir informações de sessão ou outra informação de identificação exclusiva, desde que seja bem formado para que o sistema possa analisá-lo. Exemplo:

https://localhost:8080/enrollmentcomplete?session=12345

Processo de inscrição

O processo de inscrição leva menos de cinco minutos. As etapas abaixo presume que o servidor que hospeda o callbackUrl está em execução. Estas etapas também presuma que seu console inclui um componente de IU, como uma seleção de menu com a opção Gerenciar o Android, que inicia o processo de inscrição quando um administrador de TI autenticado seleciona a opção.

Processo de 12 etapas para registrar uma conta do Google Play gerenciado
empresa
Figura 2. um processo de 12 etapas para criar uma vinculação com um domínio do Google
  1. Um admin de TI inicia um pedido de inscrição no console de EMM.

  2. Chamar Enterprises.generateSignupUrl com callbackURL como o único parâmetro. Exemplo:

    https://localhost:8080/enrollcomplete?session=12345

  3. A resposta conterá um URL de inscrição (válido por 30 minutos) e um token de conclusão. Extraia e salve o token de conclusão.

    Prática recomendada:associe o token de conclusão ao administrador de TI que iniciou a inscrição.

  4. Extraia o url da resposta generateSignupURL.

  5. Redirecione para o URL extraído na etapa 4.

  6. O administrador de TI segue o fluxo de configuração na interface de inscrição para criar vinculação empresarial:

    1. O administrador de TI insere dados pessoais, da organização e define uma senha se ainda não tiver uma Conta do Google.

    2. O administrador de TI recebe o nome do EMM e confirma que o e da organização vinculada a ele.

    3. O administrador de TI concorda com os Termos de Serviço do Google.

  7. A interface de inscrição gera um URL de retorno de chamada com base no URL especificado na etapa 2.

  8. A interface de inscrição redireciona o administrador de TI para o URL de callback. Extrair e salvar token corporativo para o URL. Exemplo:

    https://localhost:8080/enrollcomplete?session=12345&enterpriseToken=5h3jCC903lop1

  9. Chame Enterprises.completeSignup, transmitindo a completionToken (etapa 3) e a enterpriseToken (etapa 8).

  10. A chamada retorna uma Instância do Enterprises no corpo da resposta. Armazene o id, name e o e-mail do administrador (se presente) para uso futuro.

  11. Crie uma conta de serviço corporativa (ESA, na sigla em inglês). As credenciais da ESA assumem a forma de um endereço de e-mail e uma chave privada. Há duas maneiras de criar um ESA:

    • Prática recomendada:crie o ESA de maneira programática, usando a API Play EMM.
    • Mostre uma página que instrua o administrador de TI a criar um ESA no sistema Console de APIs do Google. Consulte Como criar um serviço Conta para informações mais detalhadas (instrua o administrador a selecionar projeto > Editor como papel e verificar o download da chave privada caixa). Depois que o administrador de TI criar um ESA, configure o console com as credenciais de chave privada da ESA
  12. Usando suas credenciais de MSA, ligue para setAccount para definir a ESA para esta organização.

O processo de inscrição foi concluído

  • O novo Managed Google Domain está vinculado ao seu EMM.
  • A Conta do Google do administrador de TI é configurada como um administrador do domínio. pode acessar https://play.google.com/work para gerenciar os apps da organização.
  • O console de EMM pode usar o ESA para gerenciar os dados da organização pela a API Google Play EMM.

Criar ESAs programaticamente

Para simplificar o gerenciamento de chaves para ESAs, use a API Google Play EMM para gerar e contas de serviço para organizações em vez do console do Google Cloud. Serviço contas geradas com a API Play EMM:

  • Não são visíveis em nenhum projeto do console do Cloud que pertença a você ou a organização elas precisam ser gerenciadas de maneira programática.
  • São excluídos quando você cancelar a inscrição do organização.

Para gerar uma conta de serviço de maneira programática, faça o seguinte:

  1. Chamar Enterprises.getServiceAccount com o enterpriseId (consulte a etapa 10 na documentação Inscrição processo) e especifique o tipo de chave (keyType) que você quer (googleCredentials, pkcs12). O sistema retorna um nome de conta de serviço e uma chave privada para o serviço (nos mesmos formatos retornados pelo Console de APIs do Google).

  2. Chamar Enterprises.setAccount e defina a conta de serviço da organização.

Prática recomendada:permita que o administrador de TI altere as credenciais da ESA. Afazeres isso no console de EMM, use o ESA para chamar setAccount.

Gerenciar chaves da conta de serviço

As contas de serviço retornadas Enterprises.getServiceAccount são criados com transparência pelo Google. Como EMM, você não tem acesso a essas contas de serviço. No entanto, é possível integrar Serviceaccountkeys no console para permitir que as organizações gerenciem seus próprios ESAs e chaves geradas programaticamente.

API Serviceaccountkeys permite que uma organização insira, exclua e liste as credenciais ativas para as contas de serviço. Essas APIs precisam ser invocadas quando autorizadas, como a ESA definido para a organização e que a ESA deve ter sido gerada a partir de getServiceAccount. Em outras palavras, depois que uma organização chama Enterprises.setAccount (usando a conta de serviço gerada pelo Enterprises.getServiceAccount), somente essa organização está autorizada a invocar chamadas no API Serviceaccountkeys para gerenciar a conta.

Tabela 2: API Serviceaccountkeys

Campos
idUm identificador de string exclusivo opaco para a ServiceAccountKey. atribuído pelo servidor.
kindIdentifica o recurso usando a string fixa androidenterprise#serviceAccountKey:
tipoFormato de arquivo dos dados de chave gerados. Valores aceitáveis:
  • googleCredentials
  • pkcs12
dadosString que compreende o corpo das credenciais particulares . Preenchido após a criação. Não é armazenado pelo Google.
Métodos
excluirRemover e invalidar as credenciais especificadas para o conta de serviço (especificada com enterpriseId e keyId).
insertGerar novas credenciais para a conta de serviço associados à empresa.
listListe todas as credenciais ativas da conta de serviço associados à empresa. Retorna apenas o ID e o tipo de chave.

Notificações

Para receber notificações de ESAs geradas programaticamente, chamando Enterprises.pullNotificationSet. Consulte Configurar notificações de EMM. para mais informações.

Registro de domínios gerenciados do Google

Para gerenciar dispositivos que pertencem a um Managed Google Domain, você precisa estabelecer uma (conhecida como vinculação) entre o console de EMM, a organização e Google.

Pré-requisitos

A organização precisa ter um Managed Google Domain, um token de inscrição de EMM e uma conta de serviço empresarial (ESA, na sigla em inglês). Instruções para administradores de TI sobre como receber esses detalhes estão disponíveis na Central de Ajuda do Android Enterprise de Ajuda.

Domínio do Google gerenciado

Se o administrador de TI da organização reivindicou domínio ao se inscrever no Google Workspace, poderá ativar o Android no Google Admin Console. Se a organização não tiver um Managed Google Domain, o administrador de TI precisará acessar processo de registro no Google.

Token do EMM

Os administradores de TI podem conseguir um token de EMM pela Google Admin Console (em Dispositivos > Dispositivos móveis e Endpoints > Configurações > integrações de terceiros).

ESA

O administrador de TI da sua organização pode criar o ESA, normalmente por meio de o console do Google Cloud em um projeto associado ao seu console de EMM. ESAs ter um nome, um ID e uma chave que autentica a conta para ações realizadas; em nome deles. O ID é formatado de forma semelhante a um endereço de e-mail, com o prefixo o nome da conta de serviço que precede o símbolo @ e o nome do projeto seguindo, além de informações sobre os serviços do Google (por exemplo, some-orgs-esa@myemmconsole313302.iam.gserviceaccount.com).

Processo de inscrição

  1. Um administrador de TI recebe um token de EMM no Google Admin Console.
  2. O admin de TI compartilha o token de EMM com você, autorizando o gerenciamento Android no domínio deles.
  3. No console de EMM, use o token de EMM para chamar Enterprises.enroll Isso vincula a solução Android da organização ao domínio do Google.
    • O método enroll retorna um enterpriseId exclusivo, que você pode extrair mais tarde (somente para Managed Google Domains) usando o list.
    • Também é possível armazenar informações sobre a vinculação (enterpriseId, primaryDomain) em um repositório de dados para evitar fazer chamadas de API para conseguir esses detalhes. Em um cenário de Contas do Google, o primaryDomain da organização é a chave exclusiva que identifica a organização para o EMM e para Google.
  4. Para fazer chamadas específicas da organização para a API Google Play EMM:
    • Você cria um ESA em nome da organização ou um administrador cria e depois o compartilha com você.
    • No console de EMM, chame setAccount, usando enterpriseId e o endereço de e-mail da ESA. Isso permite que a ESA para se autenticar na API como a empresa.

Exemplo

Confira um exemplo que registra uma organização, considerando um primaryDomainName, serviceAccountEmail e authenticationToken:

    public void bind(String primaryDomainName, String serviceAccountEmail,
        String authenticationToken) throws IOException {

      Enterprise enterprise = new Enterprise();
      enterprise.setPrimaryDomain(primaryDomainName);

      Enterprise result = androidEnterprise.enterprises()
          .enroll(authenticationToken, enterprise)
          .execute();

      EnterpriseAccount enterpriseAccount = new EnterpriseAccount();
      enterpriseAccount.setAccountEmail(serviceAccountEmail);
      androidEnterprise.enterprises()
          .setAccount(result.getId(), enterpriseAccount)
          .execute();
    }

Este exemplo usa a biblioteca de cliente para Java e a AndroidEnterprise da classe de serviço com.google.api.services.androidenterprise.model . O procedimento mostrado na amostra pode ser resumido nestas etapas:

  1. Crie um novo objeto AndroidEnterprise com os parâmetros. fornecida por bind, uma classe de modelo que contém o nome de domínio principal, o endereço de e-mail da conta de serviço e o token de inscrição do EMM.
  2. Especifique o nome de domínio principal do objeto corporativo recém-criado.
  3. Chame o método de registro, fornecendo o objeto corporativo e o token de registro.
  4. Criar um novo objeto EnterpriseAccount com o ID ESA do cliente (serviceAccountEmail).
  5. Defina a conta informando o enterpriseId (retornado na etapa 3). e enterpriseAccount.

Também é possível armazenar informações sobre a vinculação (enterpriseId, primaryDomain) em um repositório de dados para evitar fazer chamadas de API para conseguir esses detalhes. Em um cenário de Contas do Google, o primaryDomain da organização é a chave exclusiva que identifica a organização para o EMM e o Google.

Configurar uma implantação no local

Se uma organização exigir que os dados permaneçam no local, inacessíveis para você, você precisa garantir que seus servidores nunca vejam um conjunto ativo de credenciais para a a ESA. Para isso, gere e armazene um conjunto de credenciais da ESA no site:

  1. Conclua o fluxo de inscrição:
    1. Conforme mostrado na etapa 11, use seu MSA para chamar getServiceAccount. Isso gera credenciais da ESA.
    2. Conforme mostrado na etapa 12, use setAccount no ESA para defini-lo como o ESA. para esta organização.
  2. Transmitir o ESA para o servidor no local da organização.
  3. Siga estas etapas no servidor local :
    1. Chamar Serviceaccountkeys.insert para criar um novo para a ESA. A chave privada não é armazenada nos servidores do Google retornado apenas uma vez, quando a conta é criada. Não é possível acessar de outra maneira.
    2. Use as novas credenciais da ESA para chamar Serviceaccountkeys.list Isso retorna as credenciais da conta de serviço ativa.
    3. Ligação Serviceaccountkeys.delete para excluir todas as credenciais, exceto as credenciais da ESA que foram que você acabou de criar no local.
    4. (Opcional) Chamar Serviceaccountkeys.list para verificar se as credenciais atualmente usadas no local são as únicas credenciais válidas para a conta de serviço.

O servidor local agora é o único com as credenciais da ESA. Somente um O ESA gerado por getServiceAccount pode acessar ServiceAccountKeys: seu MSA não pode chamá-lo.

Prática recomendada: não armazene as credenciais da sua conta de serviço principal (MSA) em suas instalações. Usar um ESA separado para cada implantação no local.

Cancelar a inscrição, registrar de novo ou excluir uma vinculação empresarial

Cancelar inscrição

Para desvincular uma organização da sua solução de EMM, use unenroll Uma empresa a vinculação não é excluída quando a inscrição é cancelada, mas os usuários gerenciados por EMM e todas as os dados do usuário relacionados são excluídos após 30 dias. Aqui está um exemplo implementação:

    public void unbind(String enterpriseId) throws IOException {
      androidEnterprise.enterprises().unenroll(enterpriseId).execute();
    }

Prática recomendada: se você tiver um repositório de dados para o nome da organização e o nome da empresa mapeamentos de ID de vinculação, exclua as informações do seu repositório de dados depois de chamar unenroll

Registrar novamente

Um administrador de TI pode registrar uma empresa novamente usando o enterpriseId. Para ele deverá fazer login com uma conta de proprietário e seguir as etapas de de análise de dados.

O fluxo de nova inscrição é transparente na sua perspectiva: não há como determinar se o token corporativo retornado no URL de redirecionamento (etapa 8) é de Uma nova organização ou uma organização que já foi inscrita em outra ou gerenciamento de mobilidade empresarial (EMM, na sigla em inglês).

Se uma organização já tiver se inscrito na sua solução de EMM, talvez seja reconhecer o ID de vinculação da empresa. É possível restaurar usuários gerenciados pelo EMM e os dados do usuário relacionados se um administrador de TI reinscrever uma organização no máximo dias após o cancelamento da inscrição. Se uma organização inscritos com outro EMM, os IDs dos usuários gerenciados pelo EMM criados pelo não poderão ser acessados por outros provedores de EMM. Isso ocorre porque esses IDs do usuário são Específico do EMM.

Excluir

Um administrador de TI pode excluir a organização no Google Play gerenciado. Dentro de 24 horas os dados, contas, atribuições de licenças e outras os recursos ficam inacessíveis para o administrador, os usuários finais e você. Como resultado, suas chamadas de API vão retornar um código de status de resposta HTTP 404 Not Found para o parâmetro enterpriseId. Para lidar com esse erro no console de EMM, faça o seguinte: solicitará a confirmação do administrador de TI antes de remover qualquer associação com o organização.