Три устройства с одинаковым разъёмом и одинаковым кольцом для ключей участвуют в трёх не связанных между собой обменах. Одно показывает код, который проверяет сервер, другое подписывает ключом, который никогда не покидает устройство, а третье подтверждает вход из браузера по собственному протоколу. Поэтому вопрос, стоит ли VPN использовать сертификаты или аппаратные токены, сравнивает формат с классом устройств. Ответ зависит от того, какое из трёх вы действительно купили.

Назовите доказательство до устройства

Одноразовый кодовый токен создаёт значение, которое служба аутентификации проверяет своим механизмом. VPN может добраться до этой службы через RADIUS или федеративного поставщика удостоверений, и токену никогда не нужно хранить что-либо, принадлежащее самому туннелю. Он доказывает, что человек держит устройство, генерирующее код. О машине, на которой код был набран, он не доказывает ничего.

Токен в виде смарт-карты хранит закрытый ключ и выполняет операцию подписи по запросу, именно так удостоверение сертификата доказывается без экспорта ключа. Сертификат рядом с ним — публичный материал, и передать этот сертификат — совсем другое действие, чем передать ключ.

Ключ FIDO говорит уже по третьему протоколу. Вход из браузера может использовать его у поставщика удостоверений, но успех на этом сайте не означает, что тот же ключ появится через интерфейс смарт-карты клиента VPN.

Некоторые устройства реализуют несколько таких приложений рядом, и документация производителя перечисляет режимы отдельно именно поэтому. Это не доказательство того, что каждый ключ на рынке поддерживает каждый режим.

Аппаратура защищает ключ, а не политику

PIN на устройстве с сертификатом обычно разрешает локальное использование ключа, и это не тот пароль, который проверяет система учётных записей VPN. Руководства вроде руководство NIST по аутентификаторам называют такой локальный ввод секретом активации, отличным от самого аутентификатора. Гарантия исходит из всего дизайна, а не из числа запросов на экране.

Регистрация, продление и удаление в любом случае остаются у владельца удостоверения. Кто-то по-прежнему решает, кому можно регистрироваться, привязывает учётные данные к нужному человеку и делает замену возможной при потере устройства. Покупка нового ключа не отзывает старый.

Опишите церемонию входа до выбора аппаратуры: пользователь вводит код, разблокирует ключ подписи или подтверждает запрос браузера? Каждый ответ подразумевает другой клиент, другую настройку шлюза и другой сценарий для службы поддержки.

Где на практике расходятся процессы

Кодовый токен проще всего развернуть, и он слабее всего против убедительной поддельной страницы, потому что набранный код можно передать в реальном времени. Ключ с сертификатом противостоит этому классу атак и дороже в эксплуатации, поскольку выпуск и отзыв становятся частью службы. Ключ FIDO стоит рядом с веб-входом и полностью зависит от того, поддерживает ли его поставщик удостоверений для этого приложения.

Смешанные среды обычны и не являются автоматически ошибкой: сертификат для туннеля плюс кодовый токен для административной консоли — это связное разделение, при условии что оба зарегистрированы на одно удостоверение. Ломается то разделение, которое никто не задокументировал, когда служба поддержки не может сказать, какого фактора не хватает пользователю.

Сделайте решение конкретным

Запишите церемонию как последовательность шагов, которые выполняет реальный пользователь, а затем проверьте, что клиент, шлюз и поставщик удостоверений все поддерживают эту последовательность. Несоответствие обычно проявляется на последнем шаге, когда клиент вообще не может обратиться к устройству.

Затем подтвердите, что происходит при потере устройства или истечении сертификата. Если этот ответ не записан, в развёртывании есть пробел, который обнаружится в понедельник утром.

pkcs11-tool --list-slots
pkcs11-tool --list-objects --type cert

Похожие статьи