Рано или поздно в доброй части крупных компаний возникает вопрос разработки внутреннего корпоративного мобильного приложения. В связи с этим, перед IT-специалистами встает задача проработки двух сценариев: когда нужно установить приложения на личные устройства сотрудников и когда нужно раздать устройства, являющиеся собственностью компании, для выполнения сотрудниками конкретных задач. В рамках данной статьи рассматривается работа с iOS-устройствами через OS X Server.


Введение



Сегодня при желании можно легко найти информацию по настройке OS X Server, MDM-решений и т.п. на английском языке, и в целом конфигурирование не представляет какую-то сложность. Данная статья адресована людям в русскоязычном сегменте, впервые столкнувшимся с данной задачей и желающим понять, что их ждет и насколько все сложно и страшно.
Излагаемый материал был составлен как краткое руководство к действию и за ненадобностью направлялся прямиком в Корзину, но перед тем как нажать «Очистить корзину», я подумал, что, возможно, он будет полезен кому-то еще, кто не знаком с этой темой.
Поэтому, отдельную категорию комментаторов прошу быть снисходительными
image


Постановка задачи



Итак, давайте определимся с задачами, которые перед нами поставила компания (или заказчик).

У нас есть два независимых вектора развития мобильного направления:
  • Корпоративное мобильное приложение для сотрудников компании, которое они устанавливают на личные устройства, в нашем случае на iOS-девайсы. К примеру, основной функционал — это чтение новостей и календарь мероприятий;
  • Узкоспециализированное мобильное приложение для отдельных категорий сотрудников, например, социологов, которые делают опросы, скажем, на улице. Им выдаются iOS-устройства специально для этих задач, и руководство, конечно, надеясь на сознательность этих людей, тем не менее, хочет исключить саму возможность нецелевого использования, как рабочего времени, так и устройств. Проще говоря, нужно запретить делать все: слушать музыку, пользоваться интернетом, устанавливать игры из магазина приложений и т.п., оставить только возможность пользоваться приложением для проведения соц. опросов;


Ликбез



Несмотря на то, что эти два направления отличаются, у них есть что-то общее, а именно — распространение приложений внутри компании, т.е. по программе Apple Developer Enterprise Program. Для неподготовленного разработчика может показаться, что это просто регистрация компании-разработчика как юридического лица, с какими-то Enterprise примочками. К сожалению, дословно суть программы звучит так «The Apple AppStore: no place to distribute enterprise apps», т.е. вступая в эту программу вы приобретаете возможность распространять iOS-приложения в обход AppStore, но теряете возможность публиковать в официальный AppStore.

Давайте теперь взглянем на вопрос распространения корпоративных мобильных приложений несколько шире и не только глазами Apple. Сегодня на рынке есть три крупных игрока — это Google, Apple и Microsoft.
Итак, как видит распространение приложений в обход магазина каждая из этих технологических компаний.

Google
Тут все просто. Android открытая операционная система. Формируй пакет приложения (*.apk) и далее делай с ним все, что хочешь. Все что нужно — это заплатить разовый взнос в Google Play Developer Program.

Microsoft
Две программы. Для публикации в официальный магазин — небольшой разовый взнос. Для публикации в обход магазина, вы должны раз в год покупать специальный сертификат — Enterprise Mobile Code Signing, которым подписываются ваши приложения. Он, грубо говоря, как пропуск для приложения в гараж приложений смартфона — «Я VIP, мне можно устанавливаться с черного хода».

Apple
Купертиновцы, в свою очередь, видят подход к разработке мобильных приложений следующим образом.
Для публикации в официальный магазин AppStore существует Apple Developer Program в которой могут участвовать как физические, так и юридические лица, цена одна и та же. Если у вас есть потребность в публикации приложений внутри компании, т.е. не для всех, то Apple предоставляет программу Apple Developer Enterprise Program, правда в ней вы уже не сможете публиковать приложения в AppStore.
Но что, если вам нужно публиковать приложения по обоим сценариям? Или пока нет возможности зарегистрировать юридическое лицо, вы только начали делать прототип и можете зарегистрировать физическое лицо, т.е. одного разработчика.
На этот случай в классической Apple Developer Program предусмотрена возможность заливать приложения напрямую на 100 устройств различных типов (iPhone, iPad), зарегистрированных в консоли разработчика. По научному это называется AdHoc, т.е. распространение с целью тестирования.
Как ни странно, эта штука часто решает целый пласт проблем на начальных этапах и о ней мы и поговорим в рамках данной статьи.

