В настоящее время я пишу API отдыха на python с микросхемой Flask. Это частный API, который работает с пользовательскими данными . Я планирую использовать этот API для создания веб-приложений и приложений для Android.
Сейчас я использую дайджест-аутентификацию для защиты личных данных пользователя. Например, если вы хотите опубликовать данные на моем сервисе с пользователем bob, вы отправляете запрос на myapi / story / create и предоставляете учетные данные bob с шаблоном дайджеста.
Я знаю, что это не очень хорошее решение, потому что:
-Дайджест аутентификации не безопасен
-Клиент не аутентифицирован (Как защитить запросы, не связанные с текущим пользователем, например, создать нового пользователя?)
Я много читал о oAuth, но трехсторонняя аутентификация кажется излишней, потому что я не планирую открывать свой API для третьих лиц.
Двусторонний oAuth не подходит, поскольку он обеспечивает аутентификацию только для клиентов, а не для пользователей.
Другая проблема с oAuth заключается в том, что я не нашел исчерпывающего руководства по его реализации на Python. Я нашел библиотеку python-oauth2 , но я не понимаю пример сервера и не могу найти дополнительную документацию. Кроме того, похоже, что многие аспекты oAuth не рассматриваются в этом примере.
Итак, мои вопросы:
- Существует ли альтернативная схема (не oAuth) для аутентификации клиента и пользователя с разумным уровнем безопасности?
- Если oAuth - лучшее решение:
- Как пропустить процесс авторизации (поскольку пользователям не нужно будет авторизовать сторонних клиентов)?
- Есть ли подробная документация для python-oauth2 или для любой другой библиотеки Python?
Любая помощь или совет будут оценены.