«Аванпост» представила обновленный Avanpost IDM 6.0

Интеграция Системное ПО
мобильная версия
, Текст: Владимир Бахур

«Аванпост» объявила о выпуске нового этапного релиза своего флагманского продукта – Avanpost IDM 6.0. Новая версия выпущена на 6 месяцев раньше намеченного срока, что связано с необходимостью поддержать заказчиков, готовящихся к запуску крупных проектов, связанных с переходом на импортонезависимое ПО, цифровой трансформацией организаций и реализацией элементов цифровой экономики, а также развитием систем управления предприятиями.

Благодаря нововведениям, Avanpost IDM 6.0 (и последующие дополнительные версии: 6.х) обеспечивает наиболее полную поддержку тенденций, которые будут определять развитие российского ИТ-рынка в ближайшие годы. Сегодня этот релиз представляет особый интерес для системы госуправления, госкорпораций, ТЭК, банковской сферы, крупных холдинговых структур.

В новой версии Avanpost IDM произошли три основных изменения. Продукт полностью совместим с ОС семейства Linux, поддерживает СУБД Postgres при установке на любую ОС. При использовании всех поддерживаемых СУБД Avanpost IDM 6.0 при работе в Linux и Windows обеспечивает одинаковую функциональность, реализующую полный набор функций современной IDM-системы.

Avanpost IDM 6.0 сохранил совместимость со всеми многочисленными платформонезависимыми и платформозависимыми модулями сопряжения (коннекторами), которые интегрируют Avanpost IDM с всевозможным прикладным и инфраструктурным ПО. Таким образом в новой версии продукта обеспечена защита инвестиций «Аванпост», заказчиков и партнеров в создание и развитие базы коннекторов — наиболее полной среди всех IDM-решений, представленных на российском рынке. Существенно изменена архитектура ядра IDM, что подготовило Avanpost IDM к постепенному добавлению недостающих функций решений класса IGA (Identity Governance and Administration). Эти функции будут появляться в минорных версиях (6.1, 6.2 и т. д.) продукта. В соответствии с пятилетней стратегией компании «Аванпост», объявленной в феврале 2018 года, именно движение в сторону IGA является основной линией развития Avanpost IDM как для российского, так и для зарубежных рынков.

Управление портированием Avanpost IDM в Linux и всей подготовкой нового релиза происходило на основе внедренного в Аванпост оригинального комплекса взаимодополняющих Agile-методик (FDD, Kanban и SCRUM). Этот комплекс применяется при разработке всей линейки продуктов Avanpost, что позволяет снизить затраты и обеспечить адаптивность управления разработкой мажорных и минорных версий программных продуктов Avanpost IDM, PKI и Web SSO, а также при отработке запросов проектных команд, реагирующих на потребности конкретных заказчиков.

Linux-версия Avanpost IDM 6.0 может использовать высокопроизводительную СУБД PostgreSQL / Postgres Pro (наряду с проприетарными СУБД Microsoft и Oracle). Avanpost IDM 6.0 может устанавливаться и на высоконагруженные и катастрофоустойчивые конфигурации Postgres Pro, что полезно, когда IDM-система работает в режиме критически важной информационной системы крупной организации. В настоящее время доля таких внедрений Avanpost IDM составляет порядка 30% и может повыситься в связи с растущей доступностью ЦОДов.

На СУБД Postgre реализованы не только базовые функции Avanpost IDM, но и весь набор инструментов управления ролевыми моделями, обеспечивающий методически корректное внедрение и сопровождение IDM-решений, а также аудит прав доступа. При этом перенос на новую СУБД столь сложного программного продукта не сопровождался какими-то существенными сложностями.

Перенос бизнес-логики в Linux также прошел совершенно безболезненно. Уже несколько лет компания Аванпост серьезно готовилась к портированию IDM-системы на другие платформы (ОС, СУБД, фреймворки). В частности, при подготовке Avanpost IDM 5.0 ядро IDM было полностью переработано, чтобы максимально ослабить зависимость от конкретных платформ и фреймворков, а вся бизнес-логикастала платформонезависимой.

