Создание корпоративной привязки

Чтобы зарегистрировать новую организацию через консоль EMM, вам необходимо создать корпоративную привязку. Ресурс Enterprises представляет собой связь между EMM и организацией. Вы используете его экземпляр для вызова операций от имени организации.

API Play EMM предоставляет три способа создания экземпляра корпоративной привязки:

  • Управляемая регистрация домена Google . Этот метод можно использовать вместо обоих других методов. Организации с существующим управляемым доменом Google и организации, которые впервые работают с Google, будут использовать один и тот же пользовательский интерфейс регистрации. Путь, который они пройдут через пользовательский интерфейс, будет варьироваться в зависимости от их ситуации и потребностей. Организации не требуется заранее получать токен EMM.

  • Регистрация управляемых учетных записей Google Play . Организация хочет использовать управляемые учетные записи Google Play. Вы можете интегрировать пользовательский интерфейс регистрации Android от Google со своей консолью EMM и предоставить организациям быстрый способ создать экземпляр корпоративной привязки, который привязывает их к вашей EMM. Это активирует управляемые учетные записи Google Play для пользователей и устройств. В документации API этот подход иногда называют «инициированием EMM» . Этот метод устарел в пользу предыдущего метода регистрации управляемого домена Google.

  • Регистрация управляемого домена Google . У организации есть управляемый домен Google. ИТ-администраторы выполняют несколько задач вручную, таких как проверка владения доменом в Google, получение токена EMM и создание учетной записи корпоративной службы. В документации API этот подход иногда называют «инициатором Google» .

Вы можете поддержать любой подход в консоли EMM, используя ресурс Enterprises . В таблице 1 показаны соответствующие поля и операции этого ресурса для привязки организаций к EMM.

Таблица 1. Корпоративные API и альтернативные процессы привязки

Корпоративные управляемые аккаунты Google Play Управляемый домен Google Описание
Поле
идентификатор Уникальный идентификатор организации, возвращаемый в результате вызовов enroll и CompleteSignup .
добрый Идентифицирует тип ресурса, используя фиксированное строковое значение «androidenterprise#enterprise».
имя Организация, связанная с enterprise объектом.
первичныйдомен Не задано Поскольку предприятия с управляемыми аккаунтами Google Play не привязаны к модели домена Google, это поле актуально только для управляемых доменов Google.
администратор[] Не задано ИТ-администратор, который регистрируется для Android с помощью процесса регистрации, инициированного EMM, становится администратором (владельцем) корпоративной привязки. Используя управляемую консоль Google Play, ИТ-администратор может приглашать других пользователей организации участвовать в задачах администрирования. См. Справочный центр управляемого Google Play .
администратор[].электронная почта Не задано
Методы
полнаяРегистрация Учитывая completionToken и enterpriseToken , возвращает ресурс Enterprises в теле ответа.
генерироватьSignupUrl Учитывая callbackUrl , возвращает URL и токен completionToken .
зарегистрироваться Регистрирует вызывающую сторону с помощью EMM, токен которого передается вместе с запросом.
getServiceAccount Возвращает учетную запись службы и учетные данные.
setAccount Устанавливает учетную запись, которая будет использоваться для аутентификации в API, как корпоративную.
отменить регистрацию EMM могут разорвать привязку к любому типу предприятия с помощью отмены регистрации. Должен быть вызван с использованием учетных данных EMM для MSA, а не учетных данных ESA.

Регистрация управляемых аккаунтов Google Play

Этот метод регистрации устарел. Вместо этого используйте метод регистрации управляемого домена Google .

Управляемая регистрация домена Google

Вы можете интегрировать процесс регистрации в консоль EMM:

Регистрация администратора управляемых аккаунтов Google Play
Рисунок 1. Рабочий процесс регистрации управляемого домена Google

