Crea una vinculación empresarial

Para inscribir una nueva organización a través de tu consola de EMM, debes crear un vinculación empresarial. Los El recurso Enterprises representa la vinculación entre una EMM y una organización. Se usa una instancia para invocar operaciones en nombre de la organización.

La API de EMM de Play proporciona tres formas de crear una instancia de vinculación empresarial:

  • Registro en un dominio de Google administrado : Se puede usar este método en lugar de los dos. Las organizaciones con un un dominio y una organización de Google administrados existentes que son nuevos en Google usará la misma IU de registro. El recorrido que realizan a través de la IU varían según su situación y necesidades. La organización no necesita obtener un token de EMM por adelantado.

  • Registro de cuentas de Google Play administrado — Una organización quiere usar cuentas de Google Play administrado. Puedes integrar la IU de registro de Android de Google con tu consola de EMM y proporcionarles a las organizaciones rápida de crear una instancia de vinculación empresarial que las vincule a tu EMM. Esto habilita cuentas de Google Play administradas para usuarios y dispositivos. A veces, este enfoque se conoce como iniciado por EMM en la API en la documentación de Google Cloud. Este método dejó de estar disponible y se reemplazó por el dominio administrado de Google. método de registro anterior.

  • Inscripción de dominio de Google administrado : Una organización tiene un dominio de Google administrado existente. Administradores de TI completan varias tareas manuales, como verificar la propiedad del dominio con Google, obtener un token de EMM y la creación de una cuenta de servicio empresarial. Este enfoque es a veces denominados iniciados por Google en la documentación de la API.

Puedes admitir cualquiera de los dos enfoques en tu consola de EMM con el Recurso Enterprises. Tabla 1 muestra los campos y las operaciones relevantes de este recurso para la vinculación organizaciones a las EMM.

Tabla 1: APIs de Enterprise y los procesos alternativos de vinculación

 Cuentas de Google Play administradas para empresasDominio administrado de Google Descripción
Campo
id Es el identificador único de la organización que se muestra a partir de las llamadas enroll y completeSignup.
kind Identifica el tipo de recurso con un valor de cadena fijo. ꛭandroidenterprise#enterpriseenterprise.
nombre Organización asociada con el objeto enterprise.
primaryDomainSin establecer Dado que las cuentas de Google Play administradas no están vinculadas para el modelo de dominio de Google, este campo es relevante solo para cuentas de dominios.
administradorNo establecerEl administrador de TI que se registra en Android con el El proceso de registro iniciado por EMM se convierte en el administrador (propietario) de la vinculación empresarial. A través de la consola de Google Play administrado, el administrador de TI puede invitar otros usuarios de la organización para que participen en tareas de administración. Consulta Google administrado Centro de ayuda de Play.
administrator[].email Sin establecer
Métodos
completeSignup Dado un completionToken y un enterpriseToken, muestra un recurso Enterprises en el cuerpo de respuesta.
generateSignupUrl Dado un callbackUrl, muestra una URL y un completionToken.
enroll Inscribe al emisor con el EMM cuyo el token de acceso se envía con la solicitud.
getServiceAccount Devuelve una cuenta de servicio y credenciales.
setAccount Establece la cuenta que se usará para autenticarse en la API como si fueran la empresa.
unenroll Las EMM pueden cortar la vinculación y qué tipo de empresa usa dar de baja. Se debe invocar con el método EMM las credenciales del MSA, no las de ESA.

Registro de cuentas de Google Play administrado

Este método de registro dejó de estar disponible. Usa el registro de dominios de Google administrados en su lugar.

Registro de dominio administrado de Google

Puedes integrar el proceso de registro en tu consola de EMM:

Registro de administrador de cuentas de Google Play administrado
Figura 1: Registro de dominio administrado de Google flujo de trabajo

Un administrador de TI inicia el proceso de creación de una empresa. Para ello, el equipo de TI administrador:

  1. Accede a tu consola de EMM.
  2. Hace clic o selecciona Configurar Android (por ejemplo), y se lo redirecciona a un IU para el registro a cargo de Google.
  3. Proporciona detalles sobre la empresa en la IU de registro.
  4. Se redirecciona a tu consola de EMM.