Наиболее сложная задача возникла в связи с необходимостью замены движка бизнес-процессов. Напомним, что в Windows-версии Avanpost IDM создание различных заявок и соблюдение регламентов их обработки контролирует подсистема Avanpost Workflow, опирающаяся на компоненту Windows Workflow Foundation (WWF) платформы Microsoft .NET Framework. Широкая функциональность WWF позволяет добиться большой гибкости процессов согласования заявок, делегирования, замещения пользователей, эскалации задач при согласовании заявок и др. Однако в NET Core (открытая версия. NetFramework) библиотека WWF и ряд других важных средств Enterprise-разработки не вошли, что потребовало их замены. Особая сложность отказа от WWF была связана с тем, что библиотека плохо документирована, а устроена так, что отделить бизнес-логику невозможно, вследствие чего программный код движка процессов был полностью зависим от WWF.

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

Однако до конца 2017 года перейти на Workflow Core было практически невозможно, поскольку в ранних версиях этого продукта логика бизнес-процессов задавалась программно, что не позволяло портировать редактор схем бизнес-процессов. Только в 2017 году, когда Workflow Core стал поддерживать описания схем процессов, появилась возможность разработки редактора, а также конвертора для переноса схем процессов, описанных по правилам Avanpost Workflow (эту нотацию использует и разработанный в Аванпост графический редактор схем), в описания, соответствующие правилам Workflow Core. Подобно тому, как это ранее было сделано для трансляции схем Avanpost Workflow в схемы WWF.

Безошибочный и быстрый перенос описаний процессов в ходе миграции на новую версию IDM исключительно важен, поскольку у многих заказчиков Аванпост используются процессы, состоящие из 100-150 и более шагов. Поэтому до завершения отладки нового транслятора схем процессов и всей технологии автоматической миграции Аванпост не рекомендует переход с версии 5.8 на 6.0. Организациям же, впервые внедряющим Avanpost IDM лучше сразу выбирать версию 6.0.

В Linux-версии Avanpost IDM 6.0 была решена еще одна практически важная задача, связанная с применением платформозависимых модулей сопряжения (коннекторов) IDM-системы и различных управляемых систем инфраструктурного и прикладного уровня (служб каталогов MS AD, СУБД, СЭД, портальных решений и др.). В таких коннекторах используются средства, которые невозможно портировать в Linux: COM-объекты, библиотека MFC или, например, библиотеки сценариев Power Shell, не поддерживающиеся напрямую в NET Core).

Чтобы заказчики могли использовать все эти коннекторы в Linux, в Avanpost IDM 6.0 был создан отдельный сервер коннекторов, который может работать на выделенной машине с ОС Windows, где он и запускает платформозависимые коннекторы. Такое решение позволило унаследовать весь парк коннекторов, не меняя их, и избежать огромной работы по устранению зависимости коннекторов от платформ и аккуратному тестированию их платформонезависимых версий. Зачастую (например, в случае коннектора к Microsoft Active Directory) это является весьма сложной задачей.

Подчеркнем, что эта сложность касается только платформозависимых коннекторов, доля которых не превышает 20-25%. Платформонезависимые же коннекторы без каких-либо сложностей могут использоваться при работе Avanpost IDM 6.0 как в Windows, так и в Linux.

Переработка ядра для Avanpost IDM 5.0 была направлена не только на то, чтобы сделать бизнес-логику платформонезависимой. Кроме того, архитектура ядра была полностью изменена и стала микросервисной. Это изменение было сделано главным образом в расчете на рост популярности SaaS-архитектуры в корпоративной среде. Особое удобство микросервисов как основы SaaS-приложений связано с возможностью при реализации сервисов использовать любые технологии (от новейших до унаследованных) – при полной унификации механизма взаимодействия сервисов и четкости интерфейсов прикладного программирования (API).

Однако два года, прошедшие после выхода Avanpost 5.0, показали, что на российском рынке предоставление IDM по подписке как сервиса из облака (IDaaS) хотя и имеет перспективы, но не станет основной линией развития рынка в ближайшее время. Сегодня, как и раньше, инфраструктура и техническая политика заказчика полностью определяют, какие технологии могут применяться в ИТ-решении, а какие нет. В то же время, для IDM-решения, активно распространяющегося на корпоративном рынке, микросервисная архитектура — это, скорее, проблема нежели преимущество.Не давая ощутимых выгод, она значительно усложняет ПО в случае, если микросервисы должны интенсивно взаимодействовать для реализации бизнес-логики.

