Приёмочные проверки виртуального VPN-шлюза с двухфакторной аутентификацией
Докажите шлюз шаг за шагом: регистрация, вход, отказ, отзыв и восстановление, каждое с артефактом и условием прохождения, записанным до теста.
Поставщики описывают это устройство как виртуальное и способное на два фактора, и ни одно из этих слов не отвечает на вопросы, решающие покупку. Какое изображение гипервизора поддерживается, какие клиенты могут зарегистрироваться, что второй фактор действительно доказывает и что происходит при отказе поставщика идентичности, по-прежнему открыто. Превратите это в приёмочные этапы, которые можно прогнать на репетиции, и решение перестанет зависеть от того, насколько убедителен технический лист. Лист ниже — структура для таких доказательств, а не рейтинг продуктов.
Что поставщик должен подтвердить об этом развёртывании
Начните с того, чтобы уместить развёртывание на одну страницу: гипервизор или облако, архитектура гостя, поддерживаемый образ и интерфейсы, которых ожидает устройство. Добавьте пользователей с их операционными системами, сведения о том, управляются ли устройства, и как должны работать регистрация и вход. Затем частный доступ: приложения и префиксы, организация DNS, обратные пути и входит ли публичный выход в интернет в предложение.
Эксплуатация относится к той же странице: кто обслуживает устройство, откуда приходят обновления, куда уходят журналы, как защищается конфигурация и какую цель восстановления бизнес действительно согласовал. Попросите поставщика подтвердить именно это сочетание, а не то, что программа работает в виртуальной машине. Держите внешние зависимости, такие как поставщик идентичности или служба лицензирования, видимыми, потому что они часть развёртывания независимо от того, поставляются ли они вместе с ним. Страница развёртывания без названной зависимости обычно означает страницу развёртывания с неизвестной зависимостью.
Докажите, что второй фактор — это второй фактор
Назовите аутентификатор и поток проверки и скажите, какую идентичность устанавливает каждый шаг. Два запроса пароля подряд — не второй фактор, а пароль плюс одноразовый код — иное утверждение, чем криптографический аутентификатор, привязанный к сервису. Запишите поток, который вы покупаете, а не этикетку на коробке.
Устойчивость к фишингу — отдельное свойство, и руководство NIST по аутентификаторам рассматривает её именно так: код, который пользователя можно уговорить передать, по-прежнему удовлетворяет многофакторной аутентификации, но не выполняет это дополнительное условие. Требуйте это свойство прямо, если оно для вас важно. Затем потребуйте демонстрацию на том типе клиента, который ваши пользователи действительно используют, охватывающую регистрацию, отклонённый или просроченный вызов, восстановление после утраченного аутентификатора и отзыв одного пользователя, пока другие остаются подключёнными. Держите проверку идентичности шлюза в области охвата, потому что клиент, доверяющий любому шлюзу, переместил проблему, а не решил её.
Запишите условие прохождения, прежде чем что-то ломать
Таблица ниже — та часть листа, которая выживает при контакте с поставщиком, потому что каждая строка требует артефакт вместо заверения. Заполните условие прохождения до репетиции и считайте строку без доказательств проваленной строкой. Пять этапов охватывают то, что должен делать шлюз.
| Acceptance stage | Evidence to keep | Pass condition |
|---|---|---|
| Enrolment | Enrolment record with the device type and the identity used | A new device enrols once, and nobody else can enrol it afterwards |
| Sign-in with the second factor | Session record naming both factors and the gateway identity that was checked | The session carries the expected identity and the gateway certificate validated |
| Denial of an unapproved destination | Log line from the control that refused the flow, with the policy name | The flow is refused and the refusal is attributable to one control |
| Revocation of one user | Revocation timestamp and the sessions that survived it | The named user is out and unaffected users keep working |
| Restore from configuration backup | Restored version plus a probe of a revoked identity | The revision matches the backup and revoked identities stay revoked |
Регистрация идёт первой, потому что всё дальнейшее зависит от неё: устройство, которое не может зарегистрироваться, нельзя проверить. Вход — отдельный этап от регистрации, а отказ — этап, который забывает большинство листов, потому что шлюз, пускающий всех, не доказал, что кому-то отказывает. Отзыв и восстановление несут большую часть эксплуатационного риска, и оба дешево отрабатываются на копии.
Репетируйте на копии, а не на живом шлюзе
Проводите разрушительные этапы на копии платформы, следуя поддерживаемой процедуре развёртывания, и храните каждое доказательство с его датой и версией конфигурации. Строка о перезагрузке не закрывается перезагрузкой из консоли, а строка о восстановлении — экспортом конфигурации. Отметьте, какое состояние возвращается само и что нужно подключать заново, потому что именно эту разницу наследует эксплуатационная команда. Репетиция — ещё и единственный шанс замерить восстановление, не объясняя сбой.
Записывайте состояние поставщика идентичности в момент каждого теста, потому что строка об отказе, проверенная против здорового поставщика, доказывает обратное тому, что утверждает лист. Два рецензента на одной репетиции ловят разное, и второй обычно находит строку, доказательством которой служит снимок экрана панели. Держите это доказательство прикреплённым к строке, которой оно принадлежит, а не в папке с именем проекта.
Измерьте нагрузку, которую будет выполнять ваша команда
Договоритесь о нагрузке, похожей на обычную неделю, и измерьте её там, где собираетесь развёртывать: параллельность, состав трафика и окно обслуживания, которое у команды действительно есть. Рекламируемая цифра пропускной способности описывает лабораторное условие и ничего не говорит о ваших пользователях. Измеряйте восстановление относительно цели восстановления, а не относительно плана.
Лист закончен, когда у каждого этапа есть артефакт и у каждого артефакта есть дата. Устройство, которое кто-то обслуживает, с доказательством для каждой строки, — другая покупка, чем самый длинный список отмеченных галочками пунктов.