Возможен двусторонний ssl между браузером и сервером?
Наша команда разработала некоторый сервис для внутреннего пользования (backend на c#, frontend на vuejs). Пользователь проходит аутентификацию по логину, паролю, google authentificator коду и получает Bearer токен (подписанный jwt), который в последствии передается в заголовке Authorization. Сейчас задумались над заменой 2fa. В голову приходят два решения:
- двусторонний ssl
- U2F (например ubikey)
Первый вариант в приоритете так как по сути получаем подтверждение присутствия пользователя при каждом запросе, а не только при аутентификации как в случае U2F. Возможно ли реализовать двусторонний ssl фронтенда на JavaScript в браузере с backend на C#?
Клиентский сертификат при этом должен быть с не экспортируемой приватной частью в хранилище сертификатов ОС. Вообще в идеале на usb токене.