La dirección de correo electrónico del administrador de TI ahora está vinculada a una Cuenta de Google que es de administrador cuenta de un dominio administrado de Google.

Práctica recomendada: sigue los lineamientos de seguridad de Google lineamientos para ayudar a mantener la seguridad de la cuenta de administrador.

Requisitos previos

Para administradores de TI

  • acceso a tu consola de EMM y los permisos necesarios para realizar las en la consola (por ejemplo, Administrar Android, como una opción del menú).

  • Una dirección de correo electrónico de trabajo Debe ser parte de un dominio que pertenezca al de Google, no un dominio compartido, como Gmail.com

Para tu consola de EMM

Para implementar el flujo de registro de dominios administrados de Google, tu consola de EMM debe ser capaz de hacer lo siguiente:

  • Usa tus credenciales de MSA cuando invoques llamadas en las APIs de EMM de Play. Tu Acuerdo de servicio estándar se usa para invocar muchas de las operaciones en nombre de un administrador de TI hasta que esté configurada la cuenta de servicio empresarial (ESA) de una organización.

  • Controla el redireccionamiento mediante una URL segura a un sitio externo proporcionado por Google para iniciar el flujo de registro y completar el proceso de inscripción.

  • Se puede configurar con credenciales de ESA después de la inscripción. Porque tu EMM consola se pueden usar para crear muchas empresas dentro de la infraestructura necesitas una forma de asociar cada enterpriseId con su propio servicio cuenta y credenciales. Considera crear cuentas de servicio para el organización llamando a Enterprises.getServiceAccount y el manejo de la administración de claves APIs de Serviceaccountkeys. Consulta Crea cuentas de servicio empresariales de manera programática. para obtener más información.

El proceso de registro de Android requiere que proporciones un servicio seguro (https) para el uso que hace tu consola en el tiempo de ejecución. La URL de este servicio seguro puede ser una URL local y puede incluir la sesión u otra información de identificación única, siempre que se están bien formadas para que el sistema pueda analizarlos. Por ejemplo:

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

Proceso de inscripción

El proceso de registro está diseñado para durar menos de 5 minutos. Sigue estos pasos: se da por sentado que el servidor que aloja callbackUrl está en funcionamiento. Estos pasos también imagina que tu consola incluye un componente de IU, como una selección del menú con la opción Administrar Android, que inicia el proceso de registro cuando un administrador de TI autenticado selecciona la opción.

Proceso de 12 pasos para inscribir una cuenta de Google Play administrada
empresa
Figura 2: de 12 pasos para crear una vinculación Dominio de Google
  1. Un administrador de TI inicia una solicitud de inscripción en tu consola de EMM.

  2. Llama a Enterprises.generateSignupUrl con callbackURL como único parámetro. Ejemplo:

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

  3. La respuesta contendrá una URL de registro (válida durante 30 minutos) y una token de finalización. Extrae y guarda el token de finalización.

    Práctica recomendada: Asocia el token de finalización con el administrador de TI que inició el registro.

  4. Extrae el url de la respuesta generateSignupURL.

  5. Redireccionar a la URL extraída en el paso 4.

  6. El administrador de TI sigue el flujo de configuración en la IU de registro para crear una vinculación empresarial:

    1. El administrador de TI ingresa detalles sobre ellos mismos y su organización, y establece una contraseña si aún no tiene una Cuenta de Google.

    2. El administrador de TI ve el nombre de la EMM y confirma que el que tu organización estará vinculada a esta EMM.

    3. El administrador de TI acepta las Condiciones del Servicio de Google.

  7. La IU de registro genera una URL de devolución de llamada basada en la URL especificada en el paso 2.

  8. La IU de registro redirecciona al administrador de TI a la URL de devolución de llamada. Extraer y guardar el token de empresa a la URL. Ejemplo:

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

  9. Llamada a Enterprises.completeSignup, pasa completionToken (paso 3) y enterpriseToken (paso 8).

  10. La llamada muestra un Instancia Enterprises en el cuerpo de la respuesta. Guarda la id, la name y el correo electrónico del administrador (si presente) para su uso futuro.

  11. Crear una cuenta de servicio empresarial (ESA) Las credenciales de ESA tienen la forma de una dirección de correo electrónico y una clave privada. Existen dos maneras de crear un ESA:

    • Práctica recomendada: Crea el ESA de manera programática, con la API de Play EMM.
    • Muestra una página en la que se le indique al administrador de TI que cree una ESA en la consola de Google Consola de APIs de Google Cloud. Consulta Cómo crear un servicio Cuenta para obtener información más detallada (indícale al administrador que elija proyecto > Editor como su rol y verifica la descarga de la clave privada. ). Después de que el administrador de TI cree una ESA, configura la consola con las credenciales de clave privada de la ESA
  12. Con tus credenciales de MSA, llama setAccount para establecer la ESA de esta organización.