ИТ-администратор инициирует процесс создания предприятия. Для этого ИТ-администратор:

  1. Выполнит вход в консоль EMM.
  2. Нажимает или выбирает «Настроить Android» (например) и перенаправляется в пользовательский интерфейс регистрации, размещенный в Google.
  3. Предоставляет подробную информацию о предприятии в пользовательском интерфейсе регистрации.
  4. Перенаправляется на вашу консоль EMM.

Адрес электронной почты ИТ-администратора теперь связан с учетной записью Google, которая является учетной записью администратора управляемого домена Google.

Рекомендации : следуйте рекомендациям Google по безопасности , чтобы обеспечить безопасность учетной записи администратора.

Предварительные условия

Для ИТ-администраторов

  • Доступ к вашей консоли EMM и разрешения, необходимые для выполнения соответствующего выбора в вашей консоли (например, «Управление Android» в меню).

  • Рабочий адрес электронной почты. Это должна быть часть домена, принадлежащего организации, а не общего домена, такого как Gmail.com.

Для вашей консоли EMM

Чтобы реализовать процесс регистрации в управляемом домене Google, ваша консоль EMM должна иметь возможность:

  • Используйте свои учетные данные MSA при вызове API-интерфейсов Play EMM. Ваш MSA используется для запуска многих операций от имени ИТ-администратора до тех пор, пока не будет настроена учетная запись службы предприятия (ESA).

  • Обработайте перенаправление через защищенный URL-адрес на внешний сайт Google, чтобы инициировать процесс регистрации и завершить процесс регистрации.

  • Возможность настройки учетных данных ESA после регистрации. Поскольку вашу консоль EMM можно использовать для создания множества предприятий на сайте любой конкретной организации, вам понадобится способ связать каждый enterpriseId с собственной учетной записью службы и учетными данными. Рассмотрите возможность создания учетных записей служб для организации, вызвав Enterprises.getServiceAccount и управляя ключами с помощью API-интерфейсов Serviceaccountkeys . Дополнительные сведения см. в разделе Создание учетных записей корпоративных служб программным способом .

Процесс регистрации Android требует, чтобы вы предоставили безопасную службу (https) для использования вашей консоли во время выполнения. URL-адрес этой защищенной службы может быть локальным URL-адресом и может включать информацию о сеансе или другую уникальную идентифицирующую информацию, если он правильно сформирован и позволяет системе его проанализировать. Например:

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

Процесс регистрации

Процесс регистрации рассчитан на то, чтобы занять не более 5 минут. В приведенных ниже шагах предполагается, что сервер, на котором размещен callbackUrl запущен и работает. Эти шаги также предполагают, что ваша консоль включает в себя компонент пользовательского интерфейса, например пункт меню с опцией «Управление Android» , который запускает процесс регистрации, когда прошедший проверку подлинности ИТ-администратор выбирает этот параметр.

12-шаговый процесс регистрации предприятия с управляемыми аккаунтами Google Play
Рисунок 2. 12-шаговый процесс создания привязки к управляемому домену Google.
  1. ИТ-администратор инициирует запрос на регистрацию в вашей консоли EMM.

  2. Вызовите Enterprises.generateSignupUrl с callbackURL в качестве единственного параметра. Пример:

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

  3. Ответ будет содержать URL-адрес регистрации (действительный в течение 30 минут) и токен завершения. Извлеките и сохраните токен завершения.

    Рекомендация: свяжите токен завершения с ИТ-администратором, который инициировал регистрацию.

  4. Извлеките url из ответа generateSignupURL .

  5. Перенаправление на URL-адрес, полученный на шаге 4.

  6. ИТ-администратор следует порядку настройки в пользовательском интерфейсе регистрации, чтобы создать корпоративную привязку:

    1. ИТ-администратор вводит сведения о себе и своей организации и устанавливает пароль, если у него еще нет учетной записи Google.

    2. ИТ-администратору отображается имя EMM, и он подтверждает, что организация будет связана с этим EMM.

    3. ИТ-администратор принимает условия обслуживания Google.

  7. Пользовательский интерфейс регистрации генерирует URL-адрес обратного вызова на основе URL-адреса, указанного на шаге 2.

  8. Пользовательский интерфейс регистрации перенаправляет ИТ-администратора на URL-адрес обратного вызова. Извлеките и сохраните корпоративный токен по URL-адресу. Пример:

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

  9. Вызовите Enterprises.completeSignup , передав completionToken (шаг 3) и enterpriseToken (шаг 8).

  10. Вызов возвращает экземпляр Enterprises в теле ответа. Сохраните id , name и адрес электронной почты администратора (если есть) для будущего использования.

  11. Создайте учетную запись службы предприятия (ESA). Учетные данные ESA имеют форму адреса электронной почты и закрытого ключа. Существует два способа создания ESA:

    • Рекомендации: создайте ESA программно , используя Play EMM API.
    • Отобразите страницу, которая инструктирует ИТ-администратора создать ESA в консоли Google API. Для получения более подробной информации см . Создание учетной записи службы (попросите администратора выбрать проект > Редактор в качестве своей роли и установите флажок для загрузки закрытого ключа). После того как ИТ-администратор создаст ESA, настройте консоль с использованием учетных данных закрытого ключа ESA.
  12. Используя свои учетные данные MSA, вызовите setAccount , чтобы установить ESA для этой организации.

