Алексей Хмельницкий, RooX: Новая норма — отдельная система аутентификации и авторизации клиентов
В области управления доступом выделился новый сегмент систем — CIAM (Customer Identity and Access Management). О разнице в подходах к аутентификации сотрудников и клиентов, принципах разработки CIAM-систем, а также об ожидаемых и неочевидных перспективах их развития рассказал Алексей Хмельницкий, генеральный директор компании RooX, российского разработчика систем аутентификации и авторизации.
Почему в последнее время выросла потребность в системах авторизации и аутентификации внешних пользователей?
Алексей Хмельницкий: Прежде чем ответить на ваш вопрос, хотелось бы вспомнить историю. Задачи, связанные с аутентификацией клиентов, появились одновременно с появлением популярных интернет-ресурсов. В конце 90-х логинить пользователей нужно было на форумы и порталы, чуть позже, в 2000-е годы, — в многочисленные личные кабинеты, а в 2010-е начался расцвет смартфонов и мобильных приложений.
Дальше некоторые специалисты ищут корреляции с пандемией, но, на мой взгляд, на аутентификацию она заметно не повлияла. Еще до 2020 года многие миллионы людей совершали покупки на маркетплейсах, заходили в банк через приложение и пользовались Госуслугами. Просто цифровые ценности за последние пару лет стали нормой для общества, а цифровым активам стал требоваться удобный и безопасный доступ.
Вместе с тем предметная область накопила техническую базу, лучшие практики и выросла в самостоятельный сегмент под названием CIAM — Customer Identity and Access Management. В результате для современной архитектуры цифровых платформ отдельная система авторизации и аутентификации клиентов становится нормой.
Какие принципиальные особенности имеет разработка CIAM-систем?
Алексей Хмельницкий: Надо сказать, что на старте здесь многих ждет ловушка. Она исходит из тезиса «любой junior-разработчик напишет форму логина». Действительно, нередко аутентификация пользователей зарождается как простой модуль или микросервис в составе цифровой инфраструктуры. Вход по логину и паролю с кодом по SMS в качестве второго фактора или вход через соцсеть можно реализовать на основе бесплатной библиотеки или легкого Open Source проекта. Многим кажется, что это и есть вся аутентификация.
Сложности появляются при попытке выйти за рамки простых задач: добавить вход по электронной цифровой подписи (ЭЦП), организовать бесшовную аутентификацию между сервисами (Single Sign-on), разработанными разными командами, осуществлять авторизацию в зависимости от должности в компании, выполнять асинхронные проверки при регистрации и так далее. И делать все это в соответствии со стандартами безопасности, подходом Application Security, не забывая про UX. Так что первой особенностью разработки CIAM я бы назвал высокую техническую сложность. Известный писатель-фантаст Сергей Лукьяненко выступит на TAdviser SummIT 28 ноября. Регистрация
Вторая особенность — необходимость выдерживать высокую и волнообразную нагрузку. Клиентов у компании обычно в разы больше, чем сотрудников, и приходят они неравномерно. На приток клиентов влияют акции, зарплатные дни, слухи на бирже и т.д.. Доступность CIAM, кстати, должна быть даже выше, чем у бизнес-системы, к которой пытается обратиться пользователь.
Кроме того, CIAM-система должна обеспечить отличный клиентский UX. Аутентификация — это первая и наиболее часто используемая функция ваших приложений. Если говорить утрированно, пользователь ничего не сделает, пока не войдет, поэтому сценарии взаимодействия пользователя с CIAM должны быть тщательно продуманы.
В RooX UIDM сценарии позволяют не ограничиваться вариантами «логин+пароль с двухфакторной аутентификацией или без нее». В нашей системе можно строить произвольные сценарии аутентификации в виде графа с развилками и слияниями при выполнении заложенных условий. При этом система спроектирована в соответствии с подходом API-First, поэтому можно писать интерфейс аутентификации с использованием любой технологии. А благодаря SDK разработчики получают простую интеграцию с сервером RooX UIDM.
И, наконец, надо отметить, что хорошая CIAM-система должна позволять находить компромисс между безопасностью и удобством для пользователей. Но поскольку такие системы, как правило, стоят между злоумышленниками и чувствительными данными, цена ошибки высока. Это тоже приходится учитывать в разработке.
Можно ли приспособить систему IDM/IGA под управление доступом внешних клиентов?
Алексей Хмельницкий: Здесь есть место интересному эффекту «перетекания» сотрудников и клиентов от IDM к CIAM. При определенных обстоятельствах (обычно это начинающий бизнес) IDM для сотрудников можно использовать для управления доступом клиентов.
Дальше держите руку на пульсе — в какой-то момент развития компании и ее цифровых каналов возникнет потребность обновления ИТ-архитектуры. Это идеальное время для того, чтобы в будущей инфраструктуре компании найти место для отдельной системы аутентификации клиентов.
Дальше больше, современные бизнес-процессы допускают выход сотрудников за периметр безопасности своих компаний. Это могут быть полевые, удаленные, аутсорсинговые сотрудники. В результате, всё больше приложений для сотрудников строятся по принципам приложений для клиентов. В том числе вход делается с использованием CIAM и применением модели безопасности Zero Trust, главный принцип которой — никогда не верить и всегда верифицировать, даже если сотрудник находится внутри периметра.
Расскажите о решении вашей компании — RooX UIDM.
Алексей Хмельницкий: RooX UIDM — российская система аутентификации и авторизации для веб- и мобильных приложений, она входит в реестр отечественного ПО. Наша система относится к классу CIAM, о котором я рассказывал выше. Это решение для корпоративного сектора. Условно можно сказать, что его целесообразно использовать при количестве активных пользователей от 1000 в месяц. Верхней границы нет, в нашем портфолио есть кейс с 25 млн пользователей.
Система обеспечивает аутентификацию физических и юридических лиц, поэтому вы можете с одинаковым успехом использовать ее как в личных кабинетах банков, телекома или ритейла, так и в b2b-маркетплейсах, где надо логинить сотрудников одного юрлица с разными ролями и правами.
Решение RooX UIDM поддерживает более 30 различных методов аутентификации, но, пожалуй, это разнообразие — не главное достоинство нашей системы. Что действительно важно клиентам, так это возможность собирать сценарии аутентификации и регистрации любой сложности. Кому-то нужен максимально простой вход по номеру телефона. А кому-то сценарии саморегистрации юридических лиц с асинхронной проверкой в черных списках и правами доступа в зависимости от метода аутентификации (без ключа с усиленной квалифицированной электронной подписью представитель юрлица будет получать только ограниченный доступ к возможностям ЛК).
Для управления пользователями можно собрать индивидуальную панель с функциями, которые наиболее востребованы заказчиком. Обычно это функции создания и редактирования учетных записей, а также блокировка, сброс пароля и другие операции. Здесь же можно управлять политиками аутентификации и авторизации и выполнять аудит действий пользователя в случае инцидентов.
Каких принципов разработки придерживается RooХ?
Алексей Хмельницкий: В первую очередь, мы ориентируемся на российскую специфику. Продукт RooX UIDM создавался и развивается опытной российской командой, он позволяет решать задачи, которые вызывают затруднения у зарубежных решений. Например, регистрация и вход с помощью ЕСИА, работа с биометрией и электронными подписями.
Мы любим долгосрочное сотрудничество и готовы к нему. Некоторые цифровые каналы наших клиентов успешно развиваются годами. И решение RooX UIDM адаптивно к любым нововведениям, будь то рост числа клиентов, новая бизнес-модель, новое поведение пользователей, изменения в законах, макроэкономические сдвиги — мы делаем все, чтобы система аутентификации была сильным звеном этих каналов.
Кроме того, мы учитываем ландшафт цифровизации. Многие компании сейчас делают свои решения с нуля — вынужденно из-за импортозамещения или по собственному выбору — и, конечно, берут современные технологии. Поэтому и у нас достаточно актуальный технологический стек: современная Java, нагруженные системы на Tarantool и т. д. Более того, мы разделили front-end и back-end, поэтому интерфейс к аутентификации и авторизации можно писать на любом современном фреймворке, удобном для заказчика.
И, наконец, стоит напомнить, что мы изначально сделали качественную сервисную поддержку и консалтинг частью нашего продукта. Для каждого крупного клиента мы поддерживаем тестовый стенд с используемой у него конфигурацией решения. Так, мы в любой момент можем воспроизвести нештатную ситуацию или протестировать новые возможности системы. Мы всегда помогаем клиентам решить их бизнес-задачу и подобрать правильное техническое решение.
С какими системами обычно интегрируется CIAM?
Алексей Хмельницкий: Как правило, это веб- и мобильные приложения, SIEM, другие CIAM, CRM. Кроме того, зачастую требуется интеграция с Active Directory, почтовым сервером и SMS-шлюзом. В ряде случаев CIAM приходится сопрягать с legacy-системами аутентификации, а также с системами управления мастер-данными (MDM).
Помимо перечисленного, RooX UIDM также интегрирована с системами веб-аналитики, это полезно для сквозного анализа маркетинговых акций, рассчитанных на привлечение новых клиентов или заявок.
Компании из каких вертикалей уже применяют ваше решение? Какие компании получат весомые преимущества от его внедрения?
Алексей Хмельницкий: Первыми нашими клиентами стали пионеры цифровизации — финтех и телеком. Именно они первыми среди крупных компаний создали личные кабинеты для пользователей и внедрили множество дополнительных услуг, доступных только через ЛК и интернет-банки.
Цифровыми сервисами для граждан и организаций постоянно занимается и государство, поэтому в госсекторе тоже очень важен безопасный доступ. Это еще одно приоритетное для нас направление.
Ну и, наконец, CIAM-системы будут полезны компаниям, у которых очень много клиентов с высокой ценностью операций и хранимых данных. С точки зрения бизнеса решение для этих клиентов должно быть и удобным, и безопасным. Сюда можно отнести, например, страховые компании, медицинские организации, e-commerce, образовательные платформы.
Каким вы видите дальнейшее развитие рынка систем авторизации и аутентификации внешних пользователей? Как он будет меняться и какие интересные функции будут реализованы в этих системах?
Алексей Хмельницкий: Появилось много интересного с точки зрения UX и безопасности: различные варианты беспарольного входа, аутентификация с использованием устройств, бесшовная аутентификация в мобильных браузерах, удобный вход по одноразовым ссылкам. В ближайшем будущем бизнес будет занят внедрением у себя этих наработок.
Те, кто смотрят на шаг вперед, будут несколько противоречить тренду на разнообразие способов аутентификации — бизнес будет отказываться от использования внешних сервисов для входа в систему (соцсетей или других провайдеров identity), чтобы не отдавать ему информацию о поведении своих клиентов. Все-таки эта информация — слишком ценный ресурс.
В противовес онлайн-направлению будет развиваться тема офлайн-работы и, соответственно, непрерывной аутентификации в приложениях. Когда вы находитесь в лифте, длинном подземном переходе, в горах или просто рядом с «глушилкой», то не только приложения компаний становятся недоступны для вас, но и вы становитесь недоступны для компаний. Бизнес об этом уже думает и предпринимает некоторые шаги.
Самым важным вызовом для отрасли сейчас я бы назвал перенос типовых задач аутентификации из реального мира в цифровой. Здесь еще предстоит огромная работа.
Расскажите об этом немного подробнее, пожалуйста.
Алексей Хмельницкий: В физическом мире идентификация выполняется с помощью документов, на которых, как правило, указано ваше имя и есть ваша фотография. Обычно это паспорт или иная национальная ID-карта, либо водительские права. С этими документами вы можете обратиться в огромное количество самых разных организаций, коммерческих и государственных, и получить какие-то услуги. А вот в Сети нет возможности взять один ID и с ним проходить аутентификацию где угодно.
В какой-то степени эту роль на себя сейчас берет ЕСИА, но этот идентификатор пока не так распространен. Некоторые банки тоже создают единый ID, но этот ID, как правило, может работать только внутри экосистемы такого банка и иногда с его партнерами. Очевидно, связей между организациями не хватает.
Кроме того, часто встречается такая задача, как временная передача прав без передачи аутентификации. В реальном мире руководитель компании может оформить доверенность на заместителя или ассистента и выдать логин/пароль и ключ ЭЦП для совершения каких-то юридически значимых действий в ЛК какого-нибудь ведомства. По факту это работает, но создает немалый потенциал для злоупотреблений.
Наконец, если в физическом мире вы потеряли паспорт или водительские права, вы их можете относительно легко заменить. В цифровом мире, потеряв доступ к аккаунту, вы его можете попросту никогда не восстановить. Вот эти задачи отрасли и предстоит решить в ближайшем будущем. Цифровая идентификация будет и догонять физическую, и решать свои задачи. Это одна из интереснейших областей современного мира IT.