Se completó el proceso de inscripción

  • El nuevo dominio administrado de Google está vinculado a tu EMM.
  • La Cuenta de Google del administrador de TI está configurada como administrador del dominio. puedes acceder a https://play.google.com/work para administrar las apps de la organización.
  • Tu consola de EMM puede usar la ESA para administrar los datos de la organización a través de la API de EMM de Google Play.

Cómo crear ESA de manera programática

Para simplificar la administración de claves para ESA, usa la API de Google Play EMM para generar cuentas de servicio para organizaciones en lugar de la consola de Google Cloud. Servicio cuentas generadas a través de la API de EMM de Play:

  • No se pueden ver en ningún proyecto de la consola de Cloud que pertenezca a a ti o a la organización; deben administrarse de manera programática.
  • Se borran cuando dar de baja organización.

Para generar una cuenta de servicio de manera programática, haz lo siguiente:

  1. Llama a Enterprises.getServiceAccount con el enterpriseId (consulta el paso 10 en el artículo de Inscripción proceso) y especifica el tipo de clave (keyType) que deseas (googleCredentials, pkcs12). El sistema devuelve un nombre de cuenta de servicio y una clave privada para el servicio (en los mismos formatos que muestra la Consola de APIs de Google).

  2. Llama a Enterprises.setAccount y establecer la cuenta de servicio para la organización.

Práctica recomendada: Permite que el administrador de TI cambie las credenciales de ESA. Tareas pendientes esto en tu consola de EMM, usa el ESA existente para llamar a setAccount.

Administrar las claves de la cuenta de servcio

Las cuentas de servicio que devuelven Enterprises.getServiceAccount son creados con transparencia por Google. Como EMM, no tienes acceso a estas cuentas de servicio. Sin embargo, puedes integrar el Serviceaccountkeys API en tu consola para permitir que las organizaciones administren sus propias claves y ESA generados de forma programática.

La API de Serviceaccountkeys permite que una organización inserte, borre y enumere las credenciales activas para a sus cuentas de servicio. Estas APIs se deben invocar mientras estén autorizados como la ESA que se estableció para la organización y que la ESA debe haberse generado desde getServiceAccount. En otras palabras, después de que una organización llama Enterprises.setAccount (con la cuenta de servicio generada por Enterprises.getServiceAccount), solo esa organización está autorizada para invocar llamadas en el API de Serviceaccountkeys para administrar la cuenta.

Tabla 2. API de Serviceaccountkeys

Campos
idUn identificador de string único opaco para ServiceAccountKey que asigna el servidor.
kindIdentifica el recurso con una cadena fija. androidenterprise#serviceAccountKey
tipoFormato de archivo de los datos de clave generados. Los valores aceptables son los siguientes:
  • googleCredentials
  • pkcs12
datosUna cadena que comprende el cuerpo de las credenciales privadas . Se propaga cuando se crea. Google no la almacena.
Métodos
deleteQuita y, luego, invalida las credenciales especificadas para el Cuenta de servicio (especificada con enterpriseId y keyId).
insertGenera credenciales nuevas para la cuenta de servicio asociadas a la empresa.
listEnumera todas las credenciales activas de la cuenta de servicio. asociadas a la empresa. Muestra solo el ID y el tipo de clave.

