Защита доступа в системе онлайн тестирования/экзаменации студентов?

Добрый день.
Вот уже довольно долгое время я занимаюсь разработкой и поддержкой системы онлайн тестирования/экзаменации студентов для нескольких московских ВУЗов.

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

Поэтому было решено подобную систему модифицировать.
Первое, что мне пришло в голову - это интеграция самого экзамена с личным кабинетом, доступ в который выдается каждому студенту один раз, с проверкой, находится ли студент в экзаменационной аудитории с помощью SSL сертификата (если на клиентской машине сертификат не установлен, студенту будет предложено пройти в соответствующую аудиторию для начала тестирования).
Такая система была бы довольно удобна как для студентов (нужно один раз запомнить свой логин/пароль), так и для преподавателей (список экзаменационных аудиторий устанавливается администрацией, можно выбрать конкретную аудиторию, студент заранее видит в своем аккаунте, в какой аудитории и когда будет проходить тест). Плюс играет простота развертывания такой системы.

Однако, SSL сертификат с десктопа можно экспортировать и вынести. И вот тут становится не очень понятно, как от этого защищаться.

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

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

Что посоветуете? Сталкивался кто-нибудь с подобной задачей? Есть ли что почитать на эту тему? Любым ответам или просто мыслям на тему буду рад.
Заранее спасибо!
  • Вопрос задан
  • 2580 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы