Управління корпоративними iOS-пристроями за допомогою OS X Server, а також розповсюдження програм в межах компанії



Рано чи пізно в добрій частині великих компаній виникає питання розробки внутрішнього корпоративного мобільного додатку. У зв'язку з цим, перед IT-фахівцями постає завдання опрацювання двох сценаріїв: коли потрібно встановити програми на особисті пристрої співробітників і коли потрібно роздати пристрої, що є власністю компанії, для виконання співробітниками конкретних завдань. В рамках даної статті розглядається робота з iOS-пристроями через OS X Server.


Введення



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


Постановка завдання



Отже, давайте визначимося з завданнями, які перед нами поставила компанія (або замовник).

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


Лікнеп



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

Тепер Давайте поглянемо на питання поширення корпоративних мобільних додатків трохи ширше і не тільки очима Apple. Сьогодні на ринку є три великих гравці — це Google, Apple і Microsoft.
Отже, як бачить поширення додатків в обхід магазину кожна з цих технологічних компаній.

Google
Тут все просто. Android відкрита операційна система. Формуй пакет програми (*.апк) і далі роби з ним все, що хочеш. Все що потрібно — це сплатити разовий внесок в Google Play Developer Program.

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

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

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

Тепер перейдемо до моделі управління iOS пристроями. Якщо ви раніше користувалися iPhone або iPad, то напевно чули про таку штуку як Профіль. Ні, не той профіль користувача з SharePoint, а профіль, який описує повноваження пристрою. Наприклад, доступ до Бета-версії 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-розробникам. Успіхів!

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.