Как сделать сайт доступным только при наличии ключа? - PullRequest
13 голосов
/ 26 января 2009

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

Другими словами, чтобы получить доступ к веб-сайту, вам потребуется имя пользователя, пароль и USB-ключ, который был подключен к клиентскому компьютеру. Ключ предположительно будет выполнять какую-то задачу / ответ.

Было бы идеально, если бы это решение для ключей работало с Firefox автоматически или с простым добавлением плагина.

Мысли и предложения приветствуются.

Ответы [ 5 ]

19 голосов
/ 26 января 2009

Вас может заинтересовать Юбики .

Это небольшой USB-ключ, который работает как USB-клавиатура (т.е. не требует специальных драйверов или клиентского программного обеспечения) и предназначен именно для такого рода аутентификации.

8 голосов
/ 26 января 2009

Вы можете использовать RSA SecurID токены, которые представляют собой маленькие дисплеи цепочки для ключей, которые изменяют число, отображаемое каждую минуту. В дополнение к требованию имени пользователя и пароля, вы также можете попросить их ввести номер, который они видят на своем токене, чтобы убедиться, что они имеют аппаратное устройство с ними. Существуют различные аппаратные ключи, некоторые даже требуют ввода PIN-кода, чтобы увидеть изменяющийся номер. Это дополнительная сложность на стороне сервера, но у клиента нет особых проблем.

2 голосов
/ 15 июня 2010

У меня были хорошие результаты при внедрении аутентификации и входа в систему с использованием ключей Dinkey и системы DinkeyWeb .

Пользователь подключает USB-ключ безопасности к своему компьютеру, посещает вашу «защищенную» веб-страницу и проверяет ключ перед загрузкой страницы. Работает без специальных разрешений или привилегий.

Надеюсь, это поможет.

2 голосов
/ 28 января 2009

Я также использовал Yubikey с хорошими результатами. Другим аналогичным решением является Swekey - вы также можете проверить это.

1 голос
/ 26 января 2009

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

Я вижу, что это становится очень сложным очень быстро.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...