Python: библиотека OAuth [закрыта]

Есть ли полноценная библиотека Python для oauth? Я не нашел ни одного, который обрабатывает повторный выпуск токенов oauth после истечения срока их действия (шаг 5 в поток Yahoo OAuth).

Итак, что является наиболее полным? Я попробовал вариант с oauth.net, и он не обрабатывает oauth_session_handle который, по словам спецификации oauth, требуется, если конечная точка возвращает его (как это делает yahoo).

Итак, какую библиотеку мне следует использовать? Являются ли они все неполными, и я должен сделать это самостоятельно?


person Paul Tarjan    schedule 03.11.2009    source источник
comment
Я создал пакет, чтобы сделать его очень простым и быстрым github.com/evansmwendwa/python-socialite   -  person Evans M.    schedule 16.02.2021


Ответы (6)


Я думаю, что python-oauth Лии Калвер (которую вы уже нашли) является лучшей отправной точкой, хотя это не завершено.

У Лии есть зеркало на github, что упрощает совместную работу: http://github.com/leah/python-oauth/tree/master/oauth/

Обновление. На сегодняшний день он выглядит как python-oauth2 от SimpleGeo. является лучшей отправной точкой.

person lemonad    schedule 03.11.2009
comment
Спасибо. Я разветвил ее репо и жду запроса на вытягивание. github.com/ptarjan/python-oauth - person Paul Tarjan; 08.11.2009
comment
Спасибо за добавление к нему! Мне тоже помогает, так как я использую его для нескольких проектов — очень признателен! - person lemonad; 08.11.2009
comment
Есть что-нибудь новое, о чем можно сообщить после последнего обновления? - person root; 10.07.2013
comment
Мне нравится библиотека запросов. Мне было интересно, есть ли неофициальная стандартная библиотека, довольно популярная библиотека. - person viki.omega9; 21.02.2014
comment
Любой, кто ищет современную и обновленную библиотеку, может проверить Authlib: authlib.org - person lepture; 15.10.2020
comment
Я создал простой в использовании пакет для этого github.com/evansmwendwa/python-socialite. - person Evans M.; 16.02.2021

Насколько я понимаю, Rauth — это новый лучший ответ. Содержит библиотеку requests и поддерживает ее в хорошем состоянии.

person Yarin    schedule 23.04.2013

Официальный сайт OAuth рекомендует оба rauth и oauthlib. Цитируя их относительно rauth:

Max Countryman поддерживает rauth и считается самой современной и проверенной реализацией OAuth для Python.

Относительно oauthlib:

Еще одна замечательная библиотека — OAuthlib, в которой реализован последний RFC, включая клиент и сервер.

ОБНОВЛЕНИЕ: 9 февраля 2019 г.

Обе библиотеки по-прежнему упоминаются в рекомендуемых библиотеках OAuth для Python, но глядя на их страницу Github, < strong>oauthlib поддерживается чаще.

person marcelocra    schedule 08.05.2014

Ознакомьтесь с библиотекой Майка Кнаппа на GitHub. Красиво и просто, установка не требуется. И работает на Google App Engine.

person stannie    schedule 25.03.2011

Используйте потрясающую библиотеку requests Кеннета Рейца вместе с requests-oauth плагин связан с http://docs.python-requests.org/en/latest/community/out-there/

person user161642    schedule 10.10.2012

Еще один ответ на вопрос 9-летней давности. Ниже приведены библиотеки для OAuth 2.0 и OpenID Connect, а также примеры реализации, написанные на Python. Обратите внимание, что они используют Authlete в качестве серверной службы.

  1. authlete-python : библиотека для Python (GitHub, PyPI)
  2. authlete-python-django : библиотека для Django (GitHub, PyPI< /а>)
  3. django-oauth-server: пример реализации сервера авторизации
  4. django-resource-server: пример реализации сервера ресурсов

Вопрос был опубликован в 2009 году. С тех пор было разработано много важных спецификаций. Ниже приведены некоторые примеры.

Сейчас объем спецификаций, связанных с OAuth 2.0 и OpenID Connect, огромен, полноценные реализации встречаются редко. Например, на момент написания этой статьи (20 августа 2019 г.) количество сертифицированных реализаций поставщиков OpenID, которые поддерживают API финансового уровня (FAPI) — всего 4. Кроме того, количество сертифицированных реализаций OpenID Provider, которые поддерживают Basic OP, Implicit OP, Hybrid OP, Config OP, Dynamic OP и Form Post OP, равно 5. (Authlete — единственная реализация, включенная в обе)

Ниже приведены некоторые моменты, которые следует учитывать при реализации OAuth 2.0.

  1. Поддержка RFC 7636 (важно для безопасности)
  2. Поддержка OpenID Connect (или только OAuth 2.0?)
  3. Поддержка API финансового класса (FAPI), если вам нужна более высокая безопасность. См. "API финансового уровня. (FAPI), объяснение разработчика" для получения технических подробностей.
person Takahiko Kawasaki    schedule 20.08.2019