Отлично, у нас есть прототип мобильного приложения, есть учетная запись разработчика в Apple Developer Program и огромное желание решить задачу.

Теперь перейдем к модели управления iOS устройствами. Если вы раньше пользовались iPhone или iPad, то наверняка слышали о такой штуке как Профиль. Нет, не тот профиль пользователя из SharePoint, а профиль, описывающий полномочия устройства. Например, доступ к Beta-версиям iOS. Именно, на этой штуке все и крутится в мире Apple: установка приложений, ограничение возможностей устройства, конфигурирование устройств и т.п. И как вы наверно уже поняли, мы будем этими профилями рулить. С кем-то добровольно, с кем-то принудительно.


Apple Configurator 2



Для распространения iOS-приложений в корпоративной среде необходимы два инструмента (из AppStore):

Оба инструмента могут управлять профилями, но только профили, установленные Apple Configurator 2 пользователь не сможет удалить самовольно.
Т.е. все под контролем, а именно так


OS X Server, а вернее Profile Manager, входящий в его состав, необходим для удаленного конфигурирования профилей, т.к. Apple Configurator 2 работает только «по шнурку».

Таким образом, чтобы вы четко поняли схему: посредством профилей (по сути — конфигурационного файла, который летает туда-сюда) осуществляется удаленная установка приложений и конфигурирование устройств. Apple Configurator 2 позволяет гарантировать, что профиль, установленный с его помощью, не будет удален пользователем, а Profile Manager в OS X Server позволяет конфигурировать установленные профили удаленно. В первом приближении картинка такая.

Теперь, когда вы собрали мысли в кучку, осталось добавить еще пару недостающих элементов в пазл. Помимо профилей, существует еще одно звено механизма, называемое Supervising, которое предоставляет Apple Configurator 2. Оно заключается в сбросе устройства к заводским настройкам, жесткое конфигурирование на использование вашего Profile Manager, и запрет на хард-ресет устройства. Также в нем поддерживается функция снятия образов памяти, проще говоря, бекапов.

И последнее, думаю вы уже подумали, а как же тогда обычным сотрудникам получить корпоративные приложения без всех этих страшных сбросов и конфигурировании? Для них в рамках Profile Manager предоставляется веб-сайт, по умолчанию называющийся «MyDevices», с которого они могут скачать профиль, настраивающий автоматически устанавливающий нужные приложения на их смартфон. Да, вот так все просто с рядовыми сотрудниками.

Хорошо, вернемся к Apple Configurator 2.
Так он выглядит в AppStore


Еще раз перечислим его основные возможности:

  • Сброс iOS-устройства к заводским настройкам;
  • Создание профилей устройства;
  • Создание Blueprint образов;
  • Установка iOS-устройства в Supervised-режим, который позволяет контролировать устройство (сбрасывать и т.п.) только с этого компьютера;
  • Создание бэкапов iOS-устройств;

В этом списке появилось новое слово Blueprint, и мы до сих пор не поняли, какие именно ограничения мы можем задавать через Профили. Давайте поговорим об этом.


Профили в Apple Configurator 2



Профили служат для установки на устройство требуемых параметров и ограничений.

Например, можно в одном профиле установить:
  • Настройки для подключения к WiFi;
  • Ограничения на использование мультимедийных возможностей устройства;
  • Запрет на установку приложений из AppStore;
  • Фильтр на доступные веб-сайты, либо запретить использование браузера Safari;

На одном устройстве может быть установлено несколько профилей.

Список доступных настроек через профиль
Общая информация об устройстве


Пароль на экране брокировки


Ограничения на функциональность устройства




Ограничения на использование приложений


Ограничения на использование медиа-контента


Настройки глобального прокси-сервера


Список разрешенных сайтов


Политика в отношении доменов


Доступ к WiFi точкам


Настройки VPN


Настройки AirPlay


Настройки AirPrint


Настройки учетных записей электронной почты


Настройки Exchange ActiveSync


Настройки LDAP


Синхронизация календарей


Синхронизация контактов


Подписка на календари


Иконки быстрого перехода на веб-сайт


Шрифты


Сертификаты


Настройка SCEP-сервера


