Мобильная операционная система «Аврора»
«Аврора» — российская мобильная операционная система (далее — ОС) с открытым исходным кодом на базе ядра Linux, разработанная в 2016 году компанией «Открытая мобильная платформа». Включена в Единый реестр российского программного обеспечения Минцифры, зарегистрирована в Роспатенте, имеет сертификаты ФСТЭК и ФСБ России.
Несмотря на то, что продукт написан на основе открытого исходного кода, частично он имеет закрытые компоненты, поскольку изначально создавался для использования государственными служащими. Сейчас он может использоваться и государственными и корпоративными заказчиками.
На нём можно построить доверенную мобильную среду, в которой вся чувствительная информация надёжно защищена. Соответствие требованиям регуляторов в сфере защиты информации даёт возможность использовать продукт в рамках необходимых мер по импортозамещению и цифровизации, способствуя укреплению технологического государственного суверенитета.
Функциональные возможности «Авроры»
ОС «Аврора» имеет встроенные средства верификации загрузки и запуска программного обеспечения, а также политики безопасности. Дистанционно осуществляется тотальный контроль и мониторинг всех функций мобильного устройства.
- многофакторная идентификация с поддержкой токенов,
- платформа управления устройствами,
- безопасность каналов связи,
- криптографическое шифрование данных,
- использование квалифицированной цифровой электронной подписи.
- движение вниз открывает главное меню,
- движение вправо открывает экран событий,
- быстрое переключение между рабочими приложениями.
Управление ОС «Аврора»
Централизованное управление мобильными устройствами на ОС «Аврора» их жизненным циклом осуществляется посредством использования EMM-платформы «Аврора Центр», которую специально под задачи ОС разработала всё та же компания «Открытая мобильная платформа». Эта платформа имеет сертификаты ФСТЭК и внесена в Единый реестр российского программного обеспечения Минцифры.
Преимущества и возможности продукта:
- повышение уровня безопасности,
- снижение расходов на администрирование корпоративных мобильных устройств,
- поддержка работы до 500 000 мобильных устройств одновременно,
- защищённость корпоративных данных,
- повышение уровня мотивации сотрудников,
- эксплуатация платформы в закрытом контуре без взаимодействия со сторонними приложениями и сервисами,
- работа с группами пользователей и динамическими группами устройств через Microsoft Active Directory,
- внесение обновлений на устройства,
- проведение диагностик и аудитов,
- в случае потери гаджета удаление данных и блокировка устройства в удалённом режиме,
- интеграция с LDAP-каталогом,
- управление правами доступа.
Информационная безопасность
Загрузка системы осуществляется за счёт применения средства доверенной загрузки «Аврора СДЗ» с встроенной доверенной средой исполнения «Аврора ТЕЕ», предназначенного для АРМ-процессоров с корнем доверия в кристалле.
Встроенные средства обеспечения безопасности данных шифруют входящие и отправленные данные так, что их нельзя перехватить. А вся информация размещена на серверах или в облачных хранилищах компании. В ОС конфигурации всех механизмов не нуждаются в изменениях или дополнениях администратором. Таким образом обеспечивается прикладная защита программного продукта. Методы и комплексы мер безопасности дополняют друг друга, обеспечивая тем самым эшелонированную защиту.
Обеспечение защиты от приведения в активность недоверенного кода на мобильном устройстве осуществляется за счёт: подписи пакетов, проверки используемых приложений, контроля целостности исполняемых файлов в динамике.
- код изолируется в песочнице,
- запрещаются системные вызовы повышенного риска опасности,
- блокируется возможность отладки приложения,
- привилегированные пользователи получают запрет после выполнения записи сразу приводить её в исполнение,
- активируются средства защиты на уровне компилятора.
- при помощи контролирующих сервисов, доверенной загрузки и механизма защиты ядра;
- сертификации подписей кода разработчиком пакета для установки приложения;
- динамического контроля целостности подсистемой ядра Linux IMA (Integrity Measurement Architecture);
- ограниченного доступа к файлам,
- обновления встроенного средства криптографической защиты «СледопытSSL».
Возможности для разработчиков
ОС «Аврора» имеет SDK и API, которые позволяют разработчикам работать над созданием совместимых приложений. Для них также предусмотрены: обучающие курсы, вебинары, общий чат, блог на «Хабре», портал для разработчиков с необходимой документацией, и примеры кода.
Приложения ОС «Аврора»
Не все приложения совместимы с ОС «Аврора», поэтому этот факт нужно учитывать заранее. В будущем предполагается расширение перечня совместимых приложений.
- «Телефон»,
- «Контакты»,
- «Камера»,
- «Сообщения»,
- «Калькулятор»,
- «Браузер»,
- «Календарь»,
- «Файлы»,
- «Галерея»,
- «Заметки»,
- «Криптозаметки»,
- «Документы»,
- «Почта»,
- «Часы»,
- «Диктофон»,
- «Погода»,
- «Музыка»,
- «Помощь».
Тиражное программное обеспечение:
- управление устройствами («Аврора Центр», «Аврора Маркет», UEM SafeMobile);
- антивирусы («Антивирус Касперского», Dr.Web Security Space);
- криптографическая защита (ViPNet Client, «КриптоПро NGate», «КриптоПро CSP», «Рутокен ЭЦП 3.0 NFC», «КриптоАРМ ГОСТ», Aladdin 2FA, «Континент ZTN», «СледопытSSL»);
- мессенджеры и ВКС (PostLink, «Колибри», «Колибри-SIP», TrueConf);
- офисные приложения («Ростелеком. Сервис печати», «МойОфис. Документы», «Заметки Про», «Сканер документов»);
- документооборот («Мобильный Офис», «Рабочее место руководителя», CompanyMedia. WebDocs 2.0, Docsvision, «Рутилус», LDM.Express).
Ещё предусмотрено специализированное программное обеспечение и программное обеспечение для разработчиков.
Устройства на ОС «Аврора»
Встроенные механизмы безопасности не позволяют установить ОС в любое устройство, но некоторые модели можно приобрести уже со встроенной ОС «Аврора». Все изделия предназначены для офисного и корпоративного использования:
- КПК Aquarius NS M11,
- планшет Aquarius CMP NS220 v5.2,
- смартфон Масштаб TrustPhone Т1,
- смартфон F+ R570,
- планшет БайтЭрг МВК-2020,
- планшет F+ Life Tab Plus,
- КПК Aquarius NS M12,
- смартфон Qtech QMP-M1-N IP68,
- планшет Aquarius CMP NS220,
- смартфон Qtech QMP-M1-N,
- планшет Aquarius Cmp NS208.
Знакомство с Aurora OS
Здравствуйте! Я разработчик ~10 летним стажем. Работал с web backend-ом, frontend-ом, android, ios. Последние 2 года работал с Jetpack Compose. Наконец-то я нашел время написать приложение для любопытной мобильной платформы. Расскажу с чем предстоит столкнуться желающему разобраться в Aurora OS.
Мобильная операционная система
Первое, что узнаешь об Aurora — это бывшая Sailfish OS. Многое оттуда все еще актуально. Но далеко не все. Aurora пошла дальше в свою сторону. Главное их отличие это защищенность. Sailfish OS создавалась (ну по крайней мере пытается) для массового потребителя в то время как Aurora затачивается под корпоративного клиента. Aurora имеет сертификацию УД4 — 4й уровень доверия по безопасности информации ФСТЭК России.
Второй этап знакомства — Qt. Нужно будет работать с фреймворком для разработки кроссплатформенного программного обеспечения на языке программирования C++. Но не спешите расстраиваться услышав о C++. Qt это не чистый C++, доработанный. UI пишется на Qt Quick который похож на уже ставший привычным Android разработчикам Jetpack Compose.
Но все же это не Jetpack Compose и не Swift UI и даже не полноценный Qt. Используемая версия Qt в Авроре 5.6.3 , а Qt Quick 2.0 . Также доступны компоненты интерфейса для Aurora OS в библиотеке поставляемой с Aurora SDK Sailfish.Silica 1.0 .
Начало работы
Для начала работы вам предстоит скачать Aurora SDK. В комплекте идет Aurora IDE — вы увидите знакомый, доработанный, интерфейс Qt Creator. Для эмулятора вам понадобится VirtualBox. Также вместе с SDK в поставке идет Aurora Build Engine через который идет сборка приложений. Пока поддержки Apple ARM нет, но насколько знаю, работы на этот счет ведутся.
И так вы поставили Aurora SDK. В Aurora IDE в разделе Examples вы найдете (не забудьте возле поиска выбрать раздел с Aurora OS, по умолчанию у меня он был не выбран) примеры приложений. Но к сожалению там нет главного приложения — Components. Почему? — вопрос не ко мне, думаю проблемы с лицензиями. Но вы можете его найти в Sailfish OS. Там не все актуально, но на данный момент приложение собирается и работает. Все что я там находил отлично работало для меня и на Aurora OS.
В Qt Qml встроена поддержка JS. Приложения можно писать вообще без использования С++ ;). С версии Qt 5.12 появилась поддержка стандарта ES6 , в Aurora можно рассчитывать на ES5 . Также есть ограничения, подробнее можно посмотреть здесь.
Компоненты
Aurora OS имеет самобытный интерфейс. Нет привычных диалогов, bottom bar-а. Сверху расположено меню которое мешает сделать «Swipe to refresh». Разбираться в OS нужно с логики работы интерфейса. Подходить творчески. 🙂 В документации есть раздел где отмечены основные ошибки которые делают разработчики.
Qt Quick позволяет дописать чего нет. Компонентов не густо. Например, табов нет в стандартной поставке, а либ написанных сторонними разработчиками я не находил. Можно поискать их по Sailfish OS. Ну или экспроприировать из открытых приложений таких как Shop 7 in 1.
Нужно внимательно смотреть документацию и искать аналоги. Но я в своем приложении реализовал даже кастомные кнопки — мне не понравились отступы и не хватало функционала. Но вот Bottom Sheet я нашел — меня вполне устроил DockedPanel .
Документация
Вам предстоит иметь дело с Qt. Чаще всего вам предстоит гуглить запросы по нему. При поиске решений обращайте внимание на версии Qt в ответах. У Aurora OS также есть документация по своим доработкам, компонентам. Достаточно не плохая, но все же это не Documentation | Android Developers . Ресурсы не те. Будьте готовы к тому что информацию нужно будет искать везде. Chat GPT вам в помощь. 🙂
Впечатления
После работы с Jetpack Compose и SwiftUI работать с Qml вполне приемлемо. Есть вещи которые не очень удобны. Например, чтобы растянуть элемент — нужно посчитать ширину… самому. Чтобы покрасить блок — добавить отдельный компонент Rectangle . Добавить радиус можно только на весь блок и то не во всех компонентах.
В то же время все основное, что нужно, можно реализовать. Да, придется пописать свои компоненты, но и в Jetpack Compose без кастомизации не обойдешься — например дизайнер решил что поля ввода должны быть вот такими — и пиши с нуля их…
Впечатления смешанные — с одной стороны Qml вполне годен для реализации многих вещей типа “я дизайнер я так вижу”. С другой недостаток компонентов, небольшая их функциональность, и непривычные подходы в отличие от мобильных платформ таких как Android и iOS.
Но самое главное — это работает, и писать приложения можно. Можно даже достаточно быстро при должной сноровке…
Полезные ссылки
Для разработки вам понадобятся первым делом элементы интерфейса.
Куда без иконок? Но я бы рекомендовал сразу же юзать например материал иконки, сейчас что есть это раритет с Sailfish OS, наследие… Когда-нибудь их обновят, но пока что имеем.
Мое open-source приложение использующее Kotlin Multiplatform JS. Пример реализации приложения без C++. Он там есть лишь формально, в принципе, его можно легко вообще убрать.
Чат по Aurora OS, очень милый и домашний, присоединяйтесь, YW.
Аврора — основа защищённой мобильной инфраструктуры.
Представим себе крупную корпорацию. Например, международную транспортную компанию со штатом более 10 000 сотрудников.
Логисты, водители, курьеры, механики, операторы постоянно обмениваются данными с помощью мобильных устройств. Чтобы такая компания работала стабильно, сотрудников и данные нужно контролировать.
Смартфоны и планшеты на ОС Аврора управляются через единый центр. Это позволяет дистанционно настраивать функционал каждого устройства для решения конкретных рабочих задач.
Например, отключать лишнее — доступ к определённым интернет-сервисам или передачу данных на сторонние
устройства.
Встроенные подсистемы защиты информации шифруют данные пользователя и каналы их передачи. Чтобы никто не смог перехватить их.
Вся информация хранится на территории компании — на серверах или в облачных хранилищах. Попасть туда извне невозможно.
ОС Аврора включена в Единый реестр российского ПО, зарегистрирована
в Роспатенте, сертифицирована
в соответствии с требованиями регуляторов.
При подготовке материала использовались источники:
https://www.azone-it.ru/operacionnaya-sistema-avrora
https://keygenqt.github.io/articles/articles/aurora/24_01_2023/
https://auroraos.ru/