Процесс регистрации завершен

  • Новый управляемый домен Google привязан к вашему EMM.
  • Учетная запись Google ИТ-администратора настроена как администратор домена и имеет доступ к https://play.google.com/work для управления приложениями организации.
  • Ваша консоль EMM может использовать ESA для управления данными организации через API EMM Google Play.

Создавайте ESA программно

Чтобы упростить управление ключами для ESA, используйте Google Play EMM API для создания сервисных учетных записей для организаций вместо Google Cloud Console. Учетные записи служб, созданные с помощью Play EMM API:

  • Не видны ни в одном проекте Cloud Console, принадлежащем вам или организации; ими необходимо управлять программно.
  • Удаляются при отмене регистрации организации.

Чтобы создать учетную запись службы программным способом:

  1. Вызовите Enterprises.getServiceAccount с помощью enterpriseId (см. шаг 10 процесса регистрации ) и укажите нужный тип ключа ( keyType ) (googleCredentials, pkcs12). Система возвращает имя учетной записи службы и закрытый ключ для учетной записи службы (в тех же форматах, которые возвращает консоль API Google).

  2. Вызовите Enterprises.setAccount и задайте учетную запись службы для организации.

Лучшая практика: поддержка изменения учетных данных ESA ИТ-администратором. Чтобы сделать это в консоли EMM, используйте существующий ESA для вызова setAccount .

Управление ключами сервисного аккаунта

Учетные записи служб, возвращаемые из Enterprises.getServiceAccount , создаются Google прозрачно. У вас как у EMM нет доступа к этим учетным записям. Однако вы можете интегрировать API Serviceaccountkeys в свою консоль, чтобы позволить организациям управлять своими собственными программно созданными ESA и ключами.

API Serviceaccountkeys позволяет организации вставлять, удалять и перечислять активные учетные данные для своих учетных записей служб. Эти API должны вызываться, когда они авторизованы как ESA, установленный для организации, и этот ESA должен быть создан из getServiceAccount . Другими словами, после того, как организация вызывает Enterprises.setAccount (используя учетную запись службы, созданную Enterprises.getServiceAccount ), только эта организация имеет право вызывать вызовы API Serviceaccountkeys для управления учетной записью.

Таблица 2. API ServiceAccountkeys

Поля
идентификатор Непрозрачный уникальный строковый идентификатор для ServiceAccountKey, назначенный сервером.
добрый Идентифицирует ресурс с помощью фиксированной строки androidenterprise#serviceAccountKey .
тип Формат файла сгенерированных ключевых данных. Приемлемые значения:
  • GoogleCredentials
  • pkcs12
