События, происходящие в мировой экономике и политике, создали вызовы для всех российских производителей, в том числе в области информационной безопасности (ИБ). Отечественные компании столкнулись с серьезными проблемами на рынках США и Европы, в то же время западные вендоры значительно сократили свое присутствие на нашем рынке. Как сложившаяся ситуация повлияла на развитие продуктов класса IdM, рассмотрим в этой статье.
Причины решения об инвестиции средств в портирование IdM в Linux можно разделить на технические и коммерческие. Исключительно технических причин для быстрой миграции было бы недостаточно, и если бы не пресловутое импортозамещение, то процесс шел бы планомерно и завершился значительно позже. Тем не менее технические предпосылки тоже имеются и возникли раньше, чем конъюнктурные изменения, поэтому начнем с них.
1. Высокая доступность и отказоустойчивость LinuxНаиболее важной технической причиной является ориентация платформы Linux и ее окружения на высокую доступность и отказоустойчивость. Несмотря на то что компания Microsoft за последнее десятилетие сделала очень многое для возможности построения отказоустойчивых архитектур на базе ее решений, Windows Server и IIS все еще не дотягивают до Linux с его развитой экосистемой серверных решений.
В качестве примера можно привести простейший аптайм Linux-сервера в продакшене, который занимает, как правило, месяцы, в то время как Windows Server без перезагрузки обновляться не умеет, поэтому такой показатель в принципе недостижим. Для многих заказчиков, масштаб бизнеса которых растет вместе с развитием функционала продукта, отказоустойчивое решение ассоциируется с Linux-инфраструктурой по умолчанию.
2. Широкое серверное окружениеВторой по значимости причиной является гораздо более широкое серверное окружение, доступное в среде Linux. Например, в Windows есть один Web-сервер Production Ready — это IIS. Справедливости ради замечу, что он достаточно удобен для разработчиков и «балует» Net-приложения, принимая на себя дополнительную ответственность в части аутентификации, управления временем выполнения и других функций. При этом правильная настройка для использования в продуктивной среде и поддержка, особенно в отказоустойчивой конфигурации, затруднительна.
В случае же с NGINX на Linux все гораздо проще, в том числе в кластере. В сети описано множество конфигураций, есть большое количество примеров, и работает он гораздо понятнее и стабильнее. В некоторых проектах и ранее использовался NGINX как балансировщик перед IIS, и могу сказать, что в настройке, сопровождении и стабильности такая архитектура имела большие преимущества перед NLB. Если отойти от темы Web-серверов, то экосистема открытого ПО предлагает огромное количество полезных функциональных решений для создания надежных систем:
- логирование в распределенной сети — Graylog;
- мониторинг — Zabbix;
- развертывание и обновление — Ansible.
И это только верхушка айсберга. Для множества решений аналогов в среде Windows просто нет. Где-то они есть, но значительно менее функциональные либо платные, а дополнительная лицензионная нагрузка на заказчика в проекте — всегда проблема.
3. Простота развертывания и сопровождения Третьей причиной является простота развертывания и сопровождения. Это спорный момент, многие скажут, что Windows всем привычнее и имеет более понятный графический интерфейс, но, по нашему опыту, это не так. При внутреннем обучении для инженеров, занимающихся проектами внедрения и технической поддержкой, в большинстве своем поверхностно знакомых с Linux ранее, не было каких-либо затруднений с их стороны при развертывании, более того, большинство из них отметило, что развертывание происходит проще и надежнее.
4. Удобство для разработчика Говоря о этом, мы подразумеваем не только локальную рабочую станцию, помимо нее есть еще инструменты контроля версий, непрерывной интеграции и доставки, тестовое окружение. Уже сейчас разработчики используют докер-контейнеры для локального тестового окружения, а CI-инфраструктура, построенная на базе открытых решений несколькими годами ранее, значительно упростилась. Нативные git, grep, sed, Python и другие инструменты, активно используемые и ранее в виде портов в Windows, значительно удобнее для применения в среде, для которой созданы.
5. Политика импортозамещения С коммерческой точки зрения наиболее важной причиной, очевидно, является политика импортозамещения. Хотя решение полностью российское и, в отличие от конкурентов, не содержит в некоторых случаях нелегитимных с точки зрения права заимствований из открытых решений, зависимость от Windows-окружения, СУБД MSSQL или Oracle создавала определенные препятствия для продажи в государственные структуры и компании, ориентированные на создание независимой инфраструктуры. После того как ожидаемая «оттепель» не случилась, увеличилось количество запросов, связанных с импортозамещением уже построенных систем, в том числе от крупных коммерческих компаний, и стало отчетливо понятно: игнорировать ситуацию, в том числе с технической точки зрения, нельзя, и все усилия разработчиков были направлены на создание платформо-независимой версии с поддержкой открытой СУБД. PostgreSQL в данном случае был выбран как практически безальтернативное решение, поскольку в настоящий момент обладает:
- наиболее полным функционалом среди открытых реляционных СУБД;
- большим сообществом специалистов в России, включая компании, оказывающие услуги по технической поддержке.
6. Соответствие архитектурным стандартам крупных заказчиковВо многих крупных коммерческих компаниях, ответственно относящихся к ИТ-архитектуре уровня предприятия, приняты архитектурные стандарты, в соответствии с которыми Windows-инфраструктура может использоваться в информационных системах, уровень критичности которых не выше Business Operational. IdM же, выполняя, например, функцию авторизации подменных кассиров, автоматически поднимается на уровень Business Critical. В этом случае возможность развертывания в Linux-окружении означает более простой пресейл и меньшее количество вопросов на этапе технического проектирования, в комитетах по технической архитектуре и на прочих мероприятиях, предшествующих продаже лицензий.
7. Экспертиза интеграторовБольшое значение имеет экспертиза интеграторов, ранее работавших с западными продуктами. Они в большинстве своем привыкли строить инфраструктуру IdM-систем на базе открытых решений. За последние пару лет, начав активно работать с крупнейшими интеграторами, обладающими собственной экспертизой в сфере управления доступом, мы неоднократно сталкивались с отторжением на уровне технических специалистов, привыкших к стеку Linux + Java.
Для решения вопроса компетенций интеграторов в плане разработки интеграционных решений поддержка открытых стандартов была обеспечена на достаточно высоком уровне. Теперь, получив поддержку любимой платформы и возможность упрощенного развертывания в контейнере, они будут счастливы, реализуя проекты с использованием нового решения.
Шаг в будущее Портирование IdM на Linux — важнейший шаг, направленный на укрепление лидерства отечественного решения на российском рынке и хороший задел для будущего развития архитектуры продукта в направлении улучшения масштабируемости и надежности.
Александр Махновский, руководитель отдела разработки компании Аванпост