Keycloak: защита 2FA для конкретного ресурса

Я хочу защитить функцию высокого уровня риска с помощью 2FA. Исторически мы используем 2FA SMS. Я хочу предложить ту же функцию, но в идеале я хочу иметь возможность интегрировать также собственный аутентификатор Keycloak OTP (более безопасный). Вот почему на основе keycloak-sms-authenticator-sns https://github.com/nickpack/keycloak-sms-authenticator-sns> я улучшил этот аутентификатор (скоро сделаю запрос на слияние).

Я искал в документации Keycloak 3.4.3, но, используя ту же область, я не видел никакой функции, которая запрашивала бы 2FA, когда конечный пользователь хочет получить доступ к определенному ресурсу. Ролевой механизм позволяет управлять доступом (403–200), но, похоже, он не подходит для моего варианта использования. Я не уверен, что UMA 2.0 может предлагать эту функцию. Более того, он еще не реализован. Уровень гарантии кажется очень хорошим, но он еще не реализован, и это будет трудно сделать.

Я мог бы включить фильтр сервлета в бизнес-приложение (адаптер JBoss), чтобы направить пользователя к аутентификатору 2FA, когда он хочет получить доступ к ресурсу. Но в этом случае я должен распространять состояние между Keycloak и адаптером Java, чтобы не запрашивать код 2FA для каждого доступа. Это может быть немного сложно в кластерном режиме (служба без сохранения состояния).

Есть ли у вас идея легко охватить этот вариант использования на основе встроенных функций keycloak? Если это не так, по вашему мнению, какое решение является лучшим (см. выше)? (самая простая интеграция для удобства обслуживания, поддержка кластеризации и независимость от техники 2FA)

Спасибо, что поделились своим опытом.


person Malys    schedule 22.03.2018    source источник


Ответы (1)


Похоже, вы ищете своего рода Step-up аутентификацию. Это еще не реализовано в Keycloak, но для этого существует здесь тикет jira.

Также уже было обсуждение в списке рассылки (и возможно, какие-то другие темы, которые я не нашел в настоящее время).

Я также наткнулся на «Аутентификатор условной формы OTP" от Томаса Даримонта, очень активного участника сообщества Keycloak. .

ХТХ как-то так.

person dasniko    schedule 23.03.2018
comment
Спасибо @dasniko. Я ищу пошаговую аутентификацию. Я нашел билет Jira, но я не знал предложения Томаса Даримона. Я проверю. - person Malys; 27.03.2018