Інтеграція Microsoft Intune для керування мобільним застосунком

Корпоративні застосунки на iOS та Android потребують захисту, якого не забезпечують стандартні обмеження ОС. Ми інтегруємо Microsoft Intune та MAM SDK у ваші мобільні застосунки, налаштовуємо автентифікацію MSAL та Conditional Access. Наша команда реалізує проєкт під ключ — від аудиту до впровадження та подальшої підтримки.

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Інтеграція Microsoft Intune для керування мобільним застосунком
Складний
~3-5 днів
Часті запитання

Корпоративні застосунки на iOS та Android потребують політик, які не можна реалізувати через стандартні обмеження ОС. Якщо в організації вже розгорнуті Azure AD, Office 365 і Teams, Microsoft Intune — це де-факто стандарт EMM. Ми спеціалізуємося на інтеграції Intune SDK і MSAL у мобільні застосунки, забезпечуючи Conditional Access на рівні Azure AD та захист даних через MAM. Одного разу нам надійшов проєкт для великого банку: потрібно було за два тижні впровадити Intune MAM у вже існуючий React Native застосунок. Впоралися за 12 робочих днів — і тепер розповімо, як уникнути типових помилок.

Intune — де-факто стандарт EMM для Microsoft-орієнтованих організацій. Якщо інфраструктура на Azure AD, Office 365, Teams — Intune логічний вибір: єдина консоль, Conditional Access на рівні Azure AD, нативна інтеграція з Defender for Endpoint. Для мобільного застосунку інтеграція означає підтримку MAM SDK або App Wrapping + коректну роботу з MSAL для отримання токенів з урахуванням compliance-статусу пристрою.

Реєстрація застосунку в Azure AD

Перший крок — App Registration в Azure Portal. Без коректної реєстрації Intune не зможе застосовувати політики до застосунку.

Мінімальний набір налаштувань:

  1. Створити App Registration в Azure AD.
  2. Додати API Permissions: DeviceManagementApps.ReadWrite.All, DeviceManagementConfiguration.ReadWrite.All (якщо застосунок читає політики напряму).
  3. Додати IntuneMAM в Redirect URI: msauth.{bundle-id}://auth.
  4. Увімкнути Public client flows для мобільних клієнтів.
  5. В Intune Portal (portal.azure.com → Intune → Client Apps) додати застосунок в App Protection Policy та призначити на групи.

Як працює Conditional Access з MSAL?

MSAL (Microsoft Authentication Library) — заміна ADAL, обов'язковий компонент для сучасної Intune-інтеграції. Conditional Access працює автоматично: якщо пристрій non-compliant (застаріла ОС, jailbreak за оцінкою Intune), MSAL отримує MSALError з кодом conditionalAccessClaim — застосунок має повторно запитати токен з додатковими claims. MSAL v1.1+ обробляє CA challenge автоматично за умови коректної конфігурації.

iOS (Swift):

import MSAL

let config = MSALPublicClientApplicationConfig(
    clientId: "YOUR_CLIENT_ID",
    redirectUri: "msauth.com.company.app://auth",
    authority: try MSALAADAuthority(url: URL(string: "https://login.microsoftonline.com/YOUR_TENANT_ID")!)
)
config.bypassRedirectURIValidation = false

let application = try MSALPublicClientApplication(configuration: config)

let webParameters = MSALWebviewParameters(authPresentationViewController: viewController)
let interactiveParameters = MSALInteractiveTokenParameters(
    scopes: ["https://graph.microsoft.com/.default"],
    webviewParameters: webParameters
)

application.acquireToken(with: interactiveParameters) { result, error in
    if let result = result {
        // result.accessToken — використовувати для API-запитів
        // result.account — зберегти для silent token refresh
    }
}

Intune MAM SDK: ключові точки інтеграції

Після додавання IntuneMAMSwift (iOS) або intune-mam-sdk (Android) — декілька обов'язкових точок: Реєстрація акаунта після авторизації:

// Після успішного MSAL login
IntuneMAMEnrollmentManager.instance().loginAndEnrollAccount(userPrincipalName)
// SDK реєструє UPN в MAM-сервісі та запитує політики

Обробка enrollment callback:

class MAMEnrollmentDelegate: NSObject, IntuneMAMEnrollmentDelegate {
    func enrollmentRequestWithStatus(_ status: IntuneMAMEnrollmentStatus) {
        switch status.statusCode {
        case .enrollmentSuccess:
            // Політики застосовано, дозволяємо доступ до корпоративних функцій
        case .enrollmentFailed:
            // Показуємо помилку, обмежуємо доступ
        case .unenrollmentSuccess:
            // Selective wipe завершено
        }
    }
}

Перевірка політики перед дією:

