- Управление устройствами Android с рабочим профилем (личным или корпоративным) с помощью Intune
- Поддерживаемые устройства
- Адаптация
- Управление рабочими профилями
- Публикация и распространение приложений
- Конфигурация приложений
- Конфигурация электронной почты
- Политики защиты приложений
- Профили VPN
- Профили сертификатов
- Профили Wi-Fi
- Регистрация выделенных, полностью управляемых или корпоративных устройств Android Enterprise с рабочими профилями
- Регистрация с помощью NFC
- Регистрация с помощью токена
- Действия
- Регистрация с помощью QR-кода
- Регистрация с помощью автоматической настройки Google
- Регистрация с помощью функции регистрации мобильных устройств Knox
- Как сделать корпоративное мобильное приложение единственным на устройстве с помощью Android Management API
Управление устройствами Android с рабочим профилем (личным или корпоративным) с помощью Intune
В Android Enterprise доступно несколько вариантов регистрации, предлагающих пользователям самые актуальные и безопасные функции. Программа регистрации устройств Android Enterprise с рабочим профилем (личным или корпоративным) предоставляет ряд функций и услуг, которые отделяют личные приложения и данные от рабочих. Кроме того, в нее включены дополнительные возможности в сфере управления и конфиденциальности при использовании личных устройств с Android для работы.
Поддерживаемые устройства
Возможности управления в Android для бизнеса зависят от функций, реализованных в новых версиях ОС Android. Для устройств, которые не поддерживают Android для бизнеса, доступна обычная система управления Android. Дополнительные сведения см. в статье о требованиях Android для бизнеса.
Адаптация
Перед регистрацией устройств с рабочим профилем Android для бизнеса необходимо выполнить некоторые действия по подготовке. Это позволит установить подключение между клиентом Intune и управляемым Google Play. Дополнительные сведения см. в разделах Включение регистрации личных устройств Android Enterprise с рабочим профилем и Настройка регистрации в Intune корпоративных устройств Android Enterprise с рабочим профилем.
Управление рабочими профилями
При управлении устройством Android Enterprise с рабочим профилем (личным или корпоративным) с помощью Intune вы управляете не всем устройством. Возможности, предназначенные для управления, влияют только на рабочий профиль, созданный на устройстве во время регистрации. Все приложения, которые развертываются на устройство через Intune, устанавливаются в рабочий профиль. Значки приложений в рабочем профиле отличаются от значков личных приложений на устройстве. Все приложения Android и данные, которые не входят в Android для бизнеса, остаются личными и находятся под управлением конечного пользователя. Пользователи могут установить любое приложение в личную часть устройства. Администраторы могут контролировать и отслеживать приложения и действия в рабочем профиле.
При настройке политик для конфигурации устройства или соответствия требованиям широкий диапазон параметров позволяет адаптировать защиту под ваши конкретные потребности. Чтобы лучше понять, как реализовать определенные сценарии конфигурации безопасности, см. руководство по структуре конфигурации безопасности для политик устройств Android Enterprise.
Структура конфигурации безопасности разделена на отдельные уровни конфигурации, которые предоставляют рекомендации для личных и контролируемых устройств, каждый уровень которых строится на основе предыдущего. Доступные уровни и параметры на каждом уровне различаются в зависимости от режима регистрации:
- Для устройств с личным рабочим профилем Android Enterprise: Параметры безопасности личного рабочего профиля Android
- Для устройств с полностью управляемыми, выделенными и корпоративными профилями Android Enterprise: Параметры безопасности полностью управляемых устройств с Android
Публикация и распространение приложений
Управляемый Google Play является неотъемлемой частью процесса распространения приложений Android Enterprise и управления ими. Все приложения, развернутые в рабочем профиле на устройствах Android Enterprise с рабочим профилем (личным или корпоративным), загружаются из службы управляемого Google Play. Для управления и развертывания приложений в Google Play Маркете необходимо войти на сайт Google Play с учетными данными администратора вашей организации для Google. Можно утвердить приложения для развертывания через Android для бизнеса, чтобы они появились в рабочих профилях устройств. Эти приложения синхронизируются с консолью Intune, откуда их затем можно развертывать и управлять ими с помощью Intune. Бизнес-приложения, разработанные вашей организацией, необходимо публиковать в управляемом Google Play через консоль публикации приложений Google Android. Доступ к бизнес-приложениям необходимо ограничить с помощью консоли публикации приложений Android.
Установка приложений не требует от пользователей что-либо делать и разрешать установку из неизвестных источников. Для просмотра и установки дополнительных или доступных приложений пользователь может использовать Google Play Маркет на своем устройстве. Дополнительные сведения см. в статье о назначении приложений управляемого Google Play для корпоративных устройств с Android в Intune.
Конфигурация приложений
Android для бизнеса предоставляет инфраструктуру для развертывания значений конфигурации в поддерживающих их приложениях. Указав значения конфигурации для рабочих приложений, вы обеспечиваете их правильную настройку при первом запуске приложения пользователем. Для поддержки конфигурации приложений разработчики должны создавать приложения Android с поддержкой управляемых значений конфигурации. В этом случае вы сможете указать и применить эти параметры конфигурации с помощью Intune. Дополнительные сведения см. в статье Добавление политик конфигурации приложений для управляемых устройств Android.
Конфигурация электронной почты
В отличие от iOS и iPadOS в Android для бизнеса не предоставляется приложение электронной почты по умолчанию или нативный профиль электронной почты. Конфигурации электронной почты можно задать, применив параметры конфигурации к поддерживающим их приложениям электронной почты. Настройку с применением конфигурации приложений Android для бизнеса поддерживают два клиентских приложения Exchange ActiveSync (EAS) в Магазине Google Play — Gmail и Nine Work.
Intune предоставляет шаблоны конфигурации для приложений Gmail и Nine Work, если они управляются как рабочие приложения. Другие приложения электронной почты, которые поддерживают профили конфигурации приложений, можно настроить с помощью политик конфигурации мобильных приложений.
При использовании условного доступа Exchange ActiveSync на устройствах Android Enterprise с рабочим профилем (личным или корпоративным) вы можете использовать почтовый клиент Gmail или Nine Work. Также поддерживаются приложение Microsoft Outlook для Android и любые другие приложения электронной почты, в которых используется современная проверка подлинности с помощью ADAL. Дополнительные сведения см. в разделе Настройка параметров электронной почты в Microsoft Intune.
Политики защиты приложений
Применяемые политики защиты приложений полностью поддерживаются в рабочем профиле (личном или корпоративном) и в личном профиле. Бизнес-приложения можно публиковать в консоли публикации приложений Android на сайте https://play.google.com/apps/publish. Эта консоль позволяет делать приложения доступными только для вашей компании. Дополнительные сведения см. в статье о создании политики соответствия требованиям для устройств Android для бизнеса в Intune. Общие сведения о политиках защиты приложений см. в статье Что такое политики защиты приложений?
Профили VPN
Поддержка VPN аналогична профилям Android VPN. Для управления Android Enterprise доступны те же поставщики VPN и базовая конфигурация, но существует два различия.
VPN для рабочего профиля — VPN-подключения доступны только приложениям, развернутым в рабочий профиль (личный или корпоративный). Использовать VPN-подключение могут только управляемые приложения Android Enterpise. Личные приложения, установленные на устройстве, не могут использовать управляемое VPN-подключение. Дополнительные сведения см. в разделе о параметрах VPN Android для бизнеса.
VPN для отдельных приложений — VPN для отдельных приложений можно настроить в Intune, если поставщик VPN поддерживает:
- настройку VPN для отдельного приложения;
- возможность настроить VPN для отдельных приложений через профиль конфигурации приложений Android для бизнеса. Дополнительные сведения см. в разделе Использование пользовательского профиля Microsoft Intune с целью создания профиля VPN для каждого приложения на устройствах Android.
Профили сертификатов
На устройствах Android Enterprise с рабочим профилем (личным или корпоративным) доступны те же параметры настройки профилей сертификатов, что и в системе управления Android. Android Enterprise предоставляет расширенные API управления сертификатами. Расширенное управление сертификатами включает следующие функции:
- Обеспечивает развертывание сертификатов незаметно для пользователя.
- Обеспечивает удаление развернутых сертификатов, когда устройство выводится из Intune и рабочий профиль удаляется.
- Предоставляет улучшенную систему обмена сообщениями, информирующую пользователей о том, что сертификат был развернут и настроен ИТ-отделом через службу управления.
Профили Wi-Fi
Когда устройство списывается из Intune, а рабочий профиль удаляется, также удаляются профили Wi-Fi, которыми управляет Android для бизнеса. Дополнительные сведения см. в разделе Настройка параметров Wi-Fi в Microsoft Intune.
Источник
Регистрация выделенных, полностью управляемых или корпоративных устройств Android Enterprise с рабочими профилями
После настройки выделенных устройств, полностью управляемых устройств или корпоративных устройств с рабочим профилем Android Enterprise в Intune вы можете зарегистрировать их. Регистрация в Intune для выделенных устройств, полностью управляемых устройств и корпоративных рабочих профилей начинается со сброса до заводских настроек. Метод регистрации устройств Android Enterprise зависит от операционной системы.
Метод регистрации | Минимальная версия ОС Android для выделенного и полностью управляемого устройства |
---|---|
NFC | 6.0 |
Запись токена | 6.0 |
QR-код | 7.0 |
Автоматическая настройка | 8.0 Участвующие в программе производители. |
Регистрация мобильных устройств Knox | 6.0 Только на устройствах Samsung Knox 2.8 или более поздних версий. |
Управление устройствами с COPE (корпоративный рабочий профиль) доступно с Android версии 8.0.
Если у вас определена политика условного доступа Azure AD, которая использует параметр предоставления управления Требовать, чтобы устройство было отмечено как соответствующее или политику блокировки и применяется для всех облачных приложений, Android и браузеров, необходимо исключить облачное приложение Microsoft Intune из этой политики. Причина в том, что программа установки Android использует вкладку Chrome для проверки подлинности пользователей во время процесса регистрации. Дополнительные сведения см. на странице Документация по политикам условного доступа в Azure AD.
Регистрация с помощью NFC
Для устройств с Android 6 и более поздних версий с поддержкой NFC вы можете подготовить устройства, создав специально отформатированный тег NFC. Вы можете использовать собственное приложение или любой инструмент создания тегов NFC. Дополнительные сведения см. в разделе Регистрация устройств с Android Enterprise на базе C с помощью Microsoft Intune и документации Google по API управления Android.
Метод регистрации NFC поддерживается только на устройствах с корпоративным рабочим профилем (COPE) под управлением Android версий 8–10. Для устройств с Android 11 эта возможность недоступна.
Регистрация с помощью токена
- Для устройств с Android 6 и более поздних версий можно использовать значение токена, например 12345 , для регистрации устройства.
- Android 6.1 и более поздних версий также может сканировать QR-код при использовании метода регистрации afw#setup.
- Метод регистрации afw#setup поддерживается только на устройствах с корпоративным рабочим профилем (COPE) под управлением Android версий 8–10. Для устройств Android 11 эта возможность недоступна. Дополнительные сведения см. в документации Google для разработчиков.
Действия
- Включите очищенное устройство.
- На экране приветствия выберите язык.
- Подключитесь к Wi-Fi и нажмите Далее.
- Примите условия Google и нажмите Далее.
- На экране входа в Google введите afw#setup вместо учетной записи Gmail, а затем нажмите ДАЛЕЕ.
- Выберите УСТАНОВИТЬ для приложения Политика для устройств Android.
- Продолжайте установку этой политики. Для некоторых устройств придется принять дополнительные условия.
- На экране Зарегистрировать это устройство разрешите устройству отсканировать QR-код. Или же введите токен вручную.
- Следуйте указаниям на экране, чтобы завершить регистрацию.
Регистрация с помощью QR-кода
На устройствах Android 7 и более поздних версий вы можете отсканировать QR-код из профиля регистрации для регистрации устройства.
Масштаб в браузере может помешать устройствам сканировать QR-код. Увеличьте масштаб в браузере, чтобы решить проблему.
- Чтобы запустить считывание QR-кода на устройстве Android, несколько раз коснитесь первого экрана, который откроется после очистки.
- На устройствах с Android 7 или 8 вам будет предложено установить сканер QR-кодов. На устройствах с Android 9 и более поздних версий уже установлен сканер QR-кодов.
- Сканером QR-кодов отсканируйте QR-код в профиле регистрации и следуйте инструкциям на экране для регистрации.
Регистрация с помощью автоматической настройки Google
Чтобы использовать систему автоматической настройки Google, устройство должно поддерживать ее и быть связано с поставщиком, который поставляет услугу. Дополнительные сведения см. на веб-сайте программы автоматической настройки Google.
Создайте новую конфигурацию в консоли автоматической настройки.
Выберите Microsoft Intune из раскрывающегося списка EMM DPC.
В консоли автоматической настройки Google скопируйте и вставьте приведенный ниже JSON в поле дополнений DPC. Замените строку YourEnrollmentToken токеном регистрации, полученным при создании профиля регистрации. Не забудьте заключить токен регистрации в двойные кавычки.
Нажмите Применить.
Регистрация с помощью функции регистрации мобильных устройств Knox
Чтобы использовать функцию регистрации мобильных устройств Samsung Knox, на устройстве должна быть установлена ОС Android 6 или более поздней версии, а также Samsung Knox 2.8 или более поздней версии. См. сведения об автоматической регистрации устройств с помощью функции регистрации мобильных устройств Knox.
Источник
Как сделать корпоративное мобильное приложение единственным на устройстве с помощью Android Management API
Далеко не всегда устройства с операционной системой Android используются как персональный гаджет. Иногда они служат одной конкретной бизнес-цели, и необходимость в предустановленных свойствах девайса отпадает.
В этой статье рассказываем, как мы в Axmor используем несколько простых манипуляций с Android Management API, чтобы заблокировать ненужные функции без root-прав.
Каждый из нас хоть раз в жизни имел дело с корпоративными девайсами:
в случае клиентских приложений они используются для покупки билетов, заказа еды в ресторанах, регистрации гостей и т.д;
При такой эксплуатации часто требуется ограничить устройство одним приложением. Иногда для этих целей используются специализированные компьютеры, но по сути любой планшет или смартфон можно превратить в то, что в документации по Android-разработке называют Dedicated device.
В нашей компании разрабатывается много enterprise-приложений, из-за чего мы часто сталкиваемся с необходимостью блокировки функций на dedicated devices. Например, в нашей практике было приложение для инженеров по безопасности на промышленных предприятиях. Эти специалисты ходят по заводу, следят за исправностью трубопроводов и должны куда-то заносить собранные данные:
Компания-заказчик закупила для этой цели несколько десятков смартфонов на Android и заказала нам приложение со следующими требованиями:
на экране всегда должно присутствовать выбранное приложение без возможности запуска других приложений. Соответственно, должны быть заблокированы кнопки “Назад”, “Домой” и “Последние приложения”;
Часть этого функционала можно реализовать довольно просто, однако на текущий момент устройство без root-прав не позволяет как-либо блокировать взаимодействие со статус-баром и пуш-уведомлениями. Также не удастся ничего сделать с кнопкой “Последние приложения”.
Тут на помощь приходит Android Management API и device policy controller (DPC), которые позволят выполнять настройку корпоративных устройств в кратчайшие сроки и по своему усмотрению блокировать любые функции.
DPC — это приложение, которое может контролировать разрешения других приложений, а также блокировать различные функции устройства. Соответственно, используя кастомный DPC, мы можем в том числе скрывать статус-бар и блокировать системные кнопки на устройстве.
Написание собственного DPC довольно трудозатратно, т.к. включает в себя написание целого приложения, единственная функция которого — ограничивать возможности пользователя при работе с устройством. Кроме того, любые изменения в политике устройства придётся внедрять в коде, что повлечет за собой выпуск новой версии этого приложения.
Чтобы упростить жизнь разработчикам таких решений, Google в 2017 году выпустил свой DPC, который называется Android Device Policy и управляется с помощью Android Management API. Чтобы использовать Android Management API, нужно выполнить несколько шагов:
- Создать сервисный аккаунт. Этот шаг является опциональным и нужен для вызова методов API из кода (с бэкенда или из web-консоли, которую также нужно писать самим), поскольку такие вызовы требуют аутентификации через OAuth.
- Создать организацию (enterprise). Как следует из названия, это ресурс, который представляет собой организацию. Чтобы создать такой ресурс, нужен Gmail-аккаунт, не привязанный ни к какой организации. Enterprise состоит из политик (policies) и устройств (devices).
- Создать политику (policy). Это тот самый набор правил и ограничений, который будет применен к устройству. Когда мы изменяем что-либо в policy, все устройства, к которым она применена, автоматически обновляют своё состояние в соответствии с изменениями без каких-либо дополнительных действий с нашей стороны.
- Зарегистрировать устройство (device). Чтобы применить созданную политику к устройству, нужно создать EnrollmentToken, привязанный к выбранной policy. Затем устройство нужно сбросить к заводским настройкам, т.к. установить DPC в качестве Device owner’а можно только в момент первичной настройки системы. Это работает для устройств с ОС Android 6.0 и выше, подробности можно найти в официальной документации. Самый простой способ передать токен на устройство — сформировать QR-код на его основе. JSON для формирования QR-кода можно получить из поля qrCode у ресурса EnrollmentToken. Чтобы отсканировать QR-код, нужно тапнуть 6 раз в одном и том же месте на первом экране, появившемся после сброса заводских настроек (обычно на нём мы выбираем язык), после чего будет предложено подключиться к интернету и скачать сканер QR-кодов. Если же этот способ не сработал на выбранном устройстве, можно дойти до этапа ввода данных Google-аккаунта и ввести туда afw#setup.
Google предоставляет несколько опций, позволяющих пользоваться Android Management API. Самый простой способ выполнить все эти шаги — пройти интерактивный quickstart guide. Для обращения к API из кода можно использовать одну из библиотек на Java, .NET, Python, или Ruby.
Вернёмся теперь к списку требований для Dedicated device и рассмотрим, как их можно реализовать с помощью policy. Чтобы выбранное приложение всегда присутствовало на экране и запускалось автоматически после перезагрузки, оно должно заменить стандартное Home app. Для этого нужно добавить следующий блок в политику:
Также нужно разрешить приложению запускать lockTaskMode, который позволит нам скрыть кнопки “домой” и “последние приложения”, а также не позволит выйти из приложения с помощью системной кнопки “Назад”:
Чтобы запустить lockTaskMode, просто вызовите в коде основного Activity своего приложения соответствующий метод:
Чтобы скрыть статус бар, нужно добавить в policy
Ну а для того, чтобы экран всегда оставался включенным, нужно просто добавить флаг android:keepScreenOn=»true» в корневую ViewGroup Activity. Итоговый JSON политики будет выглядеть примерно так:
Различные примеры политик можно посмотреть тут. А все возможные параметры для политики — тут.
Есть ещё одна проблема, с которой мы столкнулись при разработке нашего решения. В одном из проектов Axmor заказчику требовался функционал выхода из заблокированного режима, чтобы можно было снова полноценно пользоваться устройством без сброса к заводским настройкам. Это можно сделать через создание двух разных политик — policy_locked и policy_unlocked, и инициируя их смену через backend с устройства. Но дело в том, что с устройства нельзя напрямую получить его внутренний id в Android Management API, а значит — нельзя выполнить никакие операции с ним. До Android 10 можно найти устройство в общем списке по его серийному номеру, который хранится в Device.hardwareInfo.serialNumber, сравнив его с серийным номером, полученным через Build.getSerial() или Build.SERIAL, однако начиная с Android 10, получение серийного номера запрещено для несистемных приложений.
По этой проблеме есть ответ на Stackoverflow от Google. Они советуют использовать managed configurations, фактически — это дополнительные параметры, которые можно передать на устройство, прописав их в policy. Конечно, в таком случае для каждого устройства нужна своя уникальная policy. Для того, чтобы избежать ручного ввода, можно использовать Pub/Sub нотификации, которые позволяют получить уведомление при регистрации нового устройства и сразу же записать в managed configurations его id. Не самый простой способ, но самый правильный. Прописать какой-нибудь уникальный id для устройства вручную при формировании QR-кода не получится, потому что managed configurations устроены таким образом, что записать туда что-либо возможно только после того, как устройство уже зарегистрировано.
Итак, у нас есть policy, способная заблокировать всё и вся на устройстве, кроме нашего избранного приложения. Дело сделано? Не совсем. Наше приложение ещё требуется как-то установить на устройство, а просто так выкладывать в Google Play не очень хочется — ведь мы явно делаем его не для широкой аудитории. Можно, конечно, отправить заказчику apk и попросить поставить приложение вручную, но делать это для каждого устройства довольно утомительно, плюс это нужно будет делать при каждом обновлении приложения.
Решение — использовать Managed Google Play и выложить наше приложение как private app. Для этого нужно сначала загрузить приложение в Google Play, затем зайти в Store Presence -> Pricing & Distribution -> User programs -> Managed Google Play, отметить Turn on advanced managed Google Play features -> Privately target this app to a list of organizations. Здесь нужно выбрать id enterprise, для которой мы регистрируем устройства. Теперь, если в policy для нашего приложения будет прописано поле installType как FORCE_INSTALLED, оно будет установлено автоматически при регистрации устройства.
Несмотря на некоторые недостатки, Android Management API в настоящий момент — самый простой и удобный способ для создания Dedicated device или устройства одного приложения в ОС Android. Большие возможности для кастомизации позволяют делегировать непосредственное выполнение кода для создания ограничений на устройстве готовому DPC, что способно существенно сократить время разработки. Нам на мобильных проектах в Axmor это API позволяет сократить время на выполнение “рутинной” работы по реализации ограничений и уделить больше внимания самому Single App.
Даже не слышал про такую опцию, спасибо за вводную.
Спасибо! Это было полезно.
Привет, я использую приложение Kiosk Mode app управления планшетами своих сотрудников и теперь хочу интегрировать в него свое новое приложение. Очень интересный материал.
Не проверял, чисто теория у меня такое ощущение, что PUB/SUB нотификации можно отправить из самого приложения, через https://developer.android.com/reference/androidx/enterprise/feedback/package-summary оттуда, добыть устройство, и поменять ему полиси на версию с не прикрепленным экраном. Без выделеных policy для каждого устройства. Вопрос в другом, а что делать если интернета в этот момент нет, и нужно как-раз эту проблему решить, открипив экран? Я это решил вызовом интента, для доступа к настройкам устройства, и VPN клиенту, из самого приложения.
Еще вариант полиси с опцией «kioskCustomLauncherEnabled»: true оно всё-же позволяет по желанию приложениям кодом, прикреплятся к экрану (не знаю может это баг). Только работает это странно, после загрузки устройства, через 30 секунд, экран приложения открепляется сам! И выпадает на рабочий стол(кастомный ланчер), так-же экран открепляется при смене локали устройства (а у меня кстати задача менять локаль устройства, из настроек на сервере. Кстати Management API менять локаль не позволяет, покрайней мере полиси я не нашел, а вот было бы круто). Хотя потом можно снова запустить приложение и оно прикрепит экран.
Еще вопрос, а что делать, если я после установки Single APP приложения, хочу зарегистрировать аккаунт, сразу для него. Хорошо есть Pub/Sub нотификации, в конце установки. Затем можно задать этот аккаунт в приложение, через managed configurations.
Но блин, вся прелесть полиси, в том что изменив один раз policy, мы получаем эффект на всех устройствах с этим полиси (например установить новое приложение на все устройства), и это ломается, т.к. идентификатор управляемой конфигурации или сама конфигурация, задаётся в Policy. А вот аккаунт желательно б иметь на каждом устройстве свой. ред.
Источник