Налаштування MDM для адміністраторів
RedirectWeb підтримує технологію Apple Managed App Configuration, що дозволяє вам (ІТ-адміністраторам) централізовано розгортати та керувати налаштуваннями програми на пристроях співробітників або студентів за допомогою рішень для керування мобільними пристроями (MDM), таких як Jamf, Intune, Kandji тощо.
Ця сторінка описує ключі конфігурації, поведінку програми, найкращі практики та обмеження.
Огляд
Застосовуючи конфігурації через MDM, ви можете досягти наступного:
- Примусові правила: Застосовуйте правила перенаправлення на рівні всієї організації, які користувачі не можуть змінювати або видаляти.
- Початковий розподіл правил: Розповсюджуйте набір правил за замовчуванням, який буде встановлено при першому запуску програми.
- Керування інтерфейсом користувача: Обмежуйте доступ до певних функцій (наприклад, Бібліотеки) та чітко вказуйте в програмі, що вона перебуває під керуванням організації.
- Отримання великих наборів правил (Резервний варіант): Обходьте обмеження MDM на розмір корисного навантаження, отримуючи правила з зовнішнього сервера.
Варіанти використання
- Безперебійна маршрутизація під час міграції систем:
Під час міграції зі застарілої внутрішньої системи (наприклад,
legacy-crm.internal.local) на нову платформу (наприклад,salesforce.com), розповсюдьтеenforcedRuleSet. Навіть якщо співробітники використовують старі закладки, вони будуть автоматично перенаправлені на нову систему, що усуває потребу в зверненнях до ІТ-підтримки щодо неробочих посилань. - Допомога в доступі до інтрамережі: Розповсюджуйте правила перенаправлення за допомогою власних URL-схем, щоб полегшити доступ до ресурсів інтрамережі через VPN-тунелі для окремих програм, наприклад Omnissa Web.
Оновлення конфігурації MDM застосовуються негайно лише якщо користувач відкриває програму RedirectWeb. Хоча програма використовує фонові завдання для непомітного передавання оновлень MDM у розширення браузера, це виконується за принципом «найкращих зусиль» (best-effort) під керуванням ОС. Час виконання є непередбачуваним, і завдання може взагалі не запуститися. Тому на цю функцію не варто покладатися для критично важливого реагування на інциденти (наприклад, спроби миттєво перенаправити всіх співробітників на резервний сайт протягом декількох хвилин після збою хмарного сервісу).
Демонстрація
Файл plist, використаний у відео, доступний тут: sample-mdm.plist
У відео для розгортання конфігурації використовувався MDM ManageEngine, але ту саму конфігурацію можна використовувати для інших MDM-рішень, якщо вони підтримують Apple Managed App Configuration.
Ключі конфігурації
Розгорніть наступні ключі та значення для Managed App Configuration через консоль MDM, зазвичай у форматі plist.
| Назва ключа | Тип | Опис |
|---|---|---|
enforcedRuleSet | Набір правил | [Примусові правила] Набір правил, що застосовується з вищим пріоритетом, ніж звичайні правила. Перше правило в списку має пріоритет. Користувачі не можуть редагувати, видаляти або змінювати порядок цих правил. Вони завжди активні, ігнорують глобальний вимикач програми та не синхронізуються через iCloud. |
prefilledRuleSet | Набір правил | [Початкові правила] Набір правил, що створюється замість стандартного прикладу, коли користувач запускає програму вперше без наявних правил. Після розповсюдження вони діють як звичайні правила, дозволяючи користувачеві змінювати, видаляти їх та синхронізувати через iCloud. |
organizationName | String | Відображає "Керується [organizationName]" у верхній частині екрана налаштувань програми, вказуючи користувачеві, що програма керована. |
managedConfigVersion | String | Довільний рядок версії для конфігурації. Відображається в інтерфейсі, дозволяючи ІТ-підтримці під час усунення несправностей перевірити, чи отримав пристрій останнє корисне навантаження MDM. |
showsLibrarySection | Boolean | Якщо встановлено значення false, функція Бібліотеки правил приховується, а розділ замінюється повідомленням про помилку "Обмежено вашою організацією". |
fallback | Fallback | Вкажіть це, коли конфігурація перевищує обмеження корисного навантаження MDM. Програма завантажуватиме JSON/XML за цим URL для застосування конфігурації. |
Усі ці ключі є необов'язковими.
[Об'єкт] Набір правил
Кожен об'єкт правила має той самий формат, що й той, який ви можете поширити/експортувати через програму, але вам потрібно конвертувати його з JSON у plist, ось так:
...
<key>enforcedRuleSet</key>
<dict>
<key>kind</key>
<string>RedirectList</string>
<key>bundleID</key>
<string>io.github.mshibanami.RedirectWebForSafari</string>
<key>formatVersion</key>
<string>5</string>
<key>redirects</key>
<array>
<dict>
<key>kind</key>
<string>Redirect</string>
<key>type</key>
<string>originalRedirect</string>
<key>title</key>
<string>My enforced Rule</string>
<key>sourceURLPattern</key>
<dict>
<key>type</key>
<string>wildcard</string>
<key>value</key>
<string>https://example.com/1</string>
</dict>
<key>destinationURLPattern</key>
<string>https://google.com/search?q=1</string>
</dict>
</array>
</dict>
...
[Об'єкт] Fallback
| Назва ключа | Тип | Опис |
|---|---|---|
fallbackDataURL | String (URL) | URL-адреса кінцевої точки файлу JSON/XML, що містить набори правил. |
authToken | String | Токен автентифікації, що додається до заголовка HTTP під час завантаження з fallbackDataURL. (Використовується як Authorization: Bearer [authToken]). |
Оцінка правил та вирішення конфліктів
- Якщо надано
enforcedRuleSet, його правила застосовуються з абсолютним пріоритетом. - Якщо звичайних правил немає, але існує
prefilledRuleSet,prefilledRuleSetзберігається як звичайні правила. - Стандартне «Приклад правила перенаправлення» створюється лише у випадку, якщо не налаштовано правил MDM і немає звичайних правил.
Поведінка резервного URL (Fallback)
Якщо ключ існує і у вбудованому корисному навантаженні MDM, і в даних, отриманих через fallbackDataURL, програма вирішує конфлікт наступним чином:
- До завершення завантаження: Вбудовані налаштування мають суворий пріоритет і використовуються.
- Після успішного завантаження: Дані, отримані з
fallbackDataURL, перезаписують відповідні вбудовані налаштування. - Після невдалого завантаження: Програма продовжує використовувати вбудовані налаштування.
- Незалежні ключі, які існують лише у вбудованому навантаженні, зберігаються.
Зворотний зв'язок MDM та перевірка статусу
Ви можете перевірити, чи була конфігурація успішно застосована, за допомогою каналу зворотного зв'язку MDM (com.apple.feedback.managed), якщо ваше MDM-рішення підтримує його. Після обробки конфігурації (або завершення завантаження URL) програма повертає наступні дані:
managedConfigVersion: Рядок версії спроби конфігурації.result: Абоsuccess(успіх), абоerror(помилка).messages: Масив, що містить детальні повідомлення про помилки або попередження, якщо такі є.