Настройки APN-точек для 3G






Blueprints в Apple Configurator 2



Blueprints — это быстрые «образы» желаемых настроек и приложений, которые можно применить к подключенному устройству в один клик.

Работа с Blueprints
Создание Blueprint





Выбор типа устройства



Добавление нужных корпоративных приложений в образ



Добавить *.ipa -пакет приложения



Добавление профилей



Хорошо, надеюсь вы получили общее представление о базовых средствах конфигурирования iOS-устройств. Самое время перейти к более продвинутым, и соответственно, платным инструментам.


Apple OS X Server



OS X Server — это приложение, до 2014 года предустановливаемое на топовые версии компьютеров Apple Mac mini. В настоящее время распространяется как отдельное приложение через AppStore и доступно для установки на любые компьютеры Apple.
Представляет из себя набор служб для обслуживания парка Apple устройств, а также удаленного управления iOS- и OSX- устройствами.
Так он выглядит в AppStore


Основные возможности:

  • Администрирование пользователей в рамках Open Directory (возможна интеграция с Active Directory);
  • Синхронизация календарей;
  • Синхронизация контактов;
  • Обмен файлами (File Sharing);
  • Почтовый сервер;
  • Групповые чаты пользователей;
  • Менеджер профилей для удаленного управления iOS и OSX устройствами;
  • Сервер TimeMachine (бекапы);
  • VPN;
  • Хостинг веб-сайтов на PHP и Python;
  • CMS Wiki;
  • Сервер XCode для непрерывной интеграции;
  • DHCP сервер;
  • DNS сервер;
  • FTP сервер;


Синхронизация OS X Server с Active Directory



Конечно, я не мог пройти мимо Active Directory, так как мы работаем в корпоративном сегменте, и, как минимум, пару слов я обязан сказать на эту тему. Подобно Microsoft, Apple работает со своей службой каталогов — Open Directory, которая концептуально не отличается от Active Directory.
Для интеграции с Active Directory используется механизм «связывания» (Binding). Настраивается он достаточно просто, однако, не отличается железной стабильностью (на разных комбинациях версий Windows Server и OS X Server разный результат, т.е. можете потерять связь).

Настройка синхронизации с Active Directory

















Прекрасно, теперь вы в курсе всех основных терминов и принципов. Можем приступать к настройке механизмов распространения приложений внутри компании и конфигурирования iOS-устройств.


Алгоритм действий для настройки инфраструктуры конфигурирования iOS-устройств и распространения приложений



1. Устанавливаем Apple Configurator 2 из AppStore.

2. Устанавливаем Apple OS X Server из AppStore.

3. Создаем профиль с настройками WiFi для iOS-устройства через Apple Configurator 2, если сотрудники должны пользоваться определенной закрытой корпоративной сетью, к которой мы не хотим давать им пароль.
Подробнее


Указываем пароль, который нужно ввести, чтобы удалить профиль. Это один из возможных вариантов. Можем вообще запретить удаление.








4. Перейдем к настройке OS X Server. Зададим имя хоста, доступность из сетей и параметры удаленного доступа. Это начальное конфигурирование нашего сервера.
Подробнее













5. Настроим Open Directory в OS X Server, чтобы далее хранить в ней пользователей.
Подробнее







6. Создадим пользователей в OS X Server, или синхронизируем сервер с Active Directory. Нам потребуется еще один администратор и простой пользователь (он же — сотрудник).
Подробнее









7. Создадим группы пользователей (по бригадам/отделам/подразделениям) и распределим пользователей по этим группам в OS X Server. Это понадобится нам для конфигурирования групп устройств.
Подробнее













8. Включим Apple Push Notifications в OS X Server.
Подробнее
Включение Apple Push Notifications необходимо для управления устройствами через интернет, так как через push-уведомления доставляются команды от OS X сервера.



Здесь нам уже понадобится учетная запись нашего разработчика, с активной Apple Developer Program.






9. Настроим синхронизацию контактов в OS X Server. Это опционально, если вы не планируете вести общий список контактов между сотрудниками.
Подробнее





10. Теперь самое интересное. Настроим менеджер профилей в OS X Server.
Подробнее

Сервер управления мобильными устройствами


Profile Manager позволяет централизованно администрировать и управлять зарегистрированными мобильными устройствами, работающими под OS X 10.7 и выше или iOS 4 и выше.