Notificaciones

Puede obtener notificaciones de ESA generadas de manera programática mediante llamando a Enterprises.pullNotificationSet. Consulta Configura las notificaciones de EMM. para obtener más información.

Inscripción de dominio administrado de Google

Para administrar dispositivos que pertenezcan a un dominio administrado de Google, debes establecer un (conocida como vinculación) entre tu consola de EMM, la organización Google.

Requisitos previos

La organización debe tener un dominio de Google administrado, un token de inscripción de EMM y cuenta de servicio empresarial (ESA). Instrucciones para administradores de TI sobre cómo obtener estos detalles están disponibles en el Centro de ayuda de Android Enterprise Center.

Dominio de Google administrado

Si el administrador de TI de la organización reclamó un acceso dominio cuando se registraron en Google Workspace, pueden habilitar Android en la Consola del administrador de Google. Si la organización no tiene un dominio de Google administrado, su administrador de TI debe acceder a un sitio web de registro en Google.

Token de EMM

Los administradores de TI pueden obtener un token de EMM del Consola del administrador de Google (en Dispositivos > Dispositivos móviles y Extremos > Configuración > Integraciones de terceros).

ESA

El administrador de TI de tu organización puede crear la ESA, generalmente a través de la consola de Google Cloud en un proyecto asociado con tu consola de EMM. ESA tener un nombre, un ID y una clave que autentique la cuenta para las acciones realizadas por ellos. El ID tiene un formato similar al de una dirección de correo electrónico, con el nombre de la cuenta de servicio que antecede al símbolo @ y al nombre del proyecto junto con la información de los servicios de Google (por ejemplo, some-orgs-esa@myemmconsole313302.iam.gserviceaccount.com).

Proceso de inscripción

  1. Un administrador de TI obtiene un token de EMM de la Consola del administrador de Google.
  2. El administrador de TI comparte contigo el token de EMM, lo que te autoriza a administrar Android en su dominio.
  3. A través de tu consola de EMM, usa el token de EMM para llamar Enterprises.enroll Esto vincula la solución de Android de la organización a su dominio de Google.
    • El método enroll muestra un enterpriseId único que puedes recuperar. más adelante (solo para dominios de Google administrados) con la list.
    • De forma opcional, puedes almacenar información sobre la vinculación (enterpriseId, primaryDomain) en un almacén de datos para evitar realizar llamadas a la API para obtener estas más detalles. En una situación de Cuentas de Google, el primaryDomain de la organización es la clave única que identifica a la organización ante la EMM Google.
  4. Para realizar llamadas específicas de la organización a la API de EMM de Google Play, haz lo siguiente:
    • Puedes crear una ESA en nombre de la organización, o bien un administrador la ESA y, luego, la comparte contigo.
    • A través de tu consola de EMM, llama setAccount, con el enterpriseId y la dirección de correo electrónico de la ESA. Esto permite que la ESA para autenticarse en la API como empresa.

Ejemplo

Este es un ejemplo que inscribe una organización, con un primaryDomainName, serviceAccountEmail y 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();
    }

En este ejemplo, se usa la biblioteca cliente de Java y la clase de servicio AndroidEnterprise de la com.google.api.services.androidenterprise.model . El procedimiento que aparece en el ejemplo se puede resumir en estos pasos:

  1. Crea un nuevo objeto AndroidEnterprise con los parámetros. que proporciona bind, una clase de modelo que contiene el nombre de dominio principal la dirección de correo electrónico de la cuenta de servicio y el token de inscripción de EMM.
  2. Especifica el nombre de dominio principal del objeto empresarial recién creado.
  3. Llama al método de inscripción y proporciona el objeto empresarial y el token de inscripción.
  4. Crear un nuevo objeto EnterpriseAccount con el ID de ESA del cliente (serviceAccountEmail).
  5. Para configurar la cuenta, proporciona enterpriseId (se muestra en el paso 3) y enterpriseAccount.