Именно такая ситуация возникает по мере развития IDM-системы в сторону IGA-решений, т.е. при реализации магистральной линии развития продукта Avanpost IDM. Требования IGA вынуждают повысить функциональную связность микросервисов, а это усложняет и «раздувает» API, а также существенно усложняет реализацию алгоритмов, пересекающих границы микросервисов. Причина в том, что при реализации таких алгоритмов бизнес-логика, встроенная в микросервисы, взаимодействует через механизм передачи сообщений, но верно ли отработан весь поток сообщений – этого сервисы «не знают». Приходится добавлять в алгоритм сложные координирующие ветви и создавать новые API, что затрудняет понимание и развитие системы.

Сохранение микросервисной архитектуры неизбежно создало бы нарастающие проблемы по мере добавления IGA-функций в ряду минорных версий (6.1, 6.2, 6.3…) Avanpost IDM. Чтобы избежать этого, в Avanpost 6.0 архитектура ядра была вновь существенно изменена: ряд сервисов (синхронизация с доверенными источниками и подготовка и редактирование кадровых данных) был интегрирован в ядро, а другие сервисы были слиты или укрупнены. В итоге, значительно повысилась прозрачность бизнес-логики всего продукта, упростилась отладка, администрирование и выявление инцидентов. И главное: Avanpost IDM теперь полностью готов к реализации большого комплекса функций IGA.

В компании «Аванпост» внедрение agile-методик началось в 2015 году. Но именно Avanpost IDM 6.0 стала первоймажорной версией ключевого программного продукта, вся разработка и жизненный цикл которой полностью контролируется с помощью agile.

В Аванпост подразделение разработки разделено на команды, развивающие основные продукты, и команду проектной разработки, работающую над задачами интеграции и кастомизации, поступающими от заказчиков и интеграторов. Команда проектной разработки, в силу специфики рабочего процесса, использует Kanban (поскольку эта методика ориентирована на сокращение числа задач с определенным статусом, например, находящихся в работе). Продуктовые же команды работают по agile-методике близкой к FDD (feature-driven development).

Переход к agile в продуктовой разработке, совместно с параллельным внедрением непрерывной интеграции (от сборки версии до развертывания и передачи в эксплуатацию) и автоматизированного тестирования, ускорил выпуск релиза Avanpost IDM 6.0, а также позволил эффективно интегрировать в жизненный цикл (ЖЦ) продукта обратную связь с рынком и оперативную реакцию на новые потребности пользователей.

Методика FDD выбрана для подготовки мажорной версии Avanpost IDM, так как ориентирована на создание сложного функционала и внесение больших изменений – особенно если создаваемая программная система имеет настолько сложную архитектуру, что, не проработав её тщательно на начальном этапе, разработчик обязательно получит множество практически неустранимых проблем на более поздних этапах ЖЦ. Кроме того, FDD предпочтительна при разработке продуктов с длительным жизненным циклом. Всё это характерно для полнофункциональных IDM-систем.

При подготовке промежуточных версий Avanpost IDM будет использоваться SCRUM, поскольку именно эта agile-методика лучше других подходит для добавления функций в ПО с хорошо проработанной и стабильной архитектурой системы и моделью предметной области. А к FDD компания будет возвращаться при создании этапных релизов Avanpost IDM и других продуктов.

Попеременное применение FDD и SCRUM в ЖЦ продуктов позволит Аванпост оптимизировать расходы на разработку: FDD дороже SCRUM (за счет наличия аналитических этапов), и применение SCRUM на длинных отрезках ЖЦ программного продукта значительно снизит себестоимость его развития.

Подчеркнём, что опыт создания и полномасштабного применения оптимального оптимального комплекса из трех разных agile-методик (Kanban, FDD и SCRUM) является существенным конкурентным преимуществом Аванпост как на российском ИБ-рынке, так и при реализации действующей программы выхода на рынки дальнего зарубежья.

Поддержка Linux и переход на импортонезависимые СУБД и движок бизнес-процессов, реализация на этой платформе полной функциональности IDM и средств методически корректного внедрения, заложенный фундамент для эффективной реализации функций IGA, поддержка коннекторов к самому широкому кругу прикладного и инфраструктурного ПО, простая технология создания новых модулей сопряжения, а также гибкая, адаптивная и экономная технология управление разработкой и внедрением для всего жизненного цикла продуктов линейки Avanpost — каждое нововведение Avanpost IDM 6.0 работает на те или иные новые тенденции, снижает издержки и риски заказчиков и интеграторов. А вся совокупность возможностей нового этапного релиза IDM-системы Аванпост позволяет существенно помочь в воплощении в жизнь этих тенденций в масштабах всего российского рынка.