Autlib против OAuthlib: эти библиотеки одинаковы? - PullRequest
1 голос
/ 30 марта 2020

Я новичок в мире протоколов OAuth2.0 и OpenID. Я хотел бы реализовать собственный сервер-провайдер для нескольких приложений. Итак, чтобы использовать его для единого входа (SSO). Я хотел бы работать с python. До сих пор я нашел четыре пакета для реализации сервера OAuth2.0 и OpenID Connect в Python: pyoid c, django -oid c -provider, Django OAuth Toolkit (DOT) от OAuthlib и Authlib. Я пытался читать и понимать пиоид c, но это было не так полезно и просто, но чего-то не хватало. Я попробовал django -oid c -provider, и я был действительно доволен, и вся реализация была действительно простой. Итак, после этих испытаний у меня остались Django OAuth Toolkit (от OAuthlib) и Authlib. Кто-нибудь пробовал их? Эти пакеты одинаковы? Является ли Authlib обновленной версией библиотеки OAuthlib? Единственная информация, которую я знаю до сих пор, - это то, что Flask -OAuthlib устарел, и Authlib был его новой версией.

* Каждый ответ, совет или личный опыт был бы очень полезен и всегда приветствуется!

Еще раз спасибо за вашу помощь.

1 Ответ

0 голосов
/ 15 апреля 2020

После некоторых исследований я решил работать с JWTs . Как и прежде, я хотел бы работать с GraphQL API, поэтому я ищу решения для аутентификации JWT на нем. Я могу использовать Passport. js (passport-jwt) или что-то еще для Python. Все упомянутые выше библиотеки, возможно, не будут использоваться.

Я просто перенаправлю пользователя в основное приложение, аутентифицирую его с помощью JWT, а затем верну JWT обратно в приложение. В будущем и после развертывания я мог бы также реализовать поставщика OAuth2.0 для своего веб-сайта. Хотя эти пакеты мне не очень помогли, я бы порекомендовал Django OAuth Toolkit (DOT) и django -oid c -provider другим. Но я также узнал, что django -oid c -provider поддерживает только реализацию небольшого и простого поставщика OAuth2.0. Django OAuth Toolkit поставляется с большим количеством опций для реализации усовершенствованного сервера аутентификации OAuth2.0 (AS), включая поток кода авторизации с PKCE (ключ проверки с обменом кодами), который является наиболее безопасным потоком. Он также масштабируем и имеет отличную документацию с множеством настроек, если хотите.

* Я отправил электронное письмо в службу поддержки Authlib, и, конечно, никто не ответил мне через неделю.

...