simpleauth

Скриншот программы:
simpleauth
Детали программы:
Версия: 0.1.3
Дата загрузки: 20 Feb 15
Разработчик: Alex Vagin
Тип распространения: Бесплатная
Популярность: 5

Rating: nan/5 (Total Votes: 0)

simpleauth является просто оболочкой для аутентификации Google App Engine приложение.
Поддерживаемые функции:
& NBSP; - OAuth 2.0
& NBSP; - OAuth 1.0 (а)
& NBSP; - OpenID
Поддерживаемые поставщики из коробки:
& NBSP; - Google (OAuth 2.0)
& NBSP; - Facebook (OAuth 2.0)
& NBSP; - Windows Live (OAuth 2.0)
& NBSP; - Twitter (OAuth 1.0a)
& NBSP; - LinkedIn (OAuth 1.0a)
& NBSP; - OpenID, используя App Engine модуль API пользователи
Начало работы
1. Установите библиотеку на локальном Mac / PC с одним из:
& NBSP; а. "easy_install -U simpleauth"
& NBSP; б. "пункт установить simpleauth"
& NBSP; гр. клонировать исходный репо, например "мерзавец клон Git: //github.com/crhym3/simpleauth.git"
2. Поместите SUBDIR называется "simpleauth" в корне приложения.
3. Вы также должны будете получить питона-OAuth2 (PIP установить OAuth2) и httplib2 (http://code.google.com/p/httplib2/)
3. Создайте обработчик запроса путем создания подкласса SimpleAuthHandler, например
& NBSP; & NBSP; класс AuthHandler (SomeBaseRequestHandler, SimpleAuthHandler):
& NBSP; & NBSP; & NBSP; & NBSP; "" "Обработчик аутентификации для всех видов авт." ""
& NBSP; & NBSP; & NBSP; & NBSP; Def _on_signin (я, данные, auth_info, поставщик):
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; "" "Обратный звонок всякий раз, когда новый или существующий пользователь входа в.
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; данных является информация о пользователе словарь.
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; auth_info содержит маркер доступа OAuth или маркера и секретный.
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; Посмотрите, что в нем с logging.info (данные, auth_info)
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; "" "
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; auth_id = auth_info ['ID']
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # 1. Проверьте пользователь существует, например,
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # & NBSP; & NBSP; & NBSP; User.get_by_auth_id (auth_id)
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; #
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # 2. создать нового пользователя, если он не
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # & NBSP; & NBSP; & NBSP; Пользователь (** Данные) .Put ()
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; #
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # 3. Вход пользователя
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # & NBSP; & NBSP; & NBSP; self.session ['_ user_id'] = auth_id
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; #
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # 4. редирект где-нибудь, например, self.redirect ('/ Профиль ")
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; #
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # Смотрите больше на том, как работать вышеупомянутые шаги здесь:
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # Http://webapp-improved.appspot.com/api/webapp2_extras/auth.html
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; # Http://code.google.com/p/webapp-improved/issues/detail?id=20
& NBSP; & NBSP; & NBSP; & NBSP; Def выход (само):
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; self.auth.unset_session ()
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; self.redirect ('/')
& NBSP; & NBSP; & NBSP; & NBSP; Def _callback_uri_for (само, поставщик):
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; вернуться self.uri_for ('' auth_callback, поставщика = поставщика, _full = True)
& NBSP; & NBSP; & NBSP; & NBSP; Def _get_consumer_info_for (само, поставщик):
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; "" "Если вернуть кортеж (ключ, секрет) для инициализации Авт запросов.
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; Для OAuth 2.0 Вы также должны вернуть сферу, например,
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; ("мое приложение ID ',' мое приложение секрет", "электронная почта, user_about_me ')
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; Объем depens исключительно на поставщика.
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; См пример / secrets.py.template
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; "" "
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; вернуться secrets.AUTH_CONFIG [поставщика]
Обратите внимание, что SimpleAuthHandler не является реальным обработчик запросов. Тебе решать. Например, может быть SomeBaseRequestHandler webapp2.RequestHandler.
4. Добавить маршрутизации, так что '/ авт / ПОСТАВЩИК »,« / авт / поставщика / обратного вызова' и '/ выхода из системы "запросы идут к вашему AuthHandler.
& NBSP; & NBSP; Например, в webapp2 вы могли бы сделать:
& NBSP; & NBSP; # Карта ссылок на обработчики
& NBSP; & NBSP; маршруты = [
& NBSP; & NBSP; & NBSP; & NBSP; Маршрут ('/ авт /',
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; обработчик = 'handlers.AuthHandler: _simple_auth ", имя =' auth_login '),
& NBSP; & NBSP; & NBSP; & NBSP; Маршрут ('/ авт // обратного вызова ",
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; обработчик = 'handlers.AuthHandler: _auth_callback ", имя =' auth_callback '),
& NBSP; & NBSP; & NBSP; & NBSP; Маршрут ('/ выход ",
& NBSP; & NBSP; & NBSP; & NBSP; & NBSP; & NBSP; обработчик = 'handlers.AuthHandler: выйти "," выход "NAME =)
& NBSP; & NBSP; ]
5. Вот это. См пример приложения в примере реж.
Чтобы запустить пример приложения, копировать / пример secrets.py.template в пример / secrets.py и запустить приложение локально, выполнив run.sh

Что нового В этом выпуске

  • Защита от CSRF для OAuth 2.0 http://code.google.com/p/gae-simpleauth/issues/detail?id=1
  • Пользовательские исключения http://code.google.com/p/gae-simpleauth/issues/detail?id=2
  • Пример улучшения приложения, в том числе:
  • CSRF-охранник
  • показать исключение сообщения для демонстрационных целей
  • красивее выход сессии, данные профиля и auth_info словарей
  • https://github.com/crhym3/simpleauth/issues/4
  • https://github.com/crhym3/simpleauth/issues/5
  • Более полезная информация в README

Требования

  • Python
  • OAuth2
  • LXML
  • httplib2

Другие программы разработчика Alex Vagin

SimpleAuth
SimpleAuth

13 Apr 15

Комментарии к simpleauth

Комментарии не найдены
добавить комментарий
Включите картинки!