De forma opcional, puedes almacenar información sobre la vinculación (enterpriseId, primaryDomain) en un almacén de datos para evitar realizar llamadas a la API para obtener estas más detalles. En una situación de Cuentas de Google, el primaryDomain de la organización es la clave única que identifica a la organización ante EMM y Google.

Configura una implementación local

Si una organización requiere que sus datos permanezcan en las instalaciones y sean inaccesibles para ti, debe asegurarse de que sus servidores nunca vean un conjunto activo de credenciales para el ESA. Para ello, genera y almacena un conjunto de credenciales de ESA en el sitio:

  1. Completa el flujo de inscripción:
    1. Como se muestra en el paso 11, usa tu MSA para llamar a getServiceAccount. Esta genera credenciales de ESA.
    2. Como se muestra en el paso 12, usa setAccount en el ESA para establecerlo como ESA. para esta organización.
  2. Pasar el ESA al servidor local de la organización
  3. Realiza los siguientes pasos en el servidor local :
    1. Llama a Serviceaccountkeys.insert para crear una nueva campaña para la ESA. Esta clave privada no se almacena en los servidores de Google y se solo se muestra una vez, cuando se crea la cuenta. No se puede acceder a ningún de otro modo.
    2. Usa las nuevas credenciales de la ESA para llamar Serviceaccountkeys.list Esto muestra las credenciales de la cuenta de servicio activa.
    3. Llamada Serviceaccountkeys.delete para borrar todas las credenciales, excepto las de ESA que acabas de crear de manera local.
    4. Llamada (opcional) Serviceaccountkeys.list para verificar que las credenciales que se usan actualmente de forma local sean las únicas credenciales válidas para la cuenta de servicio.

El servidor local ahora es el único servidor con las credenciales de ESA. Solo un La ESA generada a través de getServiceAccount tiene acceso ServiceAccountKeys, tu MSA no tiene permitido llamarla.

Práctica recomendada: No almacenes las credenciales de tu cuenta de servicio principal (MSA) en de forma local. Usa un ESA diferente para cada implementación local.

Cómo dar de baja una vinculación empresarial, volver a inscribirla o borrarla

Dar de baja

Para desvincular una organización de tu solución de EMM, usa unenroll Una empresa no se borra cuando se da de baja, sino que los usuarios administrados sus datos de usuario relacionados se borran después de 30 días. Aquí hay un ejemplo implementación:

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

Práctica recomendada: Si tienes un almacén de datos para el nombre de la organización y Enterprise vincular asignaciones de ID, borrar la información de tu almacén de datos después de llamar unenroll

Volver a inscribir

Un administrador de TI puede volver a inscribir una empresa con su enterpriseId existente. Para hacerlo, debe acceder con una cuenta de propietario y seguir las instrucciones de inscripción .

El flujo de reinscripción es transparente desde tu perspectiva: no hay forma de determinar si el token de empresa devuelto en la URL de redireccionamiento (paso 8) es de una organización nueva o que se inscribió anteriormente con otro de EMM

Si una organización ya se inscribió con tu solución de EMM, es posible que pueda reconocer el ID de vinculación empresarial. Puedes restablecer los usuarios administrados por EMM y los datos relacionados del usuario si un administrador de TI vuelve a inscribir una organización después de 30 días días después de haber dado de baja tu inscripción. Si antes una organización inscritos en un EMM diferente, los IDs de usuario de los usuarios administrados por EMM creados por el no tendrás acceso a otro EMM. Esto se debe a que estos IDs de usuario Es específico de EMM.

Borrar

Un administrador de TI puede borrar su organización de Google Play administrado. Dentro de 24 horas. Los datos, las cuentas y las asignaciones de licencias de la organización, entre otros, recursos dejan de ser accesibles para el administrador, los usuarios finales y tú. Como Resultado, tus llamadas a la API mostrarán un código de estado de respuesta HTTP 404 Not Found. para el parámetro enterpriseId. Para manejar este error en tu consola de EMM, sigue estos pasos: solicitar la confirmación del administrador de TI antes de quitar cualquier asociación con el organización.