Следует отметить, что Apple предоставляет управление API своих устройств сторонним разработчикам MDM-решений, чтобы использовать их опыт.

Как правило эти системы управления мобильными устройствами (MDM — Mobile Device Management) имеют больше возможностей для настройки.
Для осуществления инициируемой со стороны сервера загрузки настроек, программного обеспечения понадобится push-сервис. Push сервер является частью OS X Server (иногда push-сервис реализуется как часть MDM-решения, в этом случае push-сервис от Apple не нужен). Push сервер будет выполнять функции по загрузке команд, связанных с конфигурацией или установкой ПО мобильных устройств, взаимодействуя с магазином приложений компании Apple. Это обеспечивает выполнение срочных действий, таких как блокировка похищенных устройств или удаление информации с них.

Если планируется управление только устройствами Apple, а какие-либо специальные требования отсутствуют, то Profile Manager — оптимальное решение по соотношению стоимость/функциональность. В этом случае для централизованной загрузки настроек корпоративного ПО следует использовать Apple Push Server. А возможность установки политик на устройства, подключенные даже за периметром корпоративной сети, обеспечит Apple Push Notification Service (APNS).

Алгоритм настройки менеджера профилей























11. Через Profile Manager в OS X Server включим возможность привязывать iOS-устройства, настроенные в Apple Configurator 2.
Подробнее









12. Через Profile Manager в OS X Server зададим пользователю (лучше группе пользователей) ограничения к его iOS-устройству.
Подробнее



















13. Пришло время поработать с физическим устройством. Переведем iOS-устройство в Supervised-режим через Apple Configurator 2 с принятием настроек от удаленного MDM-сервера (Mobile Device Management), которым является OS X Server.
Подробнее




















После перезагрузки (до принятия приветствия) iOS-устройства через Apple Configurator 2 загрузим в него созданный ранее профиль с настройками WiFi и описанием принадлежности.









Принять приветствие на iOS-устройстве, переведенном в Supervised-режим, и залогиниться под нужным пользователем, созданным в OS X Server.


















14. Добавим все iOS-устройства в учетную запись Apple-разработчика.
Подробнее
Для добавления iOS-устройства к учетной записи разработчика нам необходимо получить его уникальный номер — UDID. Его можно получить тремя способами:
  • Увидеть через iTunes;
  • Увидеть через Apple Configurator 2;
  • Запросить программно, через установку профиля;

Мы воспользуемся вторым вариантом, так как в данным момент работаем с Apple Configurator 2.




















15. Подготовим корпоративное приложение в XCode для распространения внутри компании в XCode (Archive).
Подробнее




Публиковать приложение в AppStore мы не собираемся, поэтому нажимаем Export…














16. Загрузим *.ipa -пакет приложения в Profile Manager в OS X Server.
Подробнее






В данном окне вы видим список корпоративных приложений, доступных для распространения.




17. В Profile Manager в OS X Server укажем для нужного пользователя (лучше группы пользователей) — какие корпоративные приложения установить на его устройство. Сделаем Push приложений (начнем удаленную установку).
Подробнее
Так выглядит iOS-устройство до назначения приложений пользователю.





Добавим приложения пользователям.





Видим статус применения настроек / установки приложений.



«Внезапно» началась установка корпоративных приложений на устройство. Пользователь не предпринимает никаких действий.



Установка приложений завершена.




Настройка инфрастуктуры завершена.


Распространение приложений среди сотрудников с личными iOS-устройствами



Алгоритм действий сотрудника
Все что нужно сотруднику, это:
  1. Зайти на сайт сервера;
    http://os-x-server.com/mydevices
  2. Авторизоваться с учетной записью, созданной на OS X Server. Либо, если предусмотрены общие приложения для всех — авторизация не трубется;
  3. Нажать Enroll My Device. iOS-устройство отобразится в Profile Manager;
  4. После этого начнется установка доступных пользователю приложений.

К сожалению, у меня не сохранились скриншоты этого процесса, ввиду его простоты, но суть вы можете уловить из этого видео (начинается с нужного момента). По научному это называется «портал самообслуживания». Почти как в заводской столовой.


Послесловие



Концептуальное описание OS X Server на русском языке, хоть и немного устаревшее, советую почитать здесь.