let policyManager = IntuneMAMPolicyManager.instance()
if policyManager.policy(forIdentity: userUPN).isSaveToPersonalAllowed(for: .camera) {
    // Дозволити збереження в Camera Roll
} else {
    showRestrictedActionAlert()
}

Що дає Managed App Configuration?

В Intune Portal для кожного застосунку можна задати Configuration Policy — словник ключів/значень, який застосунок читає через UserDefaults.standard.dictionary(forKey: "com.apple.configuration.managed") (iOS) або RestrictionsManager (Android). Це дозволяє IT-адміністратору змінювати параметри (наприклад, URL бекенду або таймаут сесії) без оновлення застосунку.

Типові параметри для корпоративного застосунку:

<!-- App Configuration Policy в Intune Portal (XML формат) -->
<dict>
  <key>BackendURL</key>
  <string>https://api.corp.example.com</string>
  <key>TenantID</key>
  <string>corp-tenant-001</string>
  <key>EnableVerboseLogging</key>
  <false/>
  <key>SessionTimeoutMinutes</key>
  <integer>30</integer>
</dict>

Інтеграція з Microsoft Defender for Endpoint

Якщо в організації використовується Defender for Endpoint (MDE), Intune може отримувати від нього сигнали про mobile threat defense: джейлбрейк, шкідливі мережі, вразливі застосунки. Conditional Access використовує ці сигнали для блокування токенів. Для цього в застосунок вбудовується Defender SDK — він працює фоном, надсилає threat events в MDE, Intune отримує compliance status. З точки зору застосунку — це окрема залежність, але без змін в основній бізнес-логіці.

Порівняння підходів: MAM SDK проти App Wrapping

Параметр MAM SDK App Wrapping
Зміна коду Потрібна Не потрібна
Гнучкість управління Висока (фінальний контроль) Середня (обмежені політики)
Швидкість впровадження 3–5 тижнів 1 тиждень
Платформи iOS, Android, React Native, Flutter Тільки iOS та Android

MAM SDK дає повний контроль над корпоративними даними без необхідності використовувати App Wrapping — це в 3 рази швидше з точки зору налаштування політик і не потребує зміни коду сторонніх модулів.

Що входить в нашу роботу

Ми забезпечуємо повний цикл інтеграції:

  • Аудит поточного застосунку та конфігурації Azure AD.
  • Реєстрація застосунку в Azure AD та налаштування необхідних дозволів.
  • Інтеграція MSAL з підтримкою Conditional Access.
  • Вбудовування Intune MAM SDK (iOS/Android/React Native/Flutter).
  • Реалізація enrollment lifecycle та selective wipe.
  • Налаштування Managed App Configuration та App Protection Policy.
  • Тестування всіх сценаріїв: Conditional Access, захист перенесення файлів, блокування на non-compliant пристроях.
  • Документація для IT-відділу та навчання адміністраторів.
  • Підтримка на етапі релізу в App Store та Google Play.

Зв'яжіться з нами для оцінки вашого проєкту — ми підготуємо комерційну пропозицію протягом дня. Замовте інтеграцію під ключ — терміни від 3 до 8 тижнів залежно від складності.

Наш досвід — 5 років в enterprise мобільній розробці, понад 20 успішних проєктів з Intune, включаючи банки, ритейл та логістику. Гарантуємо чисту інтеграцію без конфліктів з existing-кодом та повне проходження App Store Review.

Етапи інтеграції

Azure AD App Registration → налаштування MSAL → додавання Intune MAM SDK → реалізація enrollment lifecycle → Managed App Configuration → App Protection Policy в Intune Portal → тестування Conditional Access → тестування selective wipe → rollout.

Терміни: інтеграція MSAL + MAM SDK в готовий застосунок — 3–5 тижнів. З налаштуванням Intune Portal, політик та тестуванням — 6–8 тижнів. Вартість розраховується індивідуально.

Детальніше про Intune SDK читайте в офіційній документації Microsoft, а про MSAL — в MSAL для iOS.

Наші компетенції:

Останні роботи

  • Розробка мобільного додатка для компанії FEEDME
    Розробка мобільного додатка для компанії FEEDME
    1010
  • Розробка мобільного додатку для компанії XOOMER
    Розробка мобільного додатку для компанії XOOMER
    903
  • Розробка мобільного додатку для компанії RHL
    Розробка мобільного додатку для компанії RHL
    1332
  • Розробка мобільного додатку для компанії ZIPPY
    Розробка мобільного додатку для компанії ZIPPY
    1180
  • Розробка мобільного додатку для компанії Affhome
    Розробка мобільного додатку для компанії Affhome
    1107
  • Розробка мобільного додатку для компанії FLAVORS
    Розробка мобільного додатку для компанії FLAVORS
    714