simpleauth

Screenshot Software:
simpleauth
Szczegóły programowe:
Wersja: 0.1.3
Filmu: 20 Feb 15
Wywoływacz: Alex Vagin
Licencja: Wolny
Popularność: 58

Rating: 3.0/5 (Total Votes: 2)

simpleauth jest proste otoki uwierzytelniania dla aplikacji Google App Engine.
Obsługiwane specyfikacje:
& Nbsp; - OAuth 2.0
& Nbsp; - OAuth 1.0 ()
& Nbsp; - OpenID
Obsługiwane dostawców z pudełka:
& 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, za pomocą modułu użytkowników App Engine API
Pierwsze kroki
1. Zainstaluj bibliotekę na Twoim Mac / PC z jednym z:
& Nbsp; . "Easy_install -U simpleauth"
& Nbsp; b. "Pip install simpleauth"
& Nbsp; c. sklonować repo źródła, np "Git clone git: //github.com/crhym3/simpleauth.git"
2. Umieść podkatalog o nazwie "simpleauth" do swojej aplikacji root.
3. Będziesz także musiał się python-oauth2 (pip install oauth2) i httplib2 (http://code.google.com/p/httplib2/)
3. Utwórz obsługi żądania przez instacji SimpleAuthHandler, np
& Nbsp; & nbsp; Klasa AuthHandler (SomeBaseRequestHandler, SimpleAuthHandler):
& Nbsp; & nbsp; & nbsp; & nbsp; "" "Obsługi uwierzytelniania dla wszystkich rodzajów auth." ""
& Nbsp; & nbsp; & nbsp; & nbsp; def _on_signin (self, danych, auth_info, dostawca):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "" "Oddzwanianie, gdy nowy lub istniejący użytkownik zalogowaniu.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Dane jest słownikiem informacji użytkownika.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; auth_info zawiera dostęp tokena lub oauth symboliczny i tajne.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Zobacz, co jest w nim z logging.info (dane, 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. Sprawdzenie, czy użytkownik istnieje, na przykład
& 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. utworzyć nowego użytkownika, jeśli nie robi
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # & Nbsp; & nbsp; & nbsp; Użytkownik (** dane) .put ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; #
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # 3. oznaczenie użytkownika
& 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. przekierowanie gdzieś, np self.redirect ('/ Profil ")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; #
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Zobacz więcej na temat jak pracować powyższe kroki tutaj:
& 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; wyloguj def (self):
& 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 (self, dostawca):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; powrót self.uri_for ('', dostawcy auth_callback dostawcy, _full = = True)
& Nbsp; & nbsp; & nbsp; & nbsp; def _get_consumer_info_for (self, dostawca):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "" "Gdyby powrócić krotki (klucz tajny) dla orga startowych wniosków.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Dla OAuth 2.0 należy również zwrócić zakres, np
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ("Moje app id", "moja aplikacja tajne", "e-mail, user_about_me")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Zakres depens wyłącznie od dostawcy.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Zobacz przykład / secrets.py.template
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "" "
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; powrót secrets.AUTH_CONFIG [dostawcy]
Należy pamiętać, że SimpleAuthHandler nie jest prawdziwy wniosek obsługi. To zależy od Ciebie. Na przykład, może być SomeBaseRequestHandler webapp2.RequestHandler.
4. Dodaj routing tak, że '/ auth / provider', '/ auth / DOSTAWCA / zwrotna "i" / wyloguj "wnioski przejdź do AuthHandler.
& Nbsp; & nbsp; Na przykład w webapp2 można zrobić:
& Nbsp; & nbsp; # Mapa URL do obsługi
& Nbsp; & nbsp; Trasy = [
& Nbsp; & nbsp; & nbsp; & nbsp; Trasa ('/ auth / ",
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Wózek = "handlers.AuthHandler: _simple_auth" name = "auth_login"),
& Nbsp; & nbsp; & nbsp; & nbsp; Trasa ('/ auth // zwrotna "
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Wózek = "handlers.AuthHandler: _auth_callback" name = "auth_callback"),
& Nbsp; & nbsp; & nbsp; & nbsp; Trasa ('/ wyloguj ",
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Wózek = "handlers.AuthHandler: wyloguj", "wyloguj" name =)
& Nbsp; & nbsp; ]
5. To jest to. Zobacz app próbki na przykład reż.
Aby uruchomić przykładową aplikację, skopiować przykładowy / secrets.py.template do przykład / secrets.py i uruchomić aplikację lokalnie wykonując run.sh

Co nowego w tym wydaniu :

  • Ochrona OAuth 2.0 dla CSRF http://code.google.com/p/gae-simpleauth/issues/detail?id=1
  • wyjątki niestandardowe http://code.google.com/p/gae-simpleauth/issues/detail?id=2
  • ulepszenia Przykład app, w tym:
  • Osłona CSRF
  • Wiadomości pokaż wyjątek do celów demonstracyjnych,
  • ładniejsza wyjście sesji, dane profilu i auth_info słowników
  • https://github.com/crhym3/simpleauth/issues/4
  • https://github.com/crhym3/simpleauth/issues/5
  • Więcej przydatnych informacji w README

Wymagania :

  • Python
  • oauth2
  • lxml
  • httplib2

Inne programy z deweloperem Alex Vagin

SimpleAuth
SimpleAuth

13 Apr 15

Komentarze do simpleauth

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!