Актуальные видео по настройке отдельных компонентов OS X Server можно посмотреть здесь.

Примечание
Описанный в статье метод распространения применим для любых приложений созданных для iOS, т.е. он идентичен для приложений, написанных на Xamarin, Cordova или нативно. Все что вам нужно — это сформировать пакет приложения *.ipa и загрузить его в Profile Manager.

Надеюсь, статья покажется полезной начинающим, или не очень, iOS-разработчикам. Успехов!

Комментарии (21)


  1. navion
    25.02.2016 16:49

    Не поделитесь ссылками на ресурсы по централизованному управлению iOS? Знаю про Enterprise iOS, но может быть есть ещё что-то достойное?


  1. Zanael
    25.02.2016 17:09

    Если я правильно понял, то вас интересуют аналоги. К сожалению, цена может Вас вашу компанию испугать.

    • Есть решение от Microsoft в лице System Center Configuration Manager, почитать можно тут и здесь. Включает также cloud-версию Windows Intune.
    • Есть решение от SAP в лице SAP Afaria, которая входит в портфель SAP Mobile Secure, почитать можно здесь. Аналогично две модели: OnPremise и Cloud.

    Субъективно, если компания крупная, то в любом случае у нее куплено что-то от SAP. Также, если речь о корпоративных мобильных приложениях, то симпатично выглядит Xamarin, для которого у SAP выпущен официальный SDK.
    Если нужно чуть больше подробностей по SAP, могу найти документ, у меня там кратко, но содержательно было описано про Afaria.


    1. navion
      25.02.2016 17:11

      Меня интересуют ресурсы по управлению мобильными устройствами, желательно "в общем" без особой завязки на какой-то конкретный MDM.


      1. Zanael
        25.02.2016 17:16

        Из личного опыта, к сожалению, такое вряд ли есть. Каждый вендор старается выстроить свою большую систему.
        Единственное, что открыто и унифицировано — это протокол MDM, но вам он вряд ли будет интересен. К моему сожалению, у меня нет на примете такого материала или ссылок.


      1. srs2k
        25.02.2016 17:54

        Есть Cisco Meraki MDM.


        1. Rathil
          25.02.2016 19:40

          Не Циско единым :)


      1. tegrato
        26.02.2016 13:08
        -1

  1. Goodkat
    25.02.2016 18:22

    15. Подготовим корпоративное приложение в XCode для распространения внутри компании в XCode (Archive).
    Без корпоративного аккаунта, с обычным девелоперским тоже сработает?

    Можно удалённо устанавливать приложения из App Store?
    Удалённо устанавливать профили? Например, поменять пароль на вайфай.
    Менять настройку аккаунтов в App Store и iCloud?

    У меня не компания, у меня семья с айфонами-айпадами, поэтому MDM-сервер и корпоративную лицензию покупать не с руки, а облачным бесплатным я как-то не доверяю.


    1. Zanael
      25.02.2016 21:52
      +1

      Спасибо за хорошие вопросы.

      Без корпоративного аккаунта, с обычным девелоперским тоже сработает?

      Да, речь идет об обычной учетной записи разработчика. Вы можете добавить по 100 устройств каждого типа (100 iPhone, 100 iPad и т.д.), и только на них приложения можно будет установить в обход AppStore, эта опция называется AdHoc.
      Далее в учетной записи на сайте Apple создаете/обновляете Provisioning Profile, где указываете, какие приложения каким устройствам доступны. Т.е. для приложения Hello World я создаю сертификат, в нем ставлю галочки, что использую модель AdHoc и ставлю галочки напротив нужных девайсов. Обычно XCode делает это автоматически при создании нового проекта приложения.
      Если актуально, могу дополнить статью с описанием как это сделать.

      Можно удалённо устанавливать приложения из App Store?

      Для этого вам нужно вступить в программу Volume Purchase Program (VPP). Версии Business и Education. Суть, как видно из названия, в "оптовой" покупке копий приложения. Обычно VPP for Education популярна во всяких крутых американских колледаж для музыкантов, где студентам раздают MacBook с предустановленным профессиональным ПО.

      Удалённо устанавливать профили? Например, поменять пароль на вайфай.

      Краткий ответ — да. Если точнее — то изменять настройки, ограничения, пароли в уже подконтрольном устройстве. Новый профиль не добавляется, а только редактируется удаленно. Полный перечень того, что можно менять (с картинками) перечислен в пункте "Профили в Apple Configurator 2". Тот же перечень доступен и в Profile Manager.

      Менять настройку аккаунтов в App Store и iCloud?

      Вы можете вступить VPP для того, чтобы устанавливать приложения из AppStore пользователям. Либо ограничить им доступ в AppStore со своей учетной записью и запретить использование iCloud.

      У меня не компания, у меня семья с айфонами-айпадами, поэтому MDM-сервер и корпоративную лицензию покупать не с руки, а облачным бесплатным я как-то не доверяю.

      Для таких целей Apple предусмотрела бесплатный Apple Configurator 2 с тем же функционалом, для которого учетная запись разработчика не нужна (если вы не будете распространять свои приложения). Единственный минус, да, это не сервер, и все настраивается "по шнурку" для каждого девайса. Обычно это популярно в "школьных классах", где студентам по группам раздают iPad, предварительно настроенные в начале года единственным администратором. Он задает ограничения, зашивает пароль от WiFi, и устанавливает приложения по VPP. MDM-cервер, как правило, в таких случаях не используют.


      1. navion
        25.02.2016 21:57

        В последнем случае можно и без шнурка — отдавать профиль веб-сервером. По крайней мере так работает контроллер Wi-Fi, когда регистрируешь устройство в сети.


        1. Zanael
          25.02.2016 22:11

          К слову, да. Хорошо, что упомянули. Профили (ограниченные) можно кидать и на почту. Это простые конфигурационные файлы с расширением ".mobileconfig" с xml-структурой. Через них можно задавать самые базовые настройки, в том числе и WiFi. Подробнее о списке возможных настроек можно почитать тут, и тут. Правда обычно они используются несколько для других целей, например, удаленно узнать UDID устройства пользователя. На эту тему у меня будет статья на следующей неделе. Сбрасываю накопившийся материал.
          Единственный минус этих ".mobileconfig" в том, что они передаются в открытом виде. Т.е. любой может взять их и открыть как простой xml-файл.


  1. tegrato
    26.02.2016 13:27

    Вопрос: почему данный материал побывал в корзине? Это была "тренировка на кошках" или просто оказалось невостребованным по каким-то причинам?

    Замечания/дополнения:

    1. Blueprint – это просто макрос, который типа того упрощает настройку устройств. Но по факту, он не очень удобен и, бывает, тупит, особенно, если добавить действие "Установка приложений".

    2. Для APNS можно использовать абсолютно любую учетную запись Apple ID.

    3. Пароли на профили, созданные с помощью Profile Manager не спасают их от удаления. Почему-то...

    4. Программа VPP пока не доступна для России, но, вроде как, в 2016 году станет доступной. Ждем.
      VPP можно использовать, если есть компания за границей (США, Германия, Англия и др..). Регистрируешься в VPP от ее имени, предоставив все данные (DUNS, VAT и др.), и можно пользоваться.
      Но при использовании VPP есть некоторые проблемы — при обновлении какого-либо приложения (установленного в девайс через VPP) в AppStore, это приложение автоматически пытается обновиться, у него не получается в 99,999999999% случаев, и программа после этого становится не работоспособной. Как это пофиксить — пока не знаю.

    5. Кроме VPP через MDM (Profile Manager) можно устанавливать и обычные приложения, скаченные из AppStore.
      У вас еще старая картинка в Profile Manager (где добавляете приложения), сейчас немного по-другому.
      Можно добавить ipa-файл(ы) в Profile Manager, и эти программы можно будет устанавливать на устройства. При первом запуске нужно будет ввести AppleID и пароль — под которыми данная программа была скачена (куплена).

    P.S. Есть еще много моментов, которые не понятны/не логичны/кривые.


    1. Zanael
      26.02.2016 14:10

      Спасибо за дополнения.

      почему данный материал побывал в корзине? Это была «тренировка на кошках» или просто оказалось невостребованным по каким-то причинам?

      Она свою задачу выполнила и больше не нужна участникам процесса, поэтому решил ею поделится, не более того.

      1. Blueprint – это просто макрос, который типа того упрощает настройку устройств.

      Возможно, термин макрос лучше отражает его суть, давно не пользовался этим словом, поэтому сразу не пришло в голову. Хотя, мне казалось, что описание раскрывает его значение.

      2. Для APNS можно использовать абсолютно любую учетную запись Apple ID.

      Допускаю, давно не проверял на обычных учетных записях Apple ID. Спасибо за уточнение.

      3. Пароли на профили, созданные с помощью Profile Manager не спасают их от удаления. Почему-то...

      Совершенно верно. Именно для этого и нужен Apple Configurator 2. Profile manager — это "добровольная" настройка вашего iPhone. Вы в праве устанавливать и удалять любые профили, установленные через Profile manager. Логика простая — вы даете согласие на удаленное конфигурирование вашего устройства, но если вам надоело, хотите вернуть устройство в исходное состояние — просто удаляете профиль. Задание пароля в этом случае не поможет от удаления профиля. Возможно, это сделано чтобы профили от Apple Configurator 2 и Profile manager визуально не отличались, а может досадный баг. Но я склоняюсь к первому варианту.
      Таким образом, все самые важные настройки зашиваются через Apple Configurator 2. Пользователи не смогут удалить профиль, установленный с его помощью.

      4. Программа VPP пока не доступна для России, но, вроде как, в 2016 году станет доступной

      К сожалению, по моему субъективному мнению, это не популярно и в среднесрочной перспективе не будет популярно в России. Но, это мое личное мнение. За описание подводных камней, также спасибо.

      5. Кроме VPP через MDM (Profile Manager) можно устанавливать и обычные приложения, скаченные из AppStore.
      У вас еще старая картинка в Profile Manager (где добавляете приложения), сейчас немного по-другому.
      Можно добавить ipa-файл(ы) в Profile Manager, и эти программы можно будет устанавливать на устройства. При первом запуске нужно будет ввести AppleID и пароль — под которыми данная программа была скачена (куплена).

      В статье версия OS X Server образца декабря 2015 года под El Capitan. Можете пояснить в чем визуальные отличия? Или приложения, скачанные через iTunes, добавляются также через "Add Enterprise App", а затем при запуске на устройстве запрашивают Apple ID покупателя?
      Странное решение для корпоративного использования, хотя, вероятно, для отдельной категории пользователей полезно.


  1. tegrato
    26.02.2016 14:30

    Сейчас раздел Apps в Profile Manager выглядит так:

    image
    Причем купленные через VPP приложения автоматически отображаются в списке (VPP-аккаунт с помощью токена предварительно должен быть добавлен через OSX Server -> Profile Manager).
    А Enterprise приложения (купленные в AppStore) добавляются с помощью кнопки "+" в виде ipa-файлов.


    1. Zanael
      26.02.2016 14:36

      Спасибо, что сделали скриншот. Интересно. Возможно, следует обновиться.


  1. tegrato
    26.02.2016 15:04

    Сравнивая различные MDM-системы (http://enterpriseios.com/wiki/Comparison_MDM_Providers), в двух словах можно сказать следующее:

    Apple Profile Manager — самый дешевый, но, как показывает практика, самый глючный вариант.
    Хороших пошаговых мануалов нет и техподдержка, можно сказать, отсутствует.
    Все остальные — платные. Какая-то дороже, какая-то система дешевле, мануалы более-менее человеческие и техподдержка, как минимум, отвечает на запросы.

    Из самых свежих глюков Apple — устройства "отваливаются" от сервера, после чего пуши до них не доходят, так и висят вечно в очереди заданий.
    Переустановка профиля развертывания (Enrollment Profile) не помогает. Вариант — полный снос через конфигуратор и настройка заново.


    1. Zanael
      26.02.2016 15:16

      Касательно пушей, к сожалению, могу только подтвердить. Это, пожалуй, самое слабое место в системе, и самое болезненное.


      1. Adnako
        28.02.2016 15:34

        Можно свой enterprise push service установить?


        1. Zanael
          28.02.2016 15:55

          Насколько мне известно, в рамках OS X Server это сделать невозможно. В нем в принципе не так много параметров, доступных для настройки.


          1. tegrato
            29.02.2016 08:58

            В нем только возможность ввода Apple ID для пушей.
            В процессе сохранения нужно ввести еще и пароль.
            Все остальное связывается автоматически и как-бы работает.
            Кстати, сторонние MDM-системы используют стандартные учетки для пушей, APNS — один для всех общий.


            1. Adnako
              29.02.2016 11:12

              Zanael, tegrato — спасибо.