Мне нужно создать веб-сервер Python, который поддерживает 2 разных типа пользователей:
- «Супер администраторы», которые получают полный доступ к панели администратора при подключении с помощью предварительно настроенного ноутбука / браузера.
- Администраторы, которые получают ограниченный доступ к панели администратора и могут подключаться, используя только комбинацию имени пользователя и пароля.
Я думаю, что аутентификация клиента SSL является возможным решением для аутентификации технических специалистов.
Обратите внимание, что веб-сервер будет встроен в продукт и не будет иметь доступа к Интернету, поэтому не может подключиться к ЦС.
Является ли аутентификация клиента SSL хорошим решением или есть более простой или лучший вариант?
Вот что я нашел ...
CherryPy кажется очень хорошим, простым веб-сервером на Python. Однако, похоже, он не поддерживает аутентификацию клиента.
M2Crypto выглядит очень полной библиотекой, которая поддерживает все формы аутентификации SSL, однако я не нашел подробного примера того, как настроить веб-сервер Python с помощью M2Crypto для аутентификации клиента SSL.
pyOpenSSL кажется мертвым.
Я также нашел рецепт, который объясняет, как настроить веб-сервер Python с SSL. Однако ...
С этим рецептом только сервер аутентифицируется, пока клиент
остается не прошедшим проверку подлинности (то есть сервер не будет запрашивать клиента
сертификат).
Источник: http://code.activestate.com/recipes/442473-simple-http-server-supporting-ssl-secure-communica/
Может ли кто-нибудь указать мне правильное направление или дать ссылку на хорошо документированную реализацию того, что я пытаюсь сделать?
Спасибо:)