данные Строка, содержащая тело файла личных учетных данных. Заполняется при создании. Не хранится в Google.
Методы
удалить Удалите и сделайте недействительными указанные учетные данные для учетной записи службы (указанные с помощью enterpriseId и keyId ).
вставлять Создайте новые учетные данные для учетной записи службы, связанной с предприятием.
список Перечислите все активные учетные данные для учетной записи службы, связанной с предприятием. Возвращает только идентификатор и тип ключа.

Уведомления

Вы можете получать уведомления от программно созданных ESA, вызывая Enterprises.pullNotificationSet . Дополнительную информацию см. в разделе Настройка уведомлений EMM .

Управляемая регистрация домена Google

Чтобы управлять устройствами, принадлежащими управляемому домену Google, вам необходимо установить соединение (известное как привязка) между вашей консолью EMM, организацией и Google.

Предварительные условия

У организации должен быть управляемый домен Google, токен регистрации EMM и учетная запись корпоративной службы (ESA). Инструкции для ИТ-администраторов о том, как получить эти сведения, доступны в Справочном центре Android Enterprise .

Управляемый домен Google

Если ИТ-администратор организации заявил об управляемом домене при регистрации в Google Workspace, он может включить управление Android из консоли администратора Google. Если у организации нет управляемого домена Google, ее ИТ-администратор должен пройти однократную веб-регистрацию в Google.

токен EMM

ИТ-администраторы могут получить токен EMM из консоли администратора Googleразделе «Устройства» > «Мобильные и конечные точки» > «Настройки» > «Сторонние интеграции» ).

ЕКА

ИТ-администратор вашей организации может создать ESA, обычно через Google Cloud Console, в проекте, связанном с вашей консолью EMM. У ESA есть имя, идентификатор и ключ, который удостоверяет подлинность учетной записи для действий, предпринимаемых от их имени. Идентификатор форматируется аналогично адресу электронной почты: перед символом @ стоит имя учетной записи службы, а за ним следует название проекта, а также информация о службах Google (например, some-orgs-esa@myemmconsole313302.iam.gserviceaccount.com). .

Процесс регистрации

  1. ИТ-администратор получает токен EMM из консоли администратора Google.
  2. ИТ-администратор передает вам токен EMM, который разрешает вам управлять Android в его домене.
  3. Через консоль EMM используйте токен EMM для вызова Enterprises.enroll . Это привязывает решение Android организации к ее домену Google.
    • Метод enroll возвращает уникальный enterpriseId , который вы можете получить позже (только для управляемых доменов Google), используя метод list .
    • При желании вы можете сохранить информацию о привязке ( enterpriseId , primaryDomain ) в хранилище данных, чтобы избежать вызовов API для получения этих сведений. В сценарии с учетными записями Google primaryDomain организации является уникальным ключом, который идентифицирует организацию для EMM и Google.
  4. Чтобы выполнить вызовы API EMM Google Play для конкретной организации:
    • Либо вы создаете ESA от имени организации, либо администратор создает ESA, а затем делится им с вами.
    • Через консоль EMM вызовите setAccount , используя enterpriseId и адрес электронной почты ESA. Это позволяет ESA аутентифицироваться в API как предприятие.

Пример

Ниже приведен пример регистрации организации с учетом primaryDomainName , serviceAccountEmail и 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();
    }

В этом примере используется клиентская библиотека для Java и класс службы AndroidEnterprise из пакета com.google.api.services.androidenterprise.model . Процедуру, показанную в образце, можно свести к следующим шагам:

  1. Создайте новый объект AndroidEnterprise с параметрами, предоставленными bind , классом модели, содержащим основное имя домена, адрес электронной почты учетной записи службы и токен регистрации EMM.
  2. Укажите основное доменное имя вновь созданного корпоративного объекта.
  3. Вызовите метод регистрации, предоставив корпоративный объект и токен регистрации.
  4. Создайте новый объект EnterpriseAccount с идентификатором ESA клиента ( serviceAccountEmail ).
  5. Задайте учетную запись, указав поля enterpriseId (возвращенные на шаге 3) и enterpriseAccount .

При желании вы можете сохранить информацию о привязке ( enterpriseId , primaryDomain ) в хранилище данных, чтобы избежать вызовов API для получения этих сведений. В сценарии с учетными записями Google primaryDomain организации является уникальным ключом, который идентифицирует организацию для EMM и Google.

Настройка локального развертывания

Если организация требует, чтобы ее данные оставались на месте и были недоступны для вас, вам необходимо убедиться, что ваши серверы никогда не видят активный набор учетных данных для ESA. Для этого сгенерируйте и сохраните на сайте набор учетных данных ESA:

  1. Завершите процедуру регистрации :
    1. Как показано на шаге 11, используйте MSA для вызова getServiceAccount . Это генерирует учетные данные ESA.
    2. Как показано на шаге 12, используйте setAccount на ESA, чтобы установить его в качестве ESA для этой организации.
  2. Передайте ESA на локальный сервер организации.
  3. Выполните следующие действия на локальном сервере:
    1. Вызовите Serviceaccountkeys.insert , чтобы создать новый ключ для ESA. Этот закрытый ключ не хранится на серверах Google и возвращается только один раз при создании учетной записи. Никаким другим способом он недоступен.
    2. Используйте новые учетные данные ESA для вызова Serviceaccountkeys.list . Это вернет учетные данные активной учетной записи службы.
    3. Вызовите Serviceaccountkeys.delete , чтобы удалить все учетные данные , кроме учетных данных ESA, которые были только что созданы локально.
    4. (Необязательно) Вызовите Serviceaccountkeys.list , чтобы убедиться, что учетные данные, используемые в настоящее время локально, являются единственными действительными учетными данными для учетной записи службы.

Локальный сервер теперь является единственным сервером с учетными данными ESA. Только ESA, созданный с помощью getServiceAccount , может получить доступ ServiceAccountKeys — вашему MSA не разрешено его вызывать.

Рекомендации : не храните учетные данные основной учетной записи службы (MSA) локально. Используйте отдельный ESA для каждого локального развертывания.

Отмена, повторная регистрация или удаление корпоративной привязки

Отменить регистрацию

Чтобы отменить привязку организации к вашему решению EMM, используйте unenroll . Корпоративная привязка не удаляется при отмене регистрации, но ее пользователи, управляемые EMM, и все связанные с ними пользовательские данные удаляются через 30 дней. Вот пример реализации:

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

Рекомендация: если у вас есть хранилище данных для сопоставлений имени организации и идентификатора привязки предприятия, удалите информацию из хранилища данных после вызова unenroll .

Повторно зарегистрироваться

ИТ-администратор может повторно зарегистрировать предприятие, используя существующий enterpriseId . Для этого они входят в систему с учетной записью уровня владельца и следуют процессу регистрации .

Процесс повторной регистрации с вашей точки зрения прозрачен: невозможно определить, принадлежит ли корпоративный токен, возвращенный в URL-адресе перенаправления (шаг 8), новой организации или организации, которая ранее была зарегистрирована в другом EMM.

Если организация ранее была зарегистрирована в вашем решении EMM, возможно, вы сможете распознать идентификатор корпоративной привязки. Вы можете восстановить пользователей, управляемых EMM, и связанные пользовательские данные, если ИТ-администратор повторно зарегистрирует организацию не более чем через 30 дней после того, как она была отменена у вас. Если организация ранее была зарегистрирована в другом EMM, идентификаторы пользователей, управляемых EMM, созданные другим EMM, не будут вам доступны. Это связано с тем, что эти идентификаторы пользователей зависят от EMM.

Удалить

ИТ-администратор может удалить свою организацию из управляемого Google Play. В течение 24 часов данные, учетные записи, назначения лицензий и другие ресурсы организации становятся недоступными для администратора, конечных пользователей и вас. В результате ваши вызовы API вернут код состояния ответа HTTP 404 Not Found для параметра enterpriseId . Чтобы устранить эту ошибку в консоли EMM, запросите подтверждение у ИТ-администратора, прежде чем удалять какую-